Auto insurance products are becoming increasingly digital and software-driven. For example, insurance providers offer dynamic premiums that vary based on a policy holder's monthly mileage and their driving behavior. Those products are incredibly successful, because they allow insurance companies to accurately assess risk, while policy holders pay a fairer price.
But all of these new insurance products need a reliable technology behind it. Without the perfect technology solution, insurance providers work with erroneous information and set their pricing either too low (resulting in losses for their business) or too high (resulting in customers leaving to the competition).
Products like the Smartcar API help auto insurance companies solve all their technology needs with a simple and powerful solution. Our platform allows policy holders to connect their vehicles with just a few clicks from any car insurance app. It then lets the insurance company access important information such as the vehicle's mileage, location, and tire pressure. Smartcar even handles less obvious tasks, such as knowing a vehicle's VIN.
A vehicle's VIN is both crucial for every car insurance policy and at the same time challenging. In fact, it scares away many potential customers before they even sign a contract.
Every car owner who wants to take out insurance needs to provide their vehicle identification number to get a quote, let alone sign a policy. Unfortunately, the VIN can be located in different parts of the car, depending on its make, model, and year. Most vehicle owners don't know where to find their VIN. Even with detailed instructions, some car owners don't bother making the extra effort and prefer to look for a different product instead of finding their VIN.
Many insurance companies use the Smartcar API to solve the challenge of knowing a vehicle's VIN. Instead of facing customers with complicated instructions on how to find and enter a 17-character identification number, insurance providers use the Smartcar VIN API to automatically read and save a vehicle's VIN within seconds.
By eliminating the need for customers to find and enter their VIN, insurance providers are able to reduce friction in their onboarding process, increase the number of signed insurance contracts, and maximize customer satisfaction.
The Smartcar VIN API is compatible with more than a dozen vehicle makes and many more models in the United States. Our product is a pure software platform. It doesn't require you to use OBD-II dongles or other aftermarket hardware.
Here's how insurance businesses have been integrating and using the Smartcar API:
1. The insurance company integrates the Smartcar API into their mobile or web app. This takes only a few hours of engineering work.
2. The insurance app prompts the customer to connect their vehicle using Smartcar. We provide a short and friendly dialog for them to do so:
3. Among other information, the insurance company can now easily read a customer's VIN with a single API request:
By eliminating the need to look for and enter a vehicle's VIN, auto insurance providers make it easier for car owners to get a quote and to sign up for a policy.
This is not the only way in which the Smartcar API helps insurance companies build better products. Learn more about how car insurance businesses use our platform, and feel free to reach out to us for a product demo.
EV charging technology is rapidly expanding and evolving in the United States and beyond. The global EV charging stations market is expected to grow by almost 50% over the next seven years. As 2019 comes to an end, we have decided to take a look at the industry and to summarize the most important trends that will shape the EV charging space next year.
Although DC fast chargers make up only 15% of EV charging stations in the United States so far, market research reports predict them to become more and more common. Many EV charging networks already focus their efforts on DC (or level 3) chargers. Those chargers add about 60 to 80 miles of range in 20 minutes, making them 10 to 20 times faster than the more common AC (or level 2) chargers. As EV owners travel more and take longer trips, they will appreciate a larger offer of public fast charging solutions with more affordable pricing.
The technological progress of both, EV charging hardware and software will change the way EV owners use and benefit from EV charging apps. Thanks to technologies like the Smartcar API, charging networks are now able to determine a vehicle’s exact charge time even before the driver plugs their car into a station. The accurate prediction of a vehicle’s charge time is crucial whenever EV owners want to plan trips, building charging schedules, or make use of green EV charging features and V2G technology (see below).
Green energy will play a big role in both, the residential and the public EV charging space. Vehicle owners are increasingly concerned about carbon emissions, while EV charging networks rapidly advance their charging technologies. Green EV charging programs allow EV owners to set a schedule for when and how far they need to drive their car each day. Using smart charging technology, the EV charging network then automatically charges the vehicle at times when electricity is 100% generated from renewable sources (e.g. solar or wind energy).
Another EV charging trend that helps reduce carbon emissions is vehicle-to-grid (V2G) technology. While green EV charging focuses on picking the right energy sources, V2G technology aims to smoothen times of peak electricity demand. The average car is parked 95% of the time. V2G technology makes use of this fact. Whenever they aren’t currently driving or charging their vehicle, EV owners can leave their car plugged in at home or at work. At times of peak demand, EV owners can let the charging network draw power from the car and feed it electricity back into the grid. This way, V2G provides a huge relief for local and state electricity providers and allows EV owners to earn money for the electricity they sell.
With a tighter net of public EV charging stations and a larger variety of affordable home chargers, charging networks need to spend more effort retaining customers and making them loyal to their brand. Rewards programs allow EV charging networks to do just that. Apart from rewarding customers for charging at stations within a certain network, rewards programs even go hand in hand with green EV charging and V2G technology. For example, EV owners receive points or credits for charging at times when electricity demand is low and the share of renewable energy sources is highest. Finally, EV charging networks can reward customers for ecologically friendly driving behavior. Based on how many miles they drive and how much they charge their EV battery, EV owners receive rewards for keeping their per-mile electricity consumption low.
Which trends do you anticipate to shape the EV charging industry next year? Feel free to reach out and let us know!
All vehicle owners have to plan ahead before making a long trip, but EV owners especially so. When their destination is far away or their car has a short remaining range, electric vehicle owners need to know whether they can make the whole trip without charging, and if not, which charging stations they can stop at along the way. This is where EV trip planning apps come in handy.
More and more EV charging networks offer an EV trip planning feature as part of their web and mobile applications. These companies know how useful the feature is for their customers. The first step to building a successful EV trip planning interface is the ability to search for nearby EV charging stations. But trip planning is about more than just finding nearby chargers. Using Smartcar’s electric vehicle API, your EV charging app can build a full-fledged trip planning feature that facilitates many aspects of owning and driving electric vehicles.
In the first step of every EV trip planning interface, car owners type their destination into a search bar. An integrated map service then suggests the correct address and different possible routes.
To make your EV trip planning feature even more effective, let EV owners start the calculated route at their vehicle’s location instead of their smartphone’s location. In some cases, your customer and their car aren’t in the same place, but they want to plan ahead before fetching their vehicle and starting to drive. Use Smartcar’s location API to retrieve the exact location of your customer’s vehicle. This way, the routes that your app suggests are more accurate and your EV trip planning feature is more precise than ever.
Once your customer has selected their desired destination and route, you can now use our EV battery API to read the state of charge and the remaining range from their vehicle. Smartcar lets you retrieve this information anytime directly from the car, no matter whether or not it is currently plugged in and/or charging at one of your EV charging stations.
Based on the selected destination and route as well as the obtained SOC and range, your application can now propose the ideal EV trip. Estimate how often and for how long the car needs to charge and match this information with EV charging stations along the driver’s route.
Once your customer has started their trip, your app can help them manage their charging stops. Using Smartcar’s EV charging status API, know whether a vehicle is plugged in and whether it is charging. Notify your customer when their vehicle starts charging, even if they are using a charging station outside of your network. Monitor the vehicle’s SOC and range, and notify the driver once their car has attained the desired charging level.
This is how easily EV charging networks offer EV trip planning features using Smartcar’s electric vehicle API. To learn more about our technology, check out the Smartcar website and contact us for a product demo. We’re happy to chat!
Like all web and mobile technology, mobility and car applications are becoming more and more powerful. Fleet management software makes it easy for fleet management companies to manage and maintain their vehicles. Auto insurance apps monitor their policyholders' mileage and driving behavior. Car sharing applications let customers browse and book vehicles directly from their phones.
In an effort to make their products work successfully, all of these apps and services make use of similar skills. They all need to instantly and reliably retrieve specific information from their customers’ vehicles.
The ability to remotely locate cars, for example, plays an important role for all car and mobility applications. Fleet management software businesses want to offer real-time GPS tracking to fleet owners. Car insurance companies need to track not only a policyholder’s mileage but also their vehicle’s location and the trips they make. Car sharing apps want to allow renters to quickly find and unlock vehicles directly from their phones.
Without a fast, safe, and reliable technology to locate vehicles, your fleet management, auto insurance, or car sharing app will lag behind the competition and eventually fail. This is why we’ve put together a guide on why APIs are the best tool to remotely locate vehicles, and how your application can use Smartcar’s location API to do so.
There are several different ways for web and mobile applications to retrieve a vehicle’s location. Some businesses use OBD-II dongles that customers install in their vehicles. Other businesses rely on their customers’ smartphones to obtain information about the vehicle and driving behavior.
The disadvantage of both, OBD-II dongles and smartphone solutions is that they can be difficult to install, inaccurate, and expensive. Fleet management software companies like Pitstop and car sharing platforms like Turo use the Smartcar API instead because APIs offer the best way to remotely locate vehicles. Here's why:
As APIs are the best solution to remotely locate vehicles, let us walk you through the steps of remotely locating cars using the Smartcar API.
Smartcar allows web and mobile applications to read information and perform actions on vehicles using straightforward API requests. In order to remotely locate a vehicle, your application needs to:
These three simple steps are all your application needs to retrieve a vehicle’s location in real-time. To learn more about getting started with the Smartcar API, head to our documentation or reach out to our team for a product demo.
EV charging schedules are essential for almost every electric car owner. Especially those who charge their vehicle at home and whose electricity rates vary by time of day need to schedule their car to start and stop charging at certain times. Here’s how your EV charging application can improve scheduling features by using electric vehicle APIs.
EV charging applications most commonly let EV owners set a certain time at which they want to start and stop charging every day. While this basic time-based scheduling feature is better than offering no charging schedules at all, there are plenty of use cases and problems that remain unsolved.
What, for example, happens when a customer doesn’t want to fully charge their vehicle? What if they prefer to stop charging as soon as the car battery has reached a certain state of charge or a certain range?
EV APIs like Smartcar allow your application to do exactly this. Our technology lets you retrieve the SOC and the remaining range from an EV battery with a single API request. Here's how it works:
Alternatively, your EV charging application can let vehicle owners select the latest time by which their vehicle must reach a full battery.
Based on the car owner's selection, your application monitors electricity rates and/or renewable energy supply (e.g. whether the electricity cost is low or whether solar energy supply is high enough to fully charge the vehicle). After your app checks the vehicle’s current SOC and how long it will take to charge fully, it can automatically start and stop charging at the most convenient times.
Finally, electric vehicle APIs don't only allow your application to easily read a vehicle’s SOC and range. They also make it easy to check a car's charging status.
Using Smartcar's EV battery API, gently remind your customer to charge their vehicle anytime the SOC or range falls below a certain number. You can even use our charging status API to automatically resolve all reminders once the vehicle is plugged in and charging:
That’s how electric vehicle APIs like Smartcar help EV charging applications integrate effective residential charging schedules into their products.
Does your EV charging network power public EV chargers? Stay tuned for upcoming blog posts about EV trip planning, rewards programs, and demand response programs.
Want to learn more about Smartcar? Contact us for a product demo, we’d be happy to give you a tour!
Layoffs are one of the hardest things we experience in our careers. After getting let go, most people feel embarrassed and worried that this incident will reflect poorly on them during their future job search.
There’s also this overwhelming feeling of the unknown. Will I find another job? What if I can’t find a good opportunity and I just have to take the first available job to be able to keep paying rent?
I promise you that if you put in the effort and thoughtfulness, you will quickly recover from the shock and successfully embark on a new adventure.
Prior to joining Smartcar, I was working at a different company, and I was impacted by a fairly large layoff. On the day I was laid off, I was surprisingly unconcerned by the fact that I had to leave my old job. However, I was completely overwhelmed by the idea of having to start looking for new opportunities.
As soon as I got home on that Tuesday morning, I didn’t veg out like people usually do after they lose their jobs. Instead, I ended up dusting, mopping, and vacuuming my entire apartment inside and out. Once I was done obsessing over the cleanliness of my home, I found a way to overcome my feeling of mental overload and to kick off my search for new opportunities.
First, I grabbed a notebook and wrote down exactly what I was looking for in my future job. Here’s what I came up with:
After writing this list, I started searching for companies and open positions.
From my list, it was clear that I wanted to join a startup. Therefore, I went straight to AngelList. In case you aren’t familiar with this website, it’s a great tool to look for small to medium-sized companies and filter them by location, funding amount, number of employees, and types of openings.
Tip: To learn more about different job search tools, check out this blog post.
On AngelList, I filtered my search by location (Mountain View), Type (Startup) and Stage (Series A). I chose Series A as the funding stage because companies in the Seed funding stage don’t usually need a recruiting team yet, while companies in the Series B funding stage already have more than 50 employees.
AngelList generated a list of 16 companies that fit my criteria. I decided to start with a narrow search and then broaden it up if I needed, rather than having an overwhelming number of companies to sort through.
At the time when I was doing this search, Smartcar was the only company on the list that had a recruiting role open. So, I applied on the website and connected with the founders on LinkedIn to show my interest!
Tip: Check out this blog post to learn more about how to stand out when applying to companies, and read this other post on how to nail the interview.
A few days after I applied, the team reached back out to me and scheduled a time for me to connect with the CTO and Co-Founder Sanketh Katta.
When I chatted with Sanketh for the very first time, my mind started going through the list I had written at the beginning of my job search. I was able to check off all six bullet points, one after the other. It felt incredible to me that I had found an ideal opportunity without even knowing about the company just a few days before.
After meeting the whole team during my onsite interview, I knew that Smartcar was my dream company. Everyone was incredibly nice and welcoming. I remember calling my family and telling them that, if Smartcar offered me the job and needed me to start on a Saturday, I would accept right away because that's how excited I was about the company!
A couple of days later, I received this email:
Of course, I accepted the job offer, and I've been working at Smartcar every since.
Two years later, I am so happy that I used my layoff as an opportunity to be thoughtful about what I wanted in my career. Sometimes, choosing your next step takes time and effort, but I promise you, it will be worth it. I found my perfect company (and second home) and I'm certain that you can, too!
I hope that this blog post will help you kick off your search in the right direction. As always, please don’t hesitate to reach out to me with any insights or questions!
We're proud to make version 7 of our Python SDK available to all Smartcar developers today. 🐍
Smartcar is the car API for mobility applications. Our platform allows mobile and web apps to communicate with vehicles across makes and models without any hardware.
The Python SDK allows you to quickly and easily integrate the Smartcar API into your Python backend. Here's what the version of this SDK has to offer:
Get started with our new and revamped Python SDK today, and let us know your feedback or questions!
Looking for new job opportunities can be as exhausting as working a full-time job. It is stressful, takes time, and can feel incredibly intimidating. But don’t worry! This blog post will kick off your job hunt in the right direction. The following three steps will help you stand out from the crowd and maximize your chances of landing your dream job.
Looking for jobs is all about knowing what you’re looking for. If you just apply to every single opening out there without truly knowing what you want, you will set yourself up for failure.
Take some time to think about what makes you happy and what you enjoy doing. Write those things on a list. Once you’re done, your list might be 50 bullet points long. Read through everything and find common patterns between those points, until you’ve condensed everything down to about 5 topics.
Here’s the list I made for my job hunt before joining Smartcar:
I did not include salary expectations in my list, because I trusted that the companies I applied to would offer fair compensation based on the current market rate. However, it’s always a good idea to calculate your expected compensation range before you start your first job interviews.
Calculate your expected minimum salary, which would permit you to keep the same (or a similar) lifestyle. Then, define your stretch goal, which is the “dream” compensation you would ideally be looking for.
With this compensation range in mind, you will go into job interviews a lot more prepared and confident. If a certain job pays a lot less than your expected minimum, you will be able to rule it out early on in the process.
Now you know exactly which kinds of positions and companies you are looking for, and it's time to start your search. Most people use Glassdoor and LinkedIn for their job hunt. Both are great tools, but their filtering functionalities are quite limited.
If you want to get more granular and find jobs by more than just the location, company, and job title, there are lots of other websites you can use. For example, Angellist, Crunchbase, and Apollo.io let you find jobs by a specific industry, company size, amount of funding, and revenue. To learn more about those tools and how to use them, check out my blog post about 3 powerful tools for your job search.
Before you start applying for the first few roles, create a spreadsheet to keep track of what you're doing. Document exactly which company you've applied to, which positions, who your point of contact is, and so on. You can also take detailed notes about the conversations you had with the team and what the next steps in the interview process are.
Being organized is the key to a successful job search. You will likely apply to 20+ companies. You will be surprised by how little detail the human brain can remember when there are a lot of things happening at the same time! You also don’t want to be that person who applies to the same role three times in a row, because they've forgotten that they have already applied.
This is what your spreadsheet might look like:
Now you know what you want, how to find interesting roles, and how to organize your job search. It’s time to start applying! But wait - don’t just apply to one position and move on to the next one. You aren’t going to stand out if you just send your resume out into the black hole called “the internet." Be proactive! Here’s how.
After applying to a specific company, find out who the recruiter or the hiring manager is. You can simply use LinkedIn to do this. Let’s say you are applying to Smartcar. You can just type “Smartcar recruiter” into the LinkedIn search bar, and my profile should appear:
Send the recruiter or hiring manager an invitation to connect on LinkedIn. Add a note that says something along the lines of:
Hi Mathilde, I just applied for the Back-End Engineer role! I would love to have the opportunity to chat with you about the opening. What time works best for you on Tuesday this week?
If you don’t hear back within a couple of days, you can follow up by email and ask whether they had a chance to see your message. Your email might look similar to this:
Hi Mathilde,
I just wanted to follow up on my LinkedIn connect message. I’m sure you get a lot of messages on there every day. To recap my message, I applied for the Back-End Engineer role and I would love to have the opportunity to chat with you about the opening.
Are you free on Thursday at 3 pm to connect?
I’ve attached my resume below for you to review as well.
Thank you so much!
[Your name]
By now, you are probably thinking: “Mathilde! How am I supposed to find someone’s email when I know only their name and their LinkedIn profile?” Don’t worry. There is a tool for that.
Dorbell is a great website because it lets you enter a person’s name and company, and it will return all of their possible work emails and whether they are valid. You can try it with me to see how it works:
After clicking the “Ring the bell!” button and waiting for the page to load, you should see a lot of invalid emails, as well as two valid ones: mathilde@smartcar.com and mathilde.patmon@smartcar.com.
If the Dorbell site doesn’t work for a specific person, there is something else you can do. Companies typically follow one of three formats for their emails:
Try emailing those addresses one after the other, until one of them sends successfully.
Last but not least, you should think about the timing of your LinkedIn message and email to make sure the recruiter or hiring manager will open it and answer you.
If you email someone on a Friday night, the likelihood of getting a fast response is very low. They are probably having dinner and trying to enjoy the start of their weekend. Emailing someone on a Monday morning isn't ideal either because they just returned to work after the weekend and are probably playing catch up.
The best times to reach out to a recruiter or hiring manager are Tuesdays, Wednesdays, and Thursdays at 7:30 am. This way, your message or email will be right at the top of the person’s inbox when they get into the office.
Now that you’ve used all these tips and landed the job interview you wanted, it’s time to ace it! Feel free to check out this blog post on how to avoid the 3 most common job interview mistakes.
If you have any questions or just want to let me know your thoughts, feel free to email me or reach out to me on LinkedIn!
Today, batch requests are leaving beta and are now available as a Smartcar Pro feature. 💐
Smartcar batch requests allow your application to bundle multiple API requests into a single request. For example, instead of sending separate requests to Smartcar's odometer and location API endpoints, you can now combine these and all other GET requests into a single request. Smartcar's response will contain data for each of the desired endpoints:
Many of our customers have already starting using batch requests while it was available in beta. For example, Turo uses batch requests to retrieve a vehicle's location, odometer reading, and fuel tank level with a single API request.
We recommend using batch requests whenever your application wishes to retrieve multiple data points from a vehicle at the same time. For example, if your auto insurance application checks the location and odometer of a vehicle once per day, you can now combine those two consecutive requests into one single request, resulting in less overhead for your application and a faster response time from the Smartcar API.
Starting today, batch requests are available to all our Pro plan customers. If you are currently a free plan user and would like to request access, please don't hesitate to reach out to us.
We're excited to announce version 4 of the Smartcar iOS SDK. 🍏
Smartcar allows mobile and web apps to locate, unlock, and retrieve information from vehicles using simple API requests. Our new and revamped iOS SDK makes it easier than ever for iOS developers to launch the Smartcar Connect flow and to authorize vehicle owners. Here's what's new:
Create a free Smartcar account and get started with our iOS SDK today. As always, please feel free to email me your questions and feedback.
More than 65 vehicles debuted at AutoMobility LA this year. Roughly 35% of those were hybrid and electric vehicles. While many automakers introduced their new cars directly at the show, others held press conferences at their own offices. Here’s a breakdown of the most exciting announcements we heard about last week.
Ford launched its all-electric vehicle Mustang Mach-E at AutoMobility LA last week. The Mach-E is the first electric vehicle and the first SUV under the Mustang brand. The extended range version has a 300-mile range. The first of four models will be available for sale in 2020.
Toyota rolled out the 2021 RAV4 Prime, a plug-in hybrid version of its popular RAV4 SUV. The vehicle has a 39-mile all-electric range and will get 90 miles per gallon of gasoline. It will go on sale in mid-2020.
Lincoln announced the 2021 Corsair GT plug-in hybrid. It’s the first electric version of Lincoln’s Corsair compact luxury SUV. The GT’s all-electric range is expected to be over 25 miles. The car is expected to be available before the end of this year.
Audi introduced the all-electric 2020 e-tron Sportback, a coupé version of the 2019 e-tron with a 220-mile range. It will be available in the U.S. in fall 2020.
Volkswagen debuted its ID. Space Vizzion Concept, a fully electric concept car. It’s a low-slung station wagon with a 300-mile range. Volkswagen didn’t say when the vehicle will go on sale.
Karma Automotive introduced the electric concept car SC2 and the performance luxury gasoline-electric vehicle Revero GTS. The SC2 has 1,000 horsepower and a 350-mile range. The Revero GTS has a 360-mile range with a fully charged battery and a full gas tank.
Tesla introduced its new Cybertruck in Hawthorne, California last week. Although the announcement wasn’t made at the LA Auto Show, it might have been the most discussed EV launch of the week. The all-electric pick-up truck has a distinct retro-futuristic look. During the press conference, Tesla’s design chief smashed two of the supposedly shatterproof windows with a metal ball. The incident was widely discussed in national news outlets and on social media. The vehicle will be available with a 250, 300, and 500-mile range, and production will start in late 2021.
Overall, AutoMobility LA 2019 shows that the automotive industry is facing times of rapid change. Electric vehicles are driving the future of mobility, and more and more automakers are focusing on this emerging trend. We can't wait for next year's LA Auto Show and its 2020 EV debuts!
Fleet management software isn’t easy to build, and it certainly isn’t easy to sell. For big and small fleets alike, integrating with a new product means taking risks. At the prospect of outfitting their whole fleet with a new technology and educating fleet managers and drivers on how to use it, many fleet owners become hesitant and think twice before they convert into paying customers.
This is why cost is incredibly important for fleet management software products. With lower upfront costs and smaller monthly SaaS fees, fleet owners are more willing to take the risk of trying out a new fleet management software product, and they are more likely to keep using the product for a long time.
When looking at the cost that fleet management software companies have to account for, one factor is particularly striking: aftermarket hardware. Unlike other SaaS companies, many fleet management software businesses need to bear the cost of acquiring, shipping, installing, and maintaining telematics devices.
At Smartcar, we have built an API solution that eliminates the need for telematics devices. It instead allows mobile and web apps to retrieve location, odometer, and other information vehicles using straightforward API requests. Our technology is not only easy to use and to integrate with, but it also helps fleet management software companies reduce cost while positively impacting their pricing and profits.
Here is how our customers have benefitted from using the Smartcar API:
APIs can be used without any upfront purchasing costs. Fleet management software businesses don’t have to ask their customers to pay large amounts of money upfront or to sign finance plans. Customers aren’t locked into long-term contracts to amortize aftermarket hardware costs. Instead, they benefit from flexible month-to-month contracts that are easier to negotiate and sign.
For fleet management software businesses, even small fees add up to large expenses. When a business is serving large fleets all over the country, shipping aftermarket hardware to customers is a large financial and logistical pain point. By taking advantage of embedded telematics already present in vehicles, companies no longer have to worry about shipping hardware to their customers.
Similarly to shipping hardware, installing the devices in every new fleet vehicle is a large pain point for many fleet management software companies. Businesses have to contract out work to local installer networks in every region, or they have to educate fleet managers on how to install the devices themselves. When using APIs, it takes only a few seconds to onboard new vehicles from any mobile or web app. This saves fleet management software companies time and money while making their customers more satisfied.
After a fleet management software company has signed a contract and onboarded their customer’s fleet to an API solution, there are no maintenance costs to be taken care of. Without telematics devices, there is no need to replace batteries or to replace damaged or failing hardware. This allows fleet management software companies to keep their monthly SaaS fee low and to retain customers for longer.
By eliminating the use of telematics devices, fleet management software companies make large savings while offering more attractive pricing for their customers. Fleet management software companies that use Smartcar’s API have been able to acquire customers more easily and increase user satisfaction, thus growing their business and profits overall.
To learn more about how your fleet management software company can use Smartcar’s technology, check out our website and schedule a demo. We’re happy to chat!
Today, we're proud to introduce version 7 of the Smartcar Node.js SDK. 🛑
Smartcar is the car API for mobility applications. We allow app developers to locate, unlock, and read the odometer from vehicles across brands without any hardware.
The Node.js SDK is one of our four API SDKs. It lets you quickly and easily integrate Smartcar into any Node.js web app. Here's what's new in this updated version:
Unlocking a vehicle using our Node.js SDK is as simple as this:
Get started with the SDK today, and as always, don't hesitate to reach out to me with any questions or feedback.
Hi, I’m Teddy. I’ve been interning with Smartcar’s engineering team this fall, and I’ve decided to share my experience by writing a blog post about my time here. If you’re looking to intern at Smartcar or at any other tech company out there, just keep on reading!
Smartcar’s engineering team is divided into two smaller teams: the Platform team, which builds out the API infrastructure and API endpoints, and the Developer Experience team, who designs and builds the customer-facing parts of our product. For the course of my three-month internship, I joined Smartcar's Platform team.
On my first day here, I got to meet everyone and to see the office. Then, I sat down with Smartcar’s CTO Sanketh, who gave me an extensive, white-boarded Engineering Overview of Smartcar’s systems. There were a lot of moving parts, but Sanketh and my manager Gurpreet assured me that I didn’t need to understand everything right from day one.
The Engineering Overview was a great way to kick off my internship and to get acquainted with Smartcar’s tech. During my first week, I also got a Smartcar Overview from our CEO Sahas, a Marketing Overview from Charlotte, and a Recruiting overview from Mathilde. All of those helped me understand what other Smartcar departments focus on and how the whole organization works together.
At Smartcar, every day is about making the lives of developers easier. Of course, by “developers” we mean our customers, who are building applications and services on top of the Smartcar API.
During my first week, my assignment was to become one of these developers. I had to build an app that uses the Smartcar API. It was fun! I had the freedom to come up with my own idea and to implement it in the way that I thought was best. Frankly, it felt like I was hacking on a side-project. But along the way, this simple assignment helped me better understand our product and our customers.
The app I built was a visualization dashboard for fleet managers. It allowed fleet managers to see the location and mileage of all their vehicles. During the process, I realized that one big challenge for our customers was token management. Although the Smartcar API uses the standard OAuth2 framework, storing and managing refresh tokens was difficult for me when I built my fleet management dashboard.
A few weeks later, I remembered this pain point and was able to build a solution for it. I designed and implemented an alternative token management system that enables some of our API endpoints to function with a single permanent token.
But the assignment wasn’t the only thing I got to do during the first week of my internship. I also had the chance to get to know the team better, to learn about Smartcar’s work culture, and to get a lot of training and mentorship.
I remember being very impressed by the generosity and thoughtfulness of everyone on the team. When I got stuck trying to figure out how to store tokens for my fleet management app, my colleague Adolfo sat with me for a half-hour and helped me architect a solution. I could tell that he really cared. Gurpreet encouraged me to put myself in the shoes of our developers by only working with our public documentation, instead of referencing our internal docs.
As I was onboarding and ramping up, Smartcar’s team was always supportive and helped me out, even with obvious questions. When I told Gurpreet that I didn’t know the difference between unit tests and integration tests, he could have told me: “Google it.” But he didn’t. Instead, he pulled me into a conference room and gave me a university-quality lesson on the subject. We sat and typed out code examples until the concept clicked. After that, he sent me a curated list of articles on the topic to cement my understanding.
As my learning ramped up, I continued to push code into production. A month into my internship, I had already worked with every part of the stack within our API platform. My tasks spanned everything from designing and implementing a new database architecture using Postgres to learning OAuth2 and improving our security features. I even shipped two new API endpoints from start to finish: the tire pressure API and the engine oil life API!
Honestly, there’s no better feeling than pressing Github’s bright green “Merge pull request” button. Of course, Smartcar’s team is great, the office is stylish, and the catered lunches are a treat. But nothing compares to shipping the feature that you took from design to production - the one that you’ve been puzzling over and debugging for weeks.
Every time I press that green button, my code is going out to all of our customers, affecting thousands of car owners. Being trusted with this level of purpose and responsibility during a three-month internship is pretty amazing.
But apart from the various products I built and helped improve, Smartcar interns don’t just worry about implementation work. When we prepared a new, soon-to-be-announced product release, I even had the opportunity to contribute to system design and to work on specifications for the new product.
Finally, my internship has been a huge win not only in terms of the new products I shipped. Smartcar’s management and mentorship has also helped me improve my skills and grow as a software engineer.
Throughout my internship, Gurpreet gave me the autonomy to choose what I wanted to work on. If I wanted to build out database models for a new system, he would let me handle that project. If I wanted to build out the CRUD endpoints for a new customer-facing dashboard, I could do that too! Regardless of what I chose, Gurpreet encouraged me to take ownership of the project and to unblock myself on my own. That said, he was always there to answer questions if I really got stuck.
In terms of mentorship, Smartcar’s bi-weekly 1:1s between managers and individual contributors were incredibly helpful. 1:1s are a great way to exchange feedback with your mentor. For example, Gurpreet once identified that my code tests weren’t formatted very well, so he gave me some advice on how to fix that. In the following 1:1, he noted that I had improved my tests. Overall, 1:1s are a great way to give and get feedback as well as to benchmark your growth.
Tip: Our CEO Sahas, has two open 1:1 spots on his calendar every week. I booked a meeting with him, and it was a great way to get to know Smartcar's leadership!
My internship is nearing its end and so is this blog post. In just three months here, I’ve learned so much that my brain feels like it’s been taking a 12-week-long chug from a fire hose that sprays knowledge. I mean this in a good way. The engineers at Smartcar really care about each other and encourage everyone - from senior-level employees to interns - to learn, grow, and be successful in their roles.
To anyone who is interested in interning at Smartcar, I’d like to give the following advice:
Today, the Smartcar tire pressure API is leaving beta and is now available to all developers. 🧭
Using the Smartcar tire pressure API, mobility apps can check the tire pressure of their customers' vehicles. Our API works without aftermarket hardware and across car brands. With a single API request, your app can obtain the air pressure of each of a vehicle's tires in kilopascals or pounds per square inch.
Our customers in the fleet management and auto insurance industries have already used and integrated the tire pressure API while it was available for beta testing. Here's how our customers have been using the new API endpoint.
Fleet management software businesses allow fleet managers to run convenient tire pressure and engine oil checks via their dashboard. If a vehicle is unsafe to drive or due for its next service appointment, the fleet manager receives a notification.
Car insurance providers monitor the tire pressure of their policyholders' vehicles to detect sudden changes. A sudden change in a vehicle's tire pressure indicates that the policyholder might have driven recklessly or gotten into an accident.
If you are a developer, get started with the Smartcar tire pressure API today.
To learn more about using this product, to request a demo, or to let us know any questions or feedback, please don't hesitate to reach out to us.
When it comes to searching for jobs, most people immediately think of LinkedIn and Glassdoor. While both of those are great tools, they make it hard to personalize your search and to filter by anything apart from a company’s location and a job title.
There are a lot of other free job search tools out there. In fact, there are so many of them that it is difficult to know in advance which tool is most useful and how to get started with it. In this blog post, I’ll share my three favorite job search tools and how I’ve used them to find my dream job at Smartcar.
If you’re looking for a job at a startup, AngelList is a great start. The tool is free. Most startups use AngelList to post their job openings and to find talent.
On the AngelList homepage, hover over the “More” tab and click on “Companies” from the drop-down menu.
You will now see a list of companies and several different filters to choose from. Here’s an example of how I found Smartcar when I was hunting for jobs.
Once you click on a company name, you will see their profile including who the founders are, what the work culture is like, what benefits they offer, and which job openings they currently have.
All in all, AngelList is a great tool for job hunting. Nearly all startups have profiles on the platform, which makes it easy to browse and discover new companies. The search filters allow you to filter by your exact preferences. Finally, the fact that job openings show up directly on AngelList is a huge plus. The only negative point is that the search filters are pretty limited compared to tools like Crunchbase.
If you are looking for anything from small to large-sized companies, Crunchbase is a great tool to use. If you use the free version, you get limited search abilities. However, Crunchbase offers a 1-week free trial of the Pro version, which includes advanced search and filters.
On the Crunchbase homepage, click on the top search bar. Several filters will appear. Even if you are using the free version, the Crunchbase filters are more detailed than the ones that AngelList offers. For example, you can filter by location, investment stage, number of employees, and industry (i.e. category).
Crunchbase is a great way to create a list of companies in a certain industry that is of interest to you. Unlike AngelList, Crunchbase includes companies of all sizes and investment stages, and it offers detailed filtering. The only negative point is that you can’t see a company’s job openings directly on Crunchbase. Instead, you have to click on the company website from their Crunchbase profile and check out their careers page.
Apollo.io is a tool that allows sales and marketing professionals to find accounts they want to sell to. However, it’s a great tool for finding your next job as well!
To use Apollo.io, you need to create a free account. Once logged in, click on “Companies” in the left-hand-side menu bar. Now you can filter by things like industry, keywords, number of employees, funding stage, and location.
Apollo.io offers more filters than AngelList but less than Crunchbase. The negative point is that you can’t see a company’s job openings. However, just like Crunchbase, Apollo.io shows a link to every company’s website.
The big advantage of Apollo.io is that it shows you a list of everyone that works at a specific company. You can even filter those employees by their roles and find their emails. This way, Apollo.io allows you to find the recruiter or hiring manager for a job opening and to email them or message them on LinkedIn.
Hopefully, these three tools will help you jumpstart your job search. If you know any great tools that we haven’t mentioned here, I would love to hear about them. Feel free to reach out to me, and happy job hunting!
We're proud to introduce a brand-new API endpoint in beta today. Meet the Smartcar engine oil life API. 💧
The Smartcar engine oil life API allows web and mobile apps to retrieve the remaining life span of a vehicle's engine oil with a single API request. The endpoint returns the engine oil's remaining life span as a percentage.
Fleet management software businesses as well as vehicle maintenance and repair applications use the Smartcar engine oil life API in their products. They retrieve accurate oil life spans from the vehicles they service in order to monitor vehicle health and provide preventive maintenance scheduling to their customers.
The Smartcar API is compatible across vehicle brands. It doesn't require the use of aftermarket hardware devices. Thanks to those features, our customers have been able to onboard vehicles quickly, reduce cost, and achieve accurate and reliable results. To learn how our product caters to your use case, schedule a demo with our Sales team today.
To request beta access to the API endpoint, please reach out to us via email.
Preventive maintenance (PM) schedules are a popular fleet management software feature. PM schedules help fleets maximize their vehicle uptime and reduce cost, thus making them happier customers. Smartcar allows fleet management software companies to easily offer preventive maintenance features as part of their product, all without using aftermarket hardware devices or manual inspections. Here’s how.
Beside time, which plays an important role for PM schedules, a vehicle’s mileage is another important factor. How many miles a vehicle has driven since its last check-up determines when the car is due for the next service appointment. Smartcar’s API allows fleet management software businesses to retrieve an accurate odometer reading from vehicles using a single API request.
Periodically check a vehicle’s tire pressure and notify customers when a vehicle’s tire pressure rises above or falls below a certain threshold.
Monitor a vehicle’s engine oil life to let fleet owners determine when the car is due for an oil change.
Monitor a vehicles’ fuel tank level or EV battery state of charge. Compare those data points to the amount of miles driven. Warn customers when the vehicle is being driven inefficiently and might be damaged.
If the customer does not perform in-house vehicle repairs, recommend the closest service and repair shops based on a vehicle’s location.
In addition to the mentioned features that allow fleet management software businesses to easily offer preventive maintenance schedules as part of their product, the Smartcar API brings a number of overall advantages that our customers benefit from.
Smartcar is a telematics solution that works entirely without aftermarket hardware. To learn more about telematics APIs and their important for fleet management software, check out this blog post.
Our API is standardized across vehicle makes and models. It is easy to integrate into any application architecture, thanks to our friendly documentation and SDKs.
By eliminating the need for aftermarket hardware, Smartcar saves fleet management companies the cost and hassle of selling or leasing hardware to their customers and having to maintain it.
Last but not least, Smartcar allows fleet management software to retrieve accurate and reliable information directly from fleet vehicles. No third party devices, and no more inaccuracies due to inferred data (e.g. an inferred odometer reading based on location and trip information).
Preventive maintenance schedules are a useful fleet management software feature, and Smartcar’s API is a powerful and easy-to-use telematics solution that allows fleet management software companies to offer those features.
To learn more about how your fleet management software company can use Smartcar’s technology, check out our website and schedule a demo. We’re happy to chat!
Today, we're excited to introduce Smartcar Connect 2.1. This new version of Smartcar Connect features faster user onboarding and an easier developer integration.
Smartcar Connect lets your users link their vehicles to your application. Our newly updated version includes new features and optimizations that offer a more convenient experience for your app users and your developers:
The "Select your brand" step now features a brand-new search bar. This allows your users to quickly find their car brand instead of having to look through a list. To perfect the experience, our autosuggest function displays the names of matching car brands while the user is typing. Thanks to those features, your app users will:
Smartcar Connect 2.1 also includes a number of updates and optimizations that make it easier to integrate into your application. Starting today, Smartcar Connect is:
If you have already integrated Smartcar Connect into your application, you won't need to take any action to receive the updated version. To start integrating for the first time, head to our docs and choose one of our Smartcar Connect SDKs to get started.
GPS tracking is an important feature for all fleet management software products, but finding the right solution to offer the feature can be difficult. The Smartcar API allows fleet management software companies to integrate vehicle location tracking into their product easily and without hardware.
There are a number of benefits to using a car API instead of aftermarket hardware devices for GPS tracking. Let us outline which features the Smartcar API has to offer and how fleet management software companies have benefited from this solution.
Smartcar allows fleet management applications to communicate directly with the embedded telematics that is built into most new vehicles. It offers a range of API endpoints that fleet management software companies can integrate into their products.
Our location API endpoint allows mobile and web apps to locate vehicles by latitude and longitude.
In addition to location tracking, Smartcar offers a number of API endpoints that are useful in addition to GPS tracking features. If your fleet management software product wants to be able to read the odometer, fuel tank level, and EV battery level from vehicles or even lock and unlock vehicle doors, our API is the right solution for you.
Compared to alternatives like GPS tracking devices and OBD-II dongles, using APIs for GPS tracking brings a number of benefits.
Integrating Smartcar’s API into a fleet management software product takes just a few hours of engineering work. Our detailed documentation and SDKs in seven languages make the API easy to integrate into a mobile or web app with any application architecture.
Our standardized API works on cars across 15 vehicle brands in the United States.
API technology helps fleet management software companies eliminate upfront costs and lower maintenance costs.
Onboarding a new customer’s fleet takes just a few minutes from any mobile or web app. Fleet management companies don’t need to hire local installers to install devices in every vehicle or teach fleet owners how to perform the installation themselves.
The Smartcar API is the first and only solution that allows companies to retrieve information directly from a vehicle. Our API responses are the most accurate on the market, because they don’t depend on inferred data and third party devices.
Without hardware aftermarket, there is no need to worry about empty batteries or malfitted, fallen, or lost devices. In that regard, our technology is more reliable from a software standpoint, but also easier to handle and cheaper to maintain.
Similarly to its reliability, API technology is resistant to fraud and tampering. Fleet managers and drivers aren't able to deliberately remove devices to distort or hide information. This makes the fleet management software product more accurate and reliable overall.
Finally, the Smartcar API offers fleet management software companies the chance to be 100% transparent about their product. When onboarding a new fleet, fleet owners see exactly which permissions the fleet management software product is requesting access to (e.g. read location, read odometer, and read fuel tank level). This builds empowerment and trust between fleet management software companies and their customers.
This is how fleet management software companies benefit from using APIs as a GPS tracking solution.
To learn more about how your fleet management software company can use Smartcar’s technology, check out our website and schedule a demo. We’re happy to chat!
One of the toughest parts about interviewing for jobs is when a company tells you that they won’t move forward with you, but they don’t tell you why. All you want is to improve your skills and do better at the next interview, but how can you do that if nobody tells you what you’ve done wrong?
With over 100 candidates applying and interviewing at Smartcar in any given week, we try our best to be as transparent as possible about our interview process. Every candidate who gets to the challenge stage or further, and who does not get accepted for the job, receives a personal phone call explaining why the team made their decision.
Out of time constraints, applicants who we don’t move forward with before the challenge stage receive less detailed feedback via email. However, we encourage every candidate to email us back with any questions.
If you are preparing to apply for a job at Smartcar or any other company, we have put together the 3 most common mistakes that candidates have made in the early stages of our interview process. Here’s what you should pay attention to, and how you can avoid making the same mistakes that many other applicants have made before you.
The first step of Smartcar’s interview process starts with filling out an online application. We don’t ask for a cover letter, but we do ask applicants to answer a few short questions. Our recruiting team often receives applications with blank answers to all of those questions. Missing answers show us that a candidate is mass applying to a lot of companies and that they aren’t thoughtful about where they would like to work.
Our goal is not only to see whether candidates are serious about applying to our company. We also want to get to know applicants a little better before we invite them to the next step of the interview process. Without a complete application, we are unable to do either of those things. This is why we always prioritize candidates who have completed the application form.
If you are applying to a company and you want to increase your chances of landing an interview, show them that you are serious about the job. Fill out the online application or provide any other information the company is asking for. This small extra effort can go a long way.
In all job interviews and especially on an initial phone call, it can be hard to balance being humble with emphasizing your skills and strengths. More often than not, we talk to candidates that are too humble and don’t explain their experience well enough.
When candidates describe the projects they’ve worked on in the past, they often use the pronoun “we.” For example, they might say: “We worked on building an end-to-end web app that allows people to play Scrabble with other users.” While the word “we” indicates that the candidate worked as part of a team, it is difficult for the interviewer to know exactly which part of the project the candidate was responsible for. Even when we specifically ask “What were you responsible for?” a lot of applicants resort back to saying “we.”
A job interview is your time to really show off the work you have done and the skill set you have acquired in your past work experience. Don’t be shy. Be proud of what you’ve done in your career so far. Don’t discredit that you’ve worked as part of a bigger team, but be specific about how you worked with others and which tasks you were responsible for on your own. For example, you could say something like: “I was on the front-end team and we were building and iterating on the Scrabble user experience and user interface. There were 10 people on the front-end team. What I was specifically responsible for was building an interface that lets users browse and invite other users to play together.”
No matter which stage of the interview process you are at, it’s never too early to ask questions. There is nothing more unfortunate than an interview call that goes amazingly well, up until the last question: “Do you have any questions about our company?” The awkward silence that sometimes follows this question is unnecessary and easy to avoid.
When interviewing for a company, do your research, but don’t hesitate to ask the interviewer questions. Just because you are being interviewed, it doesn’t mean that you can’t also interview the company to make sure it is a good fit for you.
By asking questions, you show that you are interested in the company and engaged in the conversation. You also imply that you are not just mass applying and taking the first offer that lands on your desk. Asking the right questions can prove that you are passionate and genuinely thoughtful about making the career choice that’s right for you.
Tip: Your questions don’t have to be limited to the job interview itself. At Smartcar, we encourage applicants to reach out and ask the recruiting team questions before and after the interview as well. Are you wondering what to expect from the hiring manager screen? Is there a question you forgot to ask the interviewer while you two were talking on the phone? There’s nothing that the recruiting team wants more than for a candidate to get hired. Please don’t hesitate to reach out and ask all the questions that help you be a more successful job applicant.
Here are some questions that can get you started:
Those are the 3 most common mistakes we see candidates make during job interviews at Smartcar, and how you can avoid them. Was this blog post helpful for you? Are there other mistakes that you think are far more important? Please let us know your feedback. We’d be happy to chat!
Today, we’re excited to launch a new and improved Smartcar Connect SDK. Meet the Smartcar Android SDK 3.0.
The Smartcar API allows mobile applications to locate, unlock, and read the odometer from cars across brands without aftermarket hardware. Our Android SDK makes it fast and simple for developers to integrate Smartcar’s API into any Android mobile app. This revamped version...
When using our Android SDK to integrate Smartcar's API into your application, you will worry less about the integration itself and spend more time on the important things: building great mobile apps and creating amazing user experiences for your customers.
Get started with the Smartcar Android SDK today. If you aren't using Android, make sure to explore our Smartcar Connect SDKs for iOS and JavaScript.
APIs are on the rise in every industry. Maps APIs, payments API, messaging APIs, and social media APIs are changing the way we build products and are opening up unprecedented possibilities for countless industries.
The automotive and mobility landscape is a great example of such an industry. During the past few years, it has completely been reshaped by telematics APIs and other automotive software services. Let us take a look at one part of this industry in particular, and explore how fleet management software has benefitted from the use of APIs for embedded telematics like the Smartcar API.
Up until a few years ago, fleet management software companies depended on aftermarket hardware to retrieve crucial information from vehicles. Whether it was a vehicle’s location, its odometer reading, or vehicle health information such as the tire pressure or engine oil life, fleet management software companies needed to retrofit their customers’ vehicles with GPS or OBD devices, before they could access this information and integrate it into their product.
Times have changed and many fleet management software companies now rely on telematics APIs instead of telematics devices. Here’s what’s different about those hardware-free solutions and how fleet management software businesses are taking advantage of them:
Unlike aftermarket hardware, APIs like the Smartar API are standardized and compatible with vehicles across makes and models. Fleet management software companies need to build one single integration, no matter how many different vehicles they serve. APIs also offer developer-friendly documentation and SDKs. This makes integrating an API into fleet management software much faster and easier than integrating with aftermarket hardware.
Retrofitting a whole fleet of cars with telematics devices takes time and effort. In the past, fleet management software companies needed to contract this work out to local installer networks in every region, so that customers didn’t need to install the devices themselves. Smartcar’s customers were able to eliminate this pain point. Onboarding a new vehicle to Smartcar’s software solution takes just seconds from any mobile or web app, saving our customers time and money for more important work.
Unlike telematics devices, API products don’t require any upfront acquisition and shipping cost to be paid for by fleet management software businesses or their customers. When fleet management software companies use APIs for embedded telematics, they are able to offer their product at low initial cost and without long-term financing plans. Our customers have seen shorter sales cycles and an increase in signed contracts after starting to use the Smartcar API.
Even after a fleet is onboarded, API technology bears a low maintenance cost. This has made it possible for our customers to keep their monthly SaaS fees small and retain their customers for longer.
API requests retrieve accurate information directly from vehicles. For example, making a request to read a car’s mileage returns the vehicle’s actual odometer reading, instead of calculating an estimate based on locations and trips. Fleet managers know the difference between well made and poorly designed products. They appreciate it when their fleet management dashboard works flawlessly and doesn’t return inaccurate or erroneous data.
Hardware devices can easily run out of battery, get damaged, accidentally get unplugged, or simply get lost. With telematics APIs, no such worries exist. Once a vehicle is onboarded, fleet owners don’t have to worry about malfunctioning or misplaced hardware. Our customers have told us that their overall user satisfaction has increased since they started using Smartcar, as fleet owners don’t need to deal with broken or misplaced hardware devices anymore.
Even though this rarely happens, drivers or fleet owners might attempt to hide or falsify specific information about their vehicles. With APIs for embedded telematics, such attempts can't happen. Drivers aren’t able to unplug devices or to leave them outside the vehicle. Instead, every API request successfully reaches the car and retrieves accurate and reliable information from the vehicle.
This is how telematics APIs have become the driving force of fleet management software, and how they have benefitted the industry with their versatile, simple, efficient, and reliable architecture.
To learn more about how your fleet management software business can use Smartcar’s technology, check out our website and schedule a demo. We’re happy to chat!
Smartcar is launching a new API endpoint in beta today. Meet batch requests. 💐
The Smartcar API allows mobile and web apps to unlock, locate, and read the odometer from vehicles across brands without aftermarket hardware.
During the past couple of months, we launched a number of new API endpoints (e.g. fuel tank level, EV battery, and tire pressure). Our customers have asked us whether they could make requests to multiple of those endpoints at the same time. We're proud to say that this is now possible.
Our brand-new batch requests endpoint allows you to combine multiple API requests into one single request (e.g. location and odometer). Smartcar's response contains an array with one response for each requested endpoint.
All GET requests to Smartcar's API are eligible to be included in a batch request. For a list of all Smartcar API endpoints, head to our API reference.
Request access to this beta product today, and please let us know your questions and feedback.
Today, we’re proud to announce a brand-new Smartcar API SDK. Meet the Smartcar Go SDK. 🐻
The Smartcar API allows mobility applications to locate, unlock, and read the odometer from vehicles across brands and without aftermarket hardware. Our Go SDK makes it fast and easy for developers to integrate Smartcar’s API into any Golang backend. The SDK comes with a number of exciting features:
Here's an example of an API request to unlock a car using the Go SDK:
When you use this SDK to integrate Smartcar's API into your application, you'll worry less about your integration efforts and spend more time on what's really important: building incredible mobility products.
Get started with the Smartcar Go SDK today. If you aren't using Go, make sure to explore our existing Smartcar API SDKs for Node.js, Python, and Java.
Undoubtedly, the peer-to-peer car sharing industry is thriving. In 2017, nearly 3 million people in North America used P2P car sharing services. But there are several things that make companies like Turo more successful than others.
In previous posts, we explored how peer-to-peer (P2P) car sharing businesses can improve their customer experience by using software to offer virtual car keys, instant bookings, and faster vehicle returns. This time around, we want to take a broader look at the industry and reflect on the factors that have allowed our customers to build successful car sharing businesses using our API technology.
The success of P2P car sharing companies depends largely on the success of vehicle owners. Peer-to-peer car sharing companies should make it easy and lucrative for car owners to put their cars to better use. If they encourage vehicle owners to list their cars and make it extremely seamless for them to do so, the next success story is just around the corner.
All successful products have one thing in common: they meet and adapt to different customers’ needs. Peer-to-peer car sharing companies are especially good at that, if they diversify their offers and attract vehicle owners with different types of cars. The most successful platforms encompass everything from affordable vehicles for a slim budget to luxury cars for a weekend trip to the beach, and from month-long rentals to bookings for just a few hours.
Most peer-to-peer car sharing companies offer a well-designed mobile app that makes listing and booking vehicles easy, fast, and convenient from anywhere. Without this user-friendly, tech-first experience, both renters and vehicle owners would quickly run into too many roadblocks, discover other solutions, and churn.
When it comes to renting a car, pick-ups and drop-offs bear more friction points than the whole rest of the process. Some peer-to-peer car sharing companies have managed to abstract away many of these complexities, making vehicle pick-ups and returns incredibly fast and easy for renters and vehicle owners.
Instead of meeting up and exchanging car keys, vehicle owners can simply share a digital car key with renters. When renters return the car, the car sharing company can automatically verify information such as mileage and fuel tank level, saving owners time and hassle.
Those are four ways in which peer-to-peer car sharing companies can build a successful product using the Smartcar API. To learn more about how your peer-to-peer car sharing business can use our technology, check out our website and schedule a demo. We’re happy to chat!
Today, we're proud to launch the Smartcar EV API in production. 🔋⚡
Our EV battery and EV charging status endpoints are leaving beta and are now available to all developers. Here's how our the EV API works and how our customers have been using it.
Our EV battery endpoint allows web and mobile apps to access the state of charge (SOC) of battery electric and plug-in hybrid vehicles. A request to this endpoint returns:
Our EV charging status endpoint allows you to know whether an EV is plugged in and whether it is charging. A request to this endpoint returns:
EV charging companies like ReCharge use our API to directly communicate with electric vehicles for the first time. Let's have a look at three ways in which our customers are using the EV API today.
Let EV owners monitor their charging progress in real time. Your application no longer needs to estimate a vehicle's charging status based on how much power gets drawn from a charger. Instead, Smartcar lets you retrieve SOC, charging status, and even the remaining range directly from the vehicle.
With Smartcar's EV API, your customers can do more than just plug in and charge. Send EV owners notifications to stop charging once their battery reaches a certain SOC. Let them create smart charging schedules that will remind them to start and stop charging when electricity rates are low and energy sources are carbon neutral.
Based on a vehicle's location and remaining range, help your customers plan trips. Tell them whether they can make it to their desired destination, and if not, where and how long they can charge their EV along the way.
Find out more about how our EV API caters to your business, and schedule a demo to chat with our team today.
On the Smartcar careers page, one of our company values reads “Purpose: Our curiosity drives us to focus on building useful things that move the world forward.” What does this mean, and how does our team make this thought a reality?
That’s exactly what we’ll discuss in this fourth and final blog post about Smartcar’s company culture. Check out our previous posts about balance, respect, and empowerment, and just keep reading to learn more about purpose at Smartcar.
At Smartcar, the purpose of our work is simple: We empower developers to build the future of mobility. Our friendly API docs and SDKs let developers build mobility apps that make the lives of car owners easier and more convenient. Our curious team of engineers and business aficionados is tirelessly dreaming up new endpoints and innovative ways to improve and build upon our product. Our sense of purpose stems from being able to explore our curiosities, act upon them, and create something amazing.
Let us explore how three of our product’s use cases drive the future of mobility. Each use case has their unique purpose and their own way of allowing developers and their customers to build and use innovative mobility apps.
When we first launched our product for auto insurance companies, our purpose was clear. We wanted to change the industry by making car insurance fairer, more affordable, and more flexible. This is why we built an accurate mileage verification solution that allows policyholders to pay only for the amount of miles they actually drive.
With our API, there is no more mileage over- or underreporting and no more mileage fraud from tampered hardware devices or turned-off phones. By eliminating the need to install expensive hardware in a policyholder’s vehicle, companies reduce their overhead costs and pass those savings on to the customer. In turn, policyholders don’t have to worry about installing a complicated device into their vehicles.
Similarly to car insurance, our product goes a long way for peer-to-peer car sharing businesses and their customers. Using our API, companies like Turo and Nabobil.no have made owning and renting cars faster, more convenient, and more affordable.
Smartcar’s API allows vehicle owners to share their car’s location and keys with renters directly via the car sharing app. Instead of arranging a time and place to exchange car keys, renters can find and unlock their rental vehicles directly from their phones. No more time spent waiting at a pick-up point, and no more complicated lockboxes.
What’s beneficial for vehicle owners and renters also benefits the car sharing company. Thanks to our quick vehicle owner onboarding, instant vehicle booking features, as well as easy pickups and returns, car sharing businesses have seen a large increase in bookings on their platform since using Smartcar.
Finally, our newest use case is one that we are very excited about: EV charging. The mobility industry is ever evolving and so are our endpoints. Our recently launched EV endpoints allow EV charging companies to connect directly to battery electric and plug-in hybrid vehicles for the first time.
Companies like ReCharge use our API to access the state of charge and charging status from EVs. This allows car owners to better monitor their vehicle’s charging progress, plan trips, and automatically start and stop charging when electricity prices are lowest. All in all, Smartcar’s API makes EV charging smarter, more efficient, and more convenient for EV owners.
With unwavering curiosity and determination, the Smartcar team continues to explore new use cases and endpoints. Our steadfast purpose is to drive (no pun intended) the world forward with our technology.
Have any questions or feedback? Feel free to reach out to our People & Operations team. We’d love to chat!
The success of peer-to-peer car rental companies depends in great part on the success of vehicle owners. Can vehicle owners quickly and easily list and rent out their vehicles on the car sharing platform? Is the customer experience flawless, or do car owners need to worry about inconveniences such as renters cancelling on them, waiting at a pick-up or drop-off spot, and not getting paid on time?
A large pain point that vehicle owners have to deal with is a car's return at the end of each rental period. Owners need to meet with renters, look for dents or scratches on the vehicle's body, read the odometer, and check the fuel tank level. If renters have damaged the car, exceeded the mileage limit, or forgotten to fuel up before returning the vehicle, owners have to manually report the issue to the car sharing company and wait to get paid an inconvenience fee.
This said, car rental returns are not only a small inconvenience. They also waste every vehicle owner’s time, which adds up to large profit losses for car sharing companies.
P2P car sharing companies like Nabobil use Smartcar to eliminate these pain points. Our technology allows businesses to simplify vehicle returns and to save car owners a good chunk of time on each car rental return.
Using Smartcar’s technology, car sharing applications automatically pull a vehicle’s gas tank level at the end of each rental period. When the tank is only half full, car sharing companies immediately reimburse the owner and charge the renter a convenience fee. Vehicle owners don’t need to worry about sitting inside their vehicle, checking the fuel gauge, manually reporting issues, or waiting for payments to get approved.
Similarly to the fuel tank check, car sharing applications automatically pull the odometer reading from vehicles at the start and end of each car rental. When the driven mileage exceeds the tier that renters paid for, the business automatically charges them and pays the difference to the vehicle owner.
By using Smartcar to make vehicle inspections easier and car rental returns faster, peer-to-peer car sharing businesses have improved customer satisfaction and significant increased car rentals as well as profits.
To learn more about these and other features, check out our recent posts on instant car rentals and digital car key solutions. Please don’t hesitate to contact us with any questions or feedback. We’re happy to help!
Today, we're excited to announce Smartcar's Compatibility API, a Pro plan feature that helps target your app's power users while reducing friction in the Smartcar Connect flow.
Usually, when your customers go through Smartcar Connect, they select their car brand, sign in, and grant your application access to a list of permissions (e.g. read odometer, access location, and lock/unlock car doors). Once those steps are complete, Smartcar runs a compatibility check, making sure that the customer's vehicle is compatible with the required permissions. If the vehicle is incompatible, Smartcar lets your customer know and sends the information back to your application.
The Compatibility API allows you to move the compatibility check from the very end to the very beginning of Smartcar Connect. In fact, it allows you to verify whether a vehicle is eligible before even launching Smartcar Connect in the first place.
By selectively showing Smartcar Connect to customers with compatible vehicles only, your application can target exactly those customers who are able to use your Smartcar-powered features, while reducing friction for those who can't. This will simplify the overall user experience, increase your application's usage, and improve customer satisfaction.
The Compatibility API is our Pro plan feature. If you haven't already, make sure to read our previous announcements about Brand Select and Single Select.
To learn more about these features and how they add value to your business, schedule a demo with our Sales team.
Peer-to-peer (P2P) car sharing companies are revolutionizing the car rental industry. They let customers rent cars from private owners via an easy-to-use mobile app, while stripping away all the complexities that traditional car rental companies struggle with. Customers of peer-to-peer car sharing businesses don’t have to deal with overwhelming websites, opaque pricing, long wait times, and unpleasant surprises when the desired car brand or model is no longer available. Instead, customers simply book a vehicle online, meet the owner to exchange car keys, and return the vehicle once the rental period ends.
In recent years, technologies like Smartcar’s API have accelerated this successful business model even further. Among other features, peer-to-peer car sharing companies use our software to let renters book cars instantly, only hours or even minutes in advance. What are the advantages of instant car rentals? How has Smartcar's technology enabled P2P car sharing companies to build and offer the feature?
Many P2P car sharing companies offer instant car rentals. The feature allows renters to book select cars instantly for same-day pick-up, instead of having to reserve a vehicle days or even weeks in advance.
Renters search the car sharing app for vehicles that are nearby and available for instant booking. After reserving a car and selecting a pick-up time, the renter picks it up from a designated spot. Renters don’t need to meet vehicle owners to exchange car keys. Instead, vehicle owners share their car’s location along with a digital key directly in the car sharing app. Once the renter has found and unlocked the car from their phone, they retrieve the physical key from the glove compartment and start driving the vehicle.
The advantages of offering instant car rentals are striking. First, renters love the instant booking feature for its speed and flexibility. They are able to rent cars more spontaneously and more often. They also save significant time on pick-ups and drop-offs, as they no longer have to wait for vehicle owners to arrive and hand over their keys.
Vehicle owners love and benefit from the instant car rental feature just as much as renters. As they no longer need to be present for each pick-up and drop-off, vehicle owners rent out their cars more often, even when out of town for a vacation or a business trip. They also like to rent out multiple cars in different places at the same time, because it allows them to optimize their car ownership and to gain more money.
Finally, the instant booking feature is a huge benefit for car sharing businesses themselves. Companies that offer the feature have seen improved customer satisfaction, increased rental numbers, and maximized profits.
Smartcar’s software technology empowers businesses to easily integrate instant car rental features into their peer-to-peer car sharing apps.
This is how Smartcar’s technology enables car sharing companies to offer instant car rentals on their platforms. Learn more about how Smartcar caters to car sharing businesses, and please don’t hesitate to contact us with any questions or feedback. We’re happy to help!
We're excited to announce a new API endpoint in beta today. Meet the Smartcar tire pressure API. 🧭
The Smartcar tire pressure API allows web and mobile apps to retrieve a vehicle's tire pressure with a single API request. The endpoint returns the air pressure of each tire in kilopascals or pounds per square inch.
The Smartcar tire pressure API quickly and easily solves business problems for various mobility companies.
Car insurance providers use the product to detect sudden changes in a vehicle's tire pressure. Maintenance and repair services utilize the API to notify customers when their tire pressure is too low or too high, and invite them to schedule a service appointment.
These are only two examples of how customers use our tire pressure API. To learn how our product caters to your use case, schedule a demo with our Sales team today.
To request beta access to the API endpoint, please reach out to us via email.
With the rise of the sharing economy, peer-to-peer (P2P) car sharing services have become more and more popular. The concept is easy. Customers rent cars from private owners for short periods of time. In turn, vehicle owners put their idle cars to better use while earning money on the side. This business model often goes along with a well-designed, easy-to-use app that makes listing vehicles and renting cars fast and simple.
Peer-to-peer car sharing is a great concept, but it can be difficult to make a reality. What if I rent a car, but the vehicle owner doesn’t show up at the pickup spot? Or what if I want to lend my vehicle, but I’m away on a business trip and unable to meet renters for a physical key exchange? Companies like Turo and Nabobil are using Smartcar’s technology to solve these problems. Here’s how.
Many peer-to-peer car sharing businesses see pain points in a vehicle’s pick-up and drop-off process. Vehicle owners have to physically meet renters and hand over their car keys. This is time consuming and inconvenient not only for vehicle owners, but for renters too. That's where digital car keys come in handy.
Digital car keys allow vehicle owners to share access to their vehicle directly in the car sharing app. When picking up a vehicle, renters unlock the doors with their phone and find the physical keys inside the glove compartment. This way, vehicle owners and renters no longer need to physically meet and exchange car keys.
Some P2P car sharing companies have implemented virtual car key solutions by professionally installing hardware devices inside vehicles. Unfortunately, there are several disadvantages to using hardware as a digital car key solution.
Hardware devices are expensive to use. They often need to be purchased upfront in large bulks, before the car sharing business knows whether vehicle owners will make use of the digital car key solution. Shipping costs, firmware updates, and the replacement of lost or stolen devices quickly add up and turn into large cost factors. In the worst case, vehicle owners churn before businesses can recover the hardware cost.
It takes several days, if not weeks to ship each device to the respective vehicle owner. Every day wasted on shipping hardware is a day of missed revenue opportunity for the car sharing business.
Hardware devices don’t function correctly if they aren’t installed correctly. Companies either need to educate vehicle owners on how to install the device in their vehicle, or they have to build a network of technicians in every region to manage the installation work for them. Both distract significant time and resources away from more important parts of the business.
Once installed correctly, hardware devices can get knocked out of place without vehicle owners or renters realizing it. In those cases, customers find themselves unable to lock or unlock a car from their phones. They aren’t able to identify the problem and how to fix it.
That said, hardware-powered digital car keys bear a lot of problems. During the past years, software technology such as Smartcar’s API has started to largely replace those outdated hardware solutions.
Smartcar allows car sharing companies to easily integrate keyless entry into any car sharing app without the need for hardware devices. Here is how our customers are using Smartcar.
Instead of requiring large upfront costs, our simple SaaS pricing adapts to and scales with every business’s usage and needs. Automatic software updates make our solution easy and inexpensive to maintain.
Thanks to our friendly documentation and SDKs, it takes car sharing companies just a few hours to integrate Smartcar’s software technology into any mobile or web app. Our software is compatible with models of 14 vehicle brands across the United States, allowing most car owners to use it.
Vehicle owners onboard their cars with just a few clicks in any car sharing app. From here, they start using and sharing their digital car key right away. They don’t need to wait for a device to arrive in the mail, and they don’t need to spend time installing anything.
Smartcar’s technology communicates directly with the 3G or 4G modem that is directly built into each vehicle. This connection is extremely reliable and eliminates the risk of damaged or misplaced components.
This is why peer-to-peer car sharing businesses shouldn’t use hardware devices as a digital car key solution, and why many companies use software alternatives such as Smartcar’s API instead.
Learn more about how Smartcar caters to P2P car sharing companies. Please don’t hesitate to contact us with any questions or feedback. We’re happy to help!
We're thrilled to roll out Single Select, a Pro plan feature that personalizes onboarding and ensures 100% accuracy in the Smartcar Connect flow.
Smartcar Connect lets your customers quickly and easily link their cars to your application. Usually, customers select their vehicle brand, sign in, and select the car(s) they wish to link to your app. If a customer owns multiple vehicles of the same brand, they can choose to link one or more cars from a list of checkboxes.
In some cases, your might want to limit customers to linking only one vehicle at a time. This is where Single Select comes in handy.
The simple version of Single Select limits customers to selecting only a single checkbox on the vehicle selection screen. By ensuring that customers link only one vehicle at a time, your application can more easily process and store related information.
If your customer's vehicle is already on file in your application, you can use Single Select with VIN. This more advanced feature personalizes the onboarding experience even further. With 100% accuracy, it ensures that customers link the right vehicle to your application.
To use Single Select with VIN, simply pass in the VIN of your customer's car when launching Smartar Connect. Your customer now automatically skips the vehicle selection step and directly reviews permissions for that specific car.
Single Select our second Pro plan feature. Don't forget to read about our first Pro feature, Brand Select.
Stay tuned for further announcements and schedule a demo with our Sales team to learn more!
Welcome to part 3 of our company value blog post series. Previously we gave you insight into how we value balance and respect in the workplace, today’s post will talk about how we create an empowering culture for everyone at Smartcar!
A company can only be successful if each individual knows how their work contributes to the overall success of the organization. This is why for us, being empowered starts with knowing Smartcar’s vision and aligning on common goals.
Our co-founders Sahas and Sanketh openly communicate Smartcar’s vision and goals during monthly All-Hands meetings. Those meetings serve to create transparency around our company’s focus, metrics, and precisely what the team is doing to achieve our short and long-term goals. With the help of everyone’s buy-in, enthusiasm, and collaboration, we’re not only aiming in the same direction and achieving our goals as a team, but we’re also happier and more empowered employees.
Sahas and Sanketh don’t only create transparency and alignment around a broader vision and goals, but they also strive to empower every team member during their day-to-day work. At Smartcar, we want everyone’s voice to be heard and different opinions, perspectives, and ideas to be sincerely considered and appreciated.
To encourage open communication and feedback, we hold bi-weekly 1 on 1’s between each team member and their manager. This helps us think critically and to speak up for what we believe in. When our voices are heard, we feel valued and know that we can truly make a difference.
Smartcar is a collaborative environment, but managers also trust every team member to work autonomously, make their own decisions, and take ownership of projects. When Mathilde wanted to experiment with a new recruiting incentive, she didn’t need to cut through a bunch of red tape to get approval. She had an idea and her manager trusted her to see it through. The new incentive yielded increased response rates and was a huge success.
But even when we try something new and aren’t successful, management doesn’t label it as a failure. Instead, it is seen as an opportunity to learn, grow, and improve. When we feel trusted with making the right decisions, we can focus our efforts on accomplishing the best results.
Finally, empowerment means being able to grow in our current roles and, beyond that, to grow our careers at Smartcar. Sahas and Sanketh encourage the team to take charge of our career growth and to make our roles our own. Take a look at some Smartcar success stories:
Charlotte has been with Smartcar for right about one year. She joined the team as a Marketing intern, working on blog posts and all things content. After a successful internship, she took on a full-time role. Charlotte has been our Content & Marketing guru ever since, managing everything from product copy and homepage content to SEO, blogs, and PR.
Three years ago, Gurpreet joined the Smartcar team as a Software Engineering Intern. Halfway through his internship, Gurpreet accepted a full-time role and eventually got promoted to Senior Software Engineer and acting Tech Lead. In his time here, Gurpreet has gained lots of new skills and has worn many hats, discovering everything from sales engineering to building out engineering mentorship programs.
Zeenia joined the team as a Business Development Associate in 2017. Fast forward to today, Zeenia has been promoted three times and is now heading Sales and Business Development. She has built out everything from our sales process to market research and pricing.
Today, we're excited to launch Brand Select, a brand-new Pro plan feature that speeds up the onboarding process and increases conversions in the Smartcar Connect flow.
For those who aren't familiar, Smartcar Connect allows your customers to link their vehicles to your application. It lets customers select their car brand, sign in with their username and password, and grant your application access to a list of permissions (e.g. access vehicle location, read odometer, and lock/unlock car doors). Once the Connect flow is complete, your application can start making API requests to your customer's vehicles.
Smartcar Connect will soon features an exclusive set of Pro features that makes linking cars to an app even faster and easier. Starting today, our Pro plan customers will have access to the first of three features, which we'll launch over the course of the next few weeks.
The very first of our Pro features is Brand Select. It allows you to simplify the user experience, speed up onboarding, and increase conversions during Smartcar Connect. Here's how it works.
Usually, Smartcar Connect starts off by letting customers select their vehicle brand. However, you might already know the brand of the vehicle(s) that your customer is linking to your app. In those cases, Brand Select lets customers skip the "Select your brand" step, taking them straight to the vehicle login screen.
With fewer clicks, fewers steps, and a shorter time to completion, Brand Select makes the Smartcar Connect flow faster and easier, while increasing conversions by up to 20%.
Schedule a demo to learn more about Brand Select, and stay tuned for updates about further Pro features!
Pay-per-mile and usage-based insurance (UBI) products are on the rise. More and more auto insurance businesses calculate premiums based on a policyholder’s driving behavior. This means tracking a driver’s mileage, location, time-of-day driving, acceleration, braking, and more. While industry professionals agree that mileage is an important risk factor that influences pricing and underwriting, there is less agreement about other factors. Let’s take a deeper look into time-of-day driving.
The difference between driving at dark and driving by daylight is literally night and day. At dark, drivers face limited visibility, making it harder to see road signs, other vehicles, and pedestrians. Construction sites are more likely to be active during the night hours. Unfortunately, there are also more drunk drivers on the road at night-time.
That said, time-of-day has a large influence on a driver’s experience. But why should insurance providers care?
Insurance providers should care, because night-time driving is significantly riskier than day-time driving. According to the NHTSA, 49 percent of fatal car accidents occur at night, although only 25 percent of total traffic occurs during those hours. Hence, the fatality rate per vehicle per mile is three times higher at night than it is during the day. This makes time-of-day driving an important risk factor for insurance companies. Knowing when policyholders drive is just as insightful as knowing how many miles they drive.
Monitoring day-time vs. night-time driving is easier for some insurance businesses than it is for others. Some companies are already using aftermarket hardware or their policyholders’ smartphones to report all kinds of driving behavior. Others are not yet using vehicle telematics or smartphone technology, but are instead letting policyholders self-report their annual mileage.
Is your insurance business currently asking policyholders to self-report their mileage, and would you like to start monitoring time-of-day driving as well? Smartcar offers a simple solution for you. Using our API technology, your company can start automatically verifying mileage and tracking night-time driving as well. Our pure software product brings a number of benefits:
Let us elaborate this last point a little further. While UBI products are becoming more and more common, transparency and privacy concerns are getting stronger and stronger as well. Policyholders are hesitant to constantly share their location with insurance companies. They don’t want to disclose their every movement, including when they accelerate and how strong they brake.
Smartcar offers the first and only solution that lets you do both - track important driving behavior such as mileage and night-time driving and protect your policyholders’ privacy. Our advanced technology lets insurance providers monitor mileage and time-of-day driving by reading a vehicle’s odometer and logging timestamps - no location services needed. Our transparent onboarding flow shows policyholders a detailed list of permissions (e.g. read odometer, read VIN, or read fuel tank level), which they can choose to accept or deny. This way, your business can gather accurate information and calculate risk without compromising consumer privacy and transparency.
No matter whether your insurance business is new to vehicle telematics, or whether it already offers UBI products, Smartcar allows you to easily monitor mileage and night-time driving, all the while minimizing privacy concerns.
If you have any questions or would like to request a product demo, please don’t hesitate to contact us. Our Sales team is happy to help!
Today, we're thrilled to give you a sneak peek of our two newest API endpoints. Meet the Smartcar electric vehicle API. 🔋⚡
Our EV API endpoints allow you to retrieve an electric vehicle's current battery level and to know whether the car is currently charging. All this works on most battery electric vehicles (BEVs) and plug-in hybrid vehicles (PHEV) across brands and without aftermarket hardware.
🔋 The EV battery endpoint lets you access:
⚡ The EV charging status endpoint returns whether an electric vehicle:
Our EV API allows you to retrieve EV data and manage charging with ease. Energy and utility providers can better manage residential EV charging to balance electric grid load. EV charging networks can provide estimated charging times, automatic charging schedules, and EV trip planning for their customers.
Visit our Electric Vehicle API page to learn more about compatible vehicles, latest API endpoints, popular use cases, and more!
Welcome to part 2 of our company value blog post series. After part 1, today’s topic lies especially close to our hearts: respect. We’ve done a lot to create a respectful work culture here at Smartcar, and we’d love to share our insights with you.
Fostering a respectful work environment can mean a lot of things. To us, it means being kind, inclusive, and collaborative.
We pride ourselves on having a truly kind team here at Smartcar. We’re genuine and down-to-earth people that work hard but don’t take themselves too seriously. The phrase “this isn’t in my job description” is not in our vocabulary. As a team, we fail and succeed together, and we stay a team even outside of work.
To mention a few examples, our founders Sahas and Sanketh helped Gurpreet (Senior Software Engineer) move to a new apartment one weekend. When we receive significantly more job applications than usual, the whole team helps Jackie and me with screening applications and hopping on interview calls. When our Content Writer, Charlotte, publishes a blog post that she really wants to go viral, the entire company shares her post and even calls up friends and family to chip in.
Being respected has a lot to do with feeling welcome and feeling empowered to participate. If you have an idea - share it! If you have hesitations about something - speak up! If you see that someone needs help on a project - help them! We value a no BS environment with open communication and equal opportunities for everyone. A few examples of this include:
When giving a job offer to a potential new team member, several colleagues send out congratulations emails. We want new team members to know we’re excited to meet them, and we want them to feel welcome right from the start.
No matter which department you work in, everyone is welcome to join in on different teams’ meetings. Many of our Business team members have participated in Engineering sprint planning, and asked questions to fully understand the technical side of our product. All of our engineers have joined our Head of Sales and Business Development, Zeenia, on Sales pitches to understand the needs of potential new customers. Some of our interns have sat in on candidate interviews to learn more about our recruiting process.
When our Recruiting team proposed hosting quarterly demo events at our office, our CEO provided a budget to experiment and prove the concept. After three events and one new hire from each event, we transformed the experiment into an ongoing part of our recruiting practices.
Even outside of working hours, we sometimes go hiking, boxing, or bowling together. Other times we organize game or movie nights, or we feast together at a potluck or barbecue. Every team member brings in their own background and interests, so our outside-of-work activities never get boring.
Last but not least, creating a respectful work environment means to collaborate. You can’t respect someone or be respected if you’re completely alone. In fact, all our roles here at Smartcar involve working with and learning from others.
Our engineers often work on larger projects in pairs. They also do code reviews and peer programming. Finally, at least two engineers have to approve every PR before gets merged in.
Smartcar’s Recruiting team is highly collaborative as well. We work with the Marketing team on organizing events and managing our social media channels. We also value the team’s input when hiring someone new to join the Smartcar family. During the final step of our interview process, five team members participate in interviews. When we make our decision, hearing various perspectives helps us eliminate bias and ensure that we’re hiring top talent.
Finally, the Marketing function benefits from close collaboration with other departments. Charlotte wouldn’t be able to improve SEO without help from Engineering, send the right email campaign without help from Product and Sales, and publish a blog post about our company values without - well - help from someone on our Recruiting team. 😉
This is how we’re being kind, inclusive, and collaborative to create a respectful work environment at Smartcar. Of course, no company is perfect, so we’re always striving to listen to everyone’s feedback, to keep doing what we’re doing well, and to improve what we could do better.
Stay tuned for two further blog posts about our remaining company values, and feel free to reach out to our People & Operations team with any questions. We’d love to chat!
As an alternative to self-reported mileage and aftermarket hardware solutions, more and more insurance companies have started using their policyholders’ smartphones as a tool for tracking and verifying mileage information. Here is why this popular solution is problematic, and which route your insurance business can take instead.
At first sight, using a smartphone for mileage verification sounds favorable. Policyholders download an app and set their location sharing to “always.” From here on, the phone’s accelerometer and location services are doing the magic. The phone detects the start and end of a trip. It then calculates driven mileage based on the phone’s continuous location data.
As simple and convenient as it may seem, there are numerous problems with using smartphones to track vehicle mileage:
That said, smartphones aren’t the best way to report and verify car mileage. We at Smartcar have given this topic a lot of thought, and we’ve worked hard to develop a solution that solves all of the mentioned problems in one go.
Smartcar’s mileage verification solution uses API technology to let insurance businesses do the following:
As our API communicates directly with each vehicle, there is no need to constantly monitor location data, or to estimate and calculate mileage based on other information. Smartcar is the first mileage verification solution that eliminates the risk of inaccuracy, failure to report, battery drainage, fraud, and privacy complaints. Our product does the heavy lifting and simplifies mileage verification, so that insurance providers can focus on what’s important: successful underwriting, a growing customer base, and increased profits.
Are you wondering how Smartcar caters to your insurance product? Would you like to learn more about our product or schedule a demo with our sales team? Feel free to reach out to us. We’ll be happy to assist!
Underreported mileage causes the auto insurance industry billions of dollars in losses every year. But what exactly is underreported mileage, and how can insurance businesses avoid it?
Underreported mileage is a form of soft fraud. It occurs when policyholder report a certain number of miles driven, while they actually drove more than the reported amount.
Unfortunately, this underreporting of mileage happens quite frequently. Most insurance companies allow policyholders to self-report their annual mileage, asking policyholders how much their car was driven that year. Those insurance providers don’t have a way of verifying whether the driver’s answer aligns with the vehicle's actual odometer reading. Of course, this common practice invites policyholders to give rough estimates rather than accurate statements, or to even lie about their mileage information.
Underreported mileage poses a huge problem to almost all insurance businesses. People who drive more are at bigger risk of getting into accidents. When policyholders lie about how much they drive, insurance providers will work with erroneous data and inaccurately calculate risk. The result is a large amount of premium leakage for insurance companies every single year.
More than half of drivers underreport their annual mileage to insurance companies. A quarter of them understate their mileage by 6,000 miles or more, according to a study by the California Department of Insurance. Clearly, this is not a small issue. Quite the contrary, underreported mileage causes the insurance industry to lose billions of dollars every year. Finding a solution is important and long overdue.
The path to avoiding underreported miles is simple: Use a car’s actual odometer reading instead of relying on self-reporting and other tamper-prone solutions. Smartcar provides a mileage verification solution that lets insurance companies access their policyholders’ actual odometer readings. Here’s how it works:
Using our API technology, insurance businesses can let policyholders link their cars to an insurance application. The app can then regularly read mileage information from the policyholder’s car. This pure software solution brings multiple benefits compared to self-reported mileage and hardware alternatives:
With Smartcar’s solution, insurance providers can easily and automatically read a policyholder’s odometer every year, every month, or however often is necessary. Policyholders won’t have to look up how much they drove, and they won’t be able to rig their mileage information in any way. Insurance companies will never have to deal with soft fraud or tamper again.
Smartcar’s technology communicates directly with 3G and 4G telematics modems that are built into vehicles. It allows insurance apps to access a car’s true odometer reading, eliminating all forms of inaccuracy and all risks of failure. Using this reliable information, insurance businesses can finally achieve correct pricing and underwriting.
As self-reported mileage is becoming less and less popular, alternative solutions have entered the market. Some insurance providers ask their policyholders to install OBD-II dongles or other aftermarket hardware in their vehicles in order to automatically read and report mileage. The use of a policyholder’s smartphone for the same purpose is another prominent solution.
Smartcar’s pure software product is entirely different from both of these methods. First, both OBD dongles and smartphones are inaccurate when reporting mileage, as they merely estimate the number of miles driven on the basis of location and trip data. Neither aftermarket hardware nor phones are able to access a vehicle’s true odometer reading. Second, policyholders can still commit tamper by unplugging OBD devices and turning off their phones. Third, both solutions are prone to unintentional underreporting, namely when a hardware device gets knocked out of place and when a policyholder’s phone battery dies from constantly reporting its location in the background.
This is why underreported mileage poses a big problem to auto insurance companies and how Smartcar’s mileage verification solution alleviates the problem. If you have any questions about our product or would like to request a demo, please don’t hesitate to reach out to us. We’re happy to help!
Every workplace is different. Each company has their very own history, organizational structure, values, and culture. While a company’s leaders are responsible for ensuring certain core values, all team members contribute their own perspectives and experiences, creating a unique company culture.
Job applicants often ask us what Smartcar’s company values are and what our company culture looks like. This blog post series will provide you some insight, guided by our core values: balance, purpose, empowerment, and respect.
Are you wondering how we achieve work-life balance and how we promote a happy, healthy work environment? Then this “balance” blog post is for you - just keep on reading!
There is a common misconception that people at startups are overworked and burnt-out. That’s just not the case at Smartcar. Having a healthy work-life balance is super important to us. Our flexible PTO policy allows everyone to take the time they need to recharge, explore the world, and see their families. We’ve gone to some pretty cool places recently. Have a look!
We want everyone at Smartcar to be and stay healthy. This is why we offer a variety of health, dental, and vision plans for team members to choose from. In our free time, you will find many of us exercising, playing sports, and enjoying the outdoors. Sometimes, we spontaneously sign up for boxing classes or go on group hikes together.
A healthy employee is a happy employee. At our office, we’ve created a space where our team can be comfortable, productive, and creative. Our flexible office furniture ranges from standing tables to couches and from quiet areas to patio seating. There’s simply no room for monotony at Smartcar! In case you get hungry, we offer a pantry full of healthy snacks, a fridge full of La Croix, plenty of coffee, and (of course) free catered lunches!
Dogs are part of the Smartcar family. Every Thursday and Friday are take-your-dog-to-work days at our office. We encourage games of fetch and walks outside, helping dogs and team members alike to get a break from the day-to-day. Our office dogs are even invited to company offsites!
Every quarter, Smartcar organizes team bonding activities that allow everyone to get out of the office, have fun, and get to know each other better. We believe that regular company offsites foster trust and communication between colleagues. We really find that it works, and also, it’s just a lot of fun.
This is how we create a balanced company culture at Smartcar. Stay tuned for further blog posts about our three other company values, and feel free to reach out to our People & Operations team with any questions. We’d love to chat!
Whether we’re looking at pay-per-mile products, usage-based pricing, or traditional policies, mileage verification plays an important role in all kinds of auto insurance products. Many insurance companies use aftermarket hardware like OBD-II dongles to verify mileage. Here’s what this hardware solution lacks and how you can use a successful software-based alternative.
While on-board diagnostics dongles (OBD) are versatile and useful for tracking and diagnostics, they are far from ideal when it comes to mileage verification.
As cars are becoming increasingly internet-connected, we don’t always have to depend on hardware to do the things that matter most. Smartcar is a pure software alternative that uses API technology to offer the perfect mileage verification solution to auto insurance companies.
We sometimes get asked: "Is Smartcar a data marketplace?" The answer is no.
Smartcar is an automotive developer platform. It is not an automotive data marketplace. It never has been one, nor will it ever become one.
We're used to getting asked whether Smartcar is a data marketplace. This question comes up from time to time in our meetings with customers, partners, OEMs, analysts, and VCs. It's a fair question to ask, as topics like data monetization have become a popular focus in the automotive tech world. However, it's important to understand the difference between a data marketplace and a developer platform.
On any marketplace, there are sellers and buyers. The good being sold and bought on a data marketplace happens to be data. In the past few years, several well-funded companies have built marketplaces for car data. Those platforms, often also referred to as data exchanges, enable companies that generate automotive data sets to sell it to interested buyers.
More often than not, the automotive data that is being sold on these new types of marketplaces belongs to consumers who have unknowingly signed away their rights when using certain products and services. While some new platforms incorporate anonymization techniques before selling the data, there is still something fundamentally controversial about selling consumer data without giving consumers a choice and without being 100 percent transparent about it.
A developer platform is fundamentally different from a data exchange. It is a collection of tools and resources for software engineers to easily integrate with a family of products. For example, Stripe makes it easy for developers to integrate with every credit card processor. Plaid makes it easy for developers to integrate with any bank. Smartcar makes it easy to integrate with any car.
We provide developers with friendly API documentation and SDKs to integrate mobility apps with cars of any brand. Without our platform, developers would have to spend months building dozens of custom integrations for each and every car brand.
Developer platforms do not facilitate letting companies sell their customer data to others. Neither does Smartcar.
Apart from offering resources to software engineers, developer platforms also empower consumers to choose the apps they want to use and to consent to specific permissions. At Smartcar, we let vehicle owners link their cars to the apps of their choice, and we let them review a specific set of permissions for each app (e.g. vehicle location, odometer, fuel tank level).
Here's what we say when companies reach out to us with the following questions:
Smartcar's mission is to empower developers to build the future of mobility. We believe that the best products do not come at the cost of consumer privacy. This is why Smartcar is a developer platform.
Today, we're excited to launch the Smartcar fuel tank API! ⛽
This new API endpoint allows your application to retrieve the fuel tank level from your customers' vehicles instantly and without aftermarket hardware.
How does this new product work, and how can it help your business build seamless mobility experiences?
Smartcar enables web and mobile applications to locate, unlock, and send other requests to cars across brands with a single API. Our new fuel tank endpoint lets you access:
The Smartcar fuel tank API is a game changer for a number of different use cases. Let us mention just a few:
To learn more about our fuel tank API, schedule a demo with our sales team today. Are you a developer? Get started with a free account.
This past weekend, Smartcar hosted the Bay Area's first mobility hackathon alongside Shell and HERE Technologies. Here’s an overview of the event, some key takeaways, and our best memories.
Over the past four years, Smartcar has seen an alarming trend: transportation is broken. Today, more than ever, the world is in dire need of cleaner, safer, more efficient, and more accessible mobility solutions. Transport systems are over-crowded, traffic congestion is at an all-time high, and environmental and health concerns are rising.
That’s exactly why the Smartcar team spent weeks collectively planning and organizing HackMobility 2019. We created a launchpad to bring innovative people and companies together, to build solutions that change the mobility landscape as we know it today.
All the hosts and sponsors were Shell-shocked (pun intended) by the teams’ impressive ideas, which were fully fleshed out and developed both on the back end and front end. Some of the hacks stood out to us for their tremendous ingenuity:
In June of 2012, the world was witness to the original “computer on wheels” with the release of the Tesla Model S. This was the first time that a lightweight passenger vehicle had (arguably) more emphasis on technology and driver experience, with the hardware side coming in a close second. Since then, the entire automotive industry has been forced to undergo a rapid paradigm shift, where software has become one of its foremost priorities.
Today, there are more software engineers and full-stack developers working within the automotive space than ever before. And similarly, many major players—including automakers, part manufacturers, and others—have spent hundreds of millions of dollars opening up offices and ‘innovation hubs’ in the Bay Area.
All of this goes to say that Silicon Valley has an important role to play in the evolving automotive realm, and that this scope of impact is only increasing as time goes on: from Apple CarPlay and Android Auto to on-demand car maintenance and usage-based insurance, and beyond – into the self-driving arena.
We were incredibly impressed by the turnout of HackMobility 2019. The event proved two important points: First, mobility matters not only to those in the industry, but to many engineers and entrepreneurs alike. Second, developers are able to build impactful solutions for the mobility landscape in a matter of hours. Undoubtedly, they should and will be shaping the future of the mobility.
As organizers, we anticipate making HackMobility an annual event. Stay tuned!
In anticipation of some exciting new API endpoints that will be announced in the coming weeks, we’re thrilled to launch a mighty feature today. Meet required permissions!
Required permissions will make it easier for you to:
But what are required permissions? Great question! To get a better understanding, let’s look at two other words first:
Whenever a user links their car(s) to your app, Smartcar Connect prompts them to accept a scope of permissions. Those permissions might include “access location,” “lock and unlock vehicle,” and more.
So far, all permissions that your app would ask access to during Connect were optional. If the user’s vehicle didn’t possess the demanded functionalities (e.g. if the vehicle was incompatible with the “access location” endpoint), the user was still able to accept the scope of permissions and successfully link their vehicle to your app. This is how optional permissions look in test mode using Node.js:
As we’re launching more API endpoints, we want to give your app all the necessary information to successfully send requests to your users’ cars. Starting today, required permissions will make this possible.
All permissions in Smartcar Connect will stay optional by default. However, if certain permissions are essential for your use case, you can now make them required, like so:
If your user’s vehicle is not compatible with one or more required permissions, the user won’t be able to link their vehicle to your application. Instead, we will redirect them to your app and send important information (such as the vehicle’s make, model, and year) back to you.
Please check out our Scope guide for more information about optional and required permissions. As always, please let us know if you have any questions!
This weekend, Shell, HERE Technologies, and Smartcar are hosting HackMobilty 2019 - the first mobility hackathon ever organized in the Bay Area. Here’s why mobility is the perfect topic for a hackathon, and what you can expect from the event.
We’re at the brink of a massive shift in the mobility landscape. From autonomous cars to vehicle voice assistants and electric fleets, cars can do more today than we could have imagined just a few years ago. While those new developments are exciting, the mobility industry is also facing unprecedented challenges.
When cars were first invented, they were hailed as a great equalizer - a means for families to move towards better futures, a way for children to get to schools, for employees to get to new jobs, for patients to get to hospitals. Today, however, even with the advent of services like Uber and Lyft, the equalizing power of transportation hasn’t permeated society strongly enough, and environmental concerns have exacerbated the problem.
Transportation has reached a point of diminishing returns for the common (wo)man. From food deserts scattered across urban landscapes, to traffic congestion and roadblocks to the expansion of EV charging networks, we’re simply not moving fast enough.
While traditional industry incumbents are trying to rise to the challenge, a window has opened for a new set of players: developers. With software being the primary driver of progress for many industries, developers possess more and more sophisticated tools to make an impact in the mobility space. From granular location-based car sharing to concerted investments in new energies, developers are building an ecosystem of apps and services, bringing a novel approach to an industry that is undergoing tremendous change.
That’s why we’re so excited to co-host HackMobility 2019 with two companies that are as committed to empowering developers as we are. Together with Shell and HERE Technologies, we’re hoping to give developers the space, time, and tools to make transportation more equitable, more sustainable, and more efficient. We’re joined in that mission by Goodyear and eBay, who will sponsor prizes for the best hacks related to their respective industries.
At HackMobility, you can expect vibrant discussions around innovation in the automotive space, engaging workshops and panels, and of course, the company of some of the very best developers in the Bay Area.
HackMobility will take place at Galvanize San Francisco on Saturday, July 20 and Sunday, July 21, 2019.
With a diverse range of expertise, our companies are bringing a number of tools and perspectives to the table:
HackMobility offers hackers three different prize tracks. Developers are invited to build hacks that make mobility:
Teams can submit projects to up to two tracks. Cash prizes of $5,000 will be awarded to the best hack in each of the three tracks by our three sponsors: HERE Technlogies (green track), Goodyear (efficient track), and eBay Motors (equitable track). Additionally, Smartcar will award a prize to the team that demonstrates the best use of Smartcar’s API.
The Shell Grand Final Prize will give the winning team the opportunity to pitch their product directly to the Shell Digital Ventures team.
For further event details and a detailed agenda, feel free to check out our Eventbrite page.
Don’t forget to book your free ticket today, or reach out to us with any questions!
We recently launched Smartcar Connect, a product that lets users quickly and securely link their vehicles to an application. If you checked it out, you might have noticed that it looks quite different from the authorization flow we previously offered.
Smartcar’s original authorization flow was designed more than a year ago. It was about time to revamp this beta version and make it production ready. We wanted to refresh the end-to-end flow with a clean and modern visual style that enables your users to easily connect their vehicles to your app.
When we set off to revamp our visual language, ease of use was top of mind. We decided to introduce brighter colors, bolder call-to-action buttons, and icons for each permission in our Grant page.
Beyond a cleaner look and feel, we made improvements to the following user experience aspects:
Authorizing a single vehicle 🚗 Many users have a connected car account for only one vehicle. On our Grant page, users with a single car used to see a checkbox next to their vehicle’s make, model, and year. Rather than giving these users the ability to deselect their only car and run into an error, our redesigned flow includes the vehicle’s make, model, and year directly in the page heading.
Vehicle compatibility check ✔️ To identify areas of improvement in our old authorization flow, we mapped out the optimal path for all potential users. We realized some users were uncertain whether their car was compatible with Smartcar’s API and didn't have a path forward in the flow. When building Connect, we added a way to check a vehicle’s compatibility by simply entering its VIN.
Separating already authorized vehicles ✨ When a user was connecting their vehicle in our old authorization flow, and if they had previously linked other vehicles already, all cars would appear in one big section. Smartcar Connect separates out unlinked vehicles from already authorized vehicles and puts them into two different lists for a better overview.
This isn’t the end of the road. In the coming weeks, we'll be making more changes to improve the developer experience of Smartcar Connect even further. These updates will happen automatically. All you need to do is lean back and enjoy! 🌞🌴
Today, we’re proud to present our new and improved authorization flow. Meet Smartcar Connect!
Smartcar Connect lets your users quickly and securely link their vehicles to your application. In just a few steps, your users can authenticate with their connected car account and grant your application permission to interact with their vehicles.
If you have already implemented the old authorization flow into your app, it will automatically switch to Connect. If this is your first time here, integrating Connect is fast and easy, like so:
And as always, don’t hesitate to reach out with any feedback or questions!
“You decreased the blur radius on your button shadows, didn't you? No, no, that's not it — it's the fonts. Definitely the fonts. Or maybe it's the third accent color...”
Has something about us looked a little different to you lately? Good eye! 🕵️♀️ 👀
A few weeks ago, Smartcar's brand got a major facelift. We've always striven for clean, sleek, and simple design, but over the last few months, we felt like something was missing. We wanted our potential customers to have a better sense of our true identity as a company. We wanted them to see our landing page and immediately think: “That's Smartcar!”
At Smartcar, our mission is to empower developers to shape the future of mobility. We want to inspire the next generation of apps that transform the way we think about transportation and everything connected to it. In a way, creating the first and only standard API for cars has made us trailblazers, but we believe that our developers will be the most important trailblazers of all. Because of this, our brand should instill a sense of empowerment and inspiration.
As Smartcar's API allows apps to interact with vehicles in an innovative and transformative way, we also want to convey a sense of trust and security. Cars are incredibly important to individuals' daily lives, and we expect them to behave in a safe and reliable manner. Thus, we identified the following key element to guide our design process: empowering developers to build a better, safer future of mobility.
Once we had established a clear vision for Smartcar's new brand, it was time to translate these ideas into visual designs. We wanted to stand out from other popular tech brands that feature colorful illustrations of cartoon people, which you might have seen one too many times. We wanted to convey a sense of professional identity, while at the same time allowing our fresh, authentic personality to shine through. “What could we draw inspiration from?” we asked.
Down the street from our office in Mountain View, CA is the NASA Ames Research Center. Over the years, NASA has commissioned numerous pieces of artwork to capture “the emotions of exploration, such as excitement and uncertainty, in a way in which history could look back and fully appreciate all that the agency had achieved.” The NASA Art Program cultivated a sense of “pride and shared accomplishment” between the public and the agency — it helped shape the way Americans thought about their place in space, in the future, and in history.
To us at Smartcar, that seemed pretty cool. It got us thinking: how could we use this as a blueprint for creating our own unique, exciting, inspiring, and enduring brand? Then we found retrofuturism — the style of many NASA illustrations. It's defined as follows:
Retrofuturism is a movement in the creative arts showing the influence of depictions of the future produced in an earlier era. If futurism is sometimes called a 'science' bent on anticipating what will come, retrofuturism is the remembering of that anticipation. Characterized by a blend of old-fashioned "retro styles" with futuristic technology, retrofuturism explores the themes of tension between past and future, and… empowering effects of technology.
“This is perfect,” we thought. A few years ago, people may have seen technologies like Smartcar's API as a distant vision of the future. But now, it actually exists. Our design could help people see Smartcar as part of the future — an exciting, revolutionary technology that would power innovative changes in the mobility landscape. So, we decided to take cars to space! 👩🚀 🌖
We hope that you'll enjoy looking at our new brand as much as we enjoyed building it. Over the next few weeks, keep an eye out as we're applying the new design to every part of the Smartcar experience — from the doc center to the dashboard to the blog and beyond. Look closely, and you might even find an alien or two! 👽
Today, we're proud to introduce the latest use case for Smartcar's API: seamless on-demand car wash experiences. 🧽💦
This is where Smartcar comes in. Our API allows on-demand car wash companies to create seamless customer experiences. Here's how it works:
The best part? Smartcar works across car brands and without the use of aftermarket hardware like OBD dongles. Our API easy to integrate with, thanks to friendly documentation and SDKs in six languages.
To get started with Smartcar, create an account right away. Your first 1,000 API requests will be free (no credit card required).
If you'd like to learn more, check out our uses cases and read how Washos and Spiffy are using Smartcar for their on-demand car wash services.
Thanks for reading! As always, we're here to help with any questions or feedback.
Today, Smartcar is proud to launch its lock and unlock API! 🔑
Our lock and unlock API endpoints allow app developers to lock and unlock cars remotely, using just a few lines of code.
Are you ready to hit the road? Get started today and let us know if you have any questions!
Turo is a peer-to-peer car sharing service that lets travelers book nearly any car from a large community of trusted car owners. The company helps put cars to better use while creating exciting new experiences for travelers. We’re proud to see Turo start utilizing Smartcar’s API to power the next generation of its car sharing program Turo Go.
Turo Go allows car owners and guests to locate and unlock vehicles right from the Turo app, without needing to meet and exchange car keys. Vehicle owners previously had to install aftermarket hardware before they could share a digital key with guests.
Turo Go uses Smartcar’s location and security API endpoints to spare vehicle owners the time and cost of installing a hardware device in their vehicle. After linking their car to the Turo app and approving a list of permissions, vehicle owners can instantly and seamlessly start sharing a digital car key with guests.
"Smartcar is making it easier than ever for us to build new and innovative mobility experiences with connected cars," said Turo’s Director of Engineering Paul Velez. "We're excited to kick off this partnership as it allows us to provide a seamless car sharing experience for our hosts and guests."
The integration will roll out to select Turo users in California and New Jersey this summer, with plans to expand to the entire United States later this year. After the national launch, thousands of Turo vehicles will be eligible for the hardware-free car sharing solution.
Washos is an app-based car wash service in Los Angeles, CA. The company lets customers book appointments via their app and then sends detailers to wash and detail cars at their home or office. Today, Washos is officially launching their integration with Smartcar’s API.
Washos offers on-demand car wash and detailing services that customers can book via app.
Previously, Washos customers had to meet and physically exchange car keys with the detailer before and after each interior detailing appointment. This could be inconvenient and time-consuming for both Washos and their customers. When the company decided to work with Smartcar, they quickly realized how our lock and unlock API endpoints could improve their customers’ on-demand car wash experience.
Before Washos integrated with Smartcar's API, their customers and detailers needed to exchange car keys.
Thanks to the integration with Smartcar's API, Washos customers who own an internet-connected vehicle can now share a digital car key with detailers directly via the Washos app.
The startup uses Smartcar’s lock and unlock API endpoints (POST security) behind the scenes, letting detailers unlock their customer’s vehicles for interior detailing, and letting them lock the doors back up once they are done.
By eliminating the need to meet and exchange car keys, Smartcar’s API allows Washos to save their detailers time and hassle, and to create seamless car wash experiences for their customers.
"Integrating with Smartcar's API was incredibly fast and easy," said Washos CEO Bertrand Patriarca. "Thanks to the API's lock and unlock endpoints, we can make on-demand car wash more convenient for our customers and scale our business more efficiently than we could have ever imagined."
We're excited to see Washos using our API, and we look forward to seeing which services they'll offer next!
We started Smartcar a few years ago with a powerful mission: making it possible for developers to easily build apps for cars. We created a standard API for cars. Developers can read our docs and use our API to locate or even unlock a car’s doors with just a few lines of code. We’re proud of the product our team has built and we’re glad to work with the customers we serve.
As developers ourselves, we know that great API experiences need great documentation. That’s something we realized early on. It took us months of ideation, engineering, chatting with customers, and iteration to launch our platform.
A few days ago, we came across Otonomo’s publicly available API documentation. As we read through it, we quickly realized that something was off. It looked familiar. Oddly familiar.
That’s because we wrote it.
We didn’t just find a few vague similarities to Smartcar’s documentation. Otonomo’s docs are a systematically written rip-off of ours — from the overall structure, right down to code samples and even typos.
Compare the following screenshots, from Smartcar and Otonomo as of April 16, 2019:
Even the sample identifier we randomly generated in the custom scheme section of the table is an exact match.
The randomly generated string we added as a placeholder for the “&state=” parameter value was copied too.
The order, structure, tables, labels, descriptions, and even the code snippets are identical.
The screenshots speak for themselves.
Otonomo raised approximately $55 million in disclosed venture capital funding from well-regarded VCs including Bessemer. The company has a valuation of nearly $400 million from a recent financing round and stamps of approval from auto-industry heavyweights like Delphi (Aptiv). They are not some rogue company. I’m baffled.
Did none of the over 100 Otonomo employees (according to LinkedIn) think that what they were doing was wrong?
Smartcar’s team has worked day and night over the past few years to build an incredible product. We are driven by the firm belief that our work will empower developers to build the future of mobility.
Today, we are taking legal action. We have sent Otonomo a cease and desist, demanding that they immediately stop ripping off our hard work. Stay tuned.
If you’ve ever built a graph from scratch before, you know it might not exactly be a walk in the park. At Smartcar, we wanted to create a graph that would showcase our users' API usage over time and give them insights into the requests they've made, so we confronted this issue head-on.
Luckily, with our front-end architecture built in React, paired with the JavaScript library D3, we could combine advanced state management with powerful data visualization tools to create an awesome time series line chart. Before we knew it, we had built a dynamic and responsive time series graph that could be constantly updated with new data on whatever screen our users pleased.
And here's how you can do it too:
To kick things off, you’ll want to create a React component for your line chart with a few familiar lifecycle methods: `constructor`, `componentDidMount`, `componentDidUpdate`, `componentWillUnmount`, and of course `render`.
Now you'll have something like this:
Now we're ready to start building out `d3Utils.js` and actually put the pieces of our line chart together. Since we're building a time series graph, we'll be working a lot with dates and timestamps. At Smartcar, we wrap a library that can handle this, like moment.js or date-fns, in something we'll refer to as `dateUtils`. Alright, let's get started by creating the most fundamental part of the graph — the scales and axes.
Now that we've set up these elements for our line chart, we'll also need to use D3 to specify their place on the DOM. Adding the axes and line to our graph will look something like this:
Awesome! Now we're ready to put it all together. Let's attach our axes and line to their designated DOM elements. Finally, let's write the method we mentioned a bit earlier: `d3Utils.initializeChart`.
In the previous two sections, we set up a basic time series line chart and rendered it in our React component. Now, let's enhance the dynamic capabilities of our graph and enable it to update when new data comes in. As you might have guessed, this starts with the lifecycle methods of `<LineChart>` , specifically `componentDidUpdate`. In this function, we'll watch for changes in our data and trigger readjustments when necessary.
Now that we have the React side of things ready to go, let's write our `d3Utils.handleNewData` method to make the necessary adjustments to the graph itself. When new data comes in, we'll mainly want to check for two things:
Here's an example of how you might want to do that:
Finally, we can write our `handleNewData` method with the functions above. We'll have to re-draw the elements of our graph to render the changes on our line chart.
Voilà! Now your time series line chart can dynamically update to showcase the most recent data available.
The final optimization we'll detail today is how to make your graph responsive across browsers. Because the scale of our x-axis is determined by the width of the graph, we'll need to adjust this accordingly for different screen sizes. To handle this functionality, let's first make our final changes to `<LineChart>`. We'll need to add an event listener to our component in order to detect changes in screen size (and remove it when the component unmounts) as well as write a method to set the new width. After all these changes have been made, our component will look something like this:
And last but not least, let's write `d3Utils.setWidth`. In order to get the current width of our line chart, we'll simply find the SVG on the DOM, measure its width, and adjust the range of our x-scale accordingly.
And there you go! Now you have a dynamic, responsive time series line chart built in React and D3. 👏👏👏
At Smartcar, we've added a few extra bells and whistles to spice up our usage graph a bit. Give them a try or add something totally new to your shiny new line chart!
Here's a few of the ideas that we've tried:
We hope this helps all you developers out there the next time you need to create an awesome time series line chart with D3 and React. Thanks for reading and happy building!
P.S.: Interested in what else we're up to? Here's a secret: We're hiring! 🤫
Smartcar is proud to present its odometer verification API! ⏲🏁
Our odometer API endpoint lets app developers remotely access a car's mileage information, using just a few lines of code.
Whether you're building a mobile app for peer-to-peer car sharing or a web app for mileage-based car insurance, you might want to retrieve a car's odometer instantly and at low cost. Smartcar's API is the right tool for that, as it supports different application architectures, is easy to integrate with, and can be applied to a variety of use cases.
With a single HTTP GET request, you will obtain the total distance travelled by a vehicle, regardless of the car's brand or model. The best part? There is no need for aftermarket hardware like OBD2 dongles, mileage trackers, or GPS tracking devices.
This is what your request to Smartcar's odometer endpoint would look like in Python:
And this is only the beginning... Beside Python, we offer SDKs in five other languages, integration guides for different architectures, and - of course - other API endpoints.
Check out our docs to discover more, sign up for a free account on our dashboard, and let us know if you have any questions!
Today, we're proud to bring Smartcar's API to all Java developers.
Using the Smartcar Java SDK, you can now integrate our API into your mobile or web app using Java.
Our SDK walks you through all the steps you need to seamlessly integrate and start sending requests to Smartcar's API, like locking and unlocking a vehicle:
We know that it can be a nuisance to deal with JSON in a Java environment. That's why our SDK handles conversion of JSON responses from our API into convenient POJO classes.
To complement this back-end SDK, Smartcar offers front-end SDKs for iOS, Android, and JavaScript. To learn more about the different architectures we support, feel free to check out our docs. If you are new to using APIs, this guide will help you get started.
Wondering which apps developers have built using Smartcar's API? Our customers range from peer-to-peer car sharing companies to on-demand car wash services. Have a look at our set of endpoints to explore the limitless possibilities of building with Smartcar.
Enjoy, and as always, don't hesitate to give us a shout with any questions or feedback!
Recently at Smartcar, we started to build an integrated billing infrastructure that facilitates, tracks, and automates all payment processing for our API platform. Our first step in this process was to create a reliable billing service that would allow us to store and retrieve all of our users’ API usage data.
But before getting started, we needed to make a couple of decisions: Which type of data store should we use? What types of data should we store? And how should we build the data store? This blog post will outline why we chose to build a relational data model in PostgreSQL, why we chose to build it as a microservice, and why we're using Apache Avro for data serialization.
We hope that you’ll find this post useful when creating a data store for your own product. Happy reading and happy billing, everyone! 💰💳
Our first step in creating a data store was to choose what type of database would best serve our use case. To make this decision easier, we created a list of criteria that we found most important:
With those criteria in mind, we evaluated a few different databases. The table below shows whether each type of database is able to entirely meet each criterion.
When looking at this comparison, we quickly identified Postgres as the winner:
To ensure both durability and queryability, we decided that a relational database management system (RDBMS) like Postgres was the right choice for us. Postgres gives us transactional guarantees that makes our data durable. Data stored in relational databases is also highly queryable. Unlike noSQL alternatives or in-memory data store variants, relational databases support structured data organization and storage using schemas and tables. This allows us to easily construct our queries to calculate billing and flexibly change queries, should our business requirements change. A Postgres database is also extensible, as it can support different types of queries while keeping the same structure. Finally, as Postgres is open source, it offers a whole ecosystem of tools to export and transport data from our billing database to other services.
In an ideal world, we would want to track and store all types of requests made to Smartcar, but this would require a lot of instrumentation work. To save time and effort, we prioritized to only track what we called “billable” requests, with the possibility of expanding that scope in the future. We defined a billable request as a successful API request made to a real vehicle. For each billable request, we store only the data that’s necessary for invoicing and auditing, meaning:
Now that we decided on a type of data store and what data to store, it was time to choose an architecture and get building!
We knew that multiple services on Smartcar’s platform would need to interact with our billing database:
As several services would depend on our billing database, we decided to build it as a separate microservice. In its code base, we wanted to apply the logic of doing one thing really well. We looked for inspiration and decided to follow the principle of decoupled persistent storage. This Medium Engineering post about monolithic and decoupled data persistent data storage helped us make this decision.
Now that we had decided to build our data store as a separate microservice, we had to find a way to easily communicate to and from it.
We considered to either build an internal JSON-based HTTP server interface, or to use a binary serialization format with a Remote Procedure Call (RPC) framework like Apache Avro. We decided to go with the latter, for the following reasons:
With those three factors in mind, using Avro was the natural choice for us.
Let’s recap the steps we took when creating our first billing data store at Smartcar. We decided to:
This is how our billing data store interacts with other services on our platform:
We are now a few months into using this data store as the single source of truth for all our billing data. In this short amount of time, the way we architected the data store has already saved us a colossal amount of engineering work, and has improved user experience for the developers using our API. We have also begun building other services that depend on our billing data store, and we’re looking forward to using, testing, and improving it more as we build out our entire billing infrastructure.
If you've made it all the way to the end of this blog post, and this topic sounds like an interesting challenge to you, we'll tell you a secret: 🔐👉 We’re hiring!
To unlock your car, you usually need one thing: keys. So, what if all you needed was a laptop, an internet connection, and basic knowledge of a programming language?
At Smartcar, we’re making exactly that possible. Our API makes it easy for app developers to locate, unlock, and read data from vehicles using nothing but simple HTTP requests. This is how it works:
Easy, right? Don’t forget to lock your car back up when you’re done! 🔑
Now it’s your turn. Head to our docs to get started, and feel free to give us a shout at support@smartcar.com with any questions or feedback!
Nabobil is a peer-to-peer car sharing platform based in Oslo, Norway. Their app connects private vehicle owners with folks looking to rent cars in the same neighborhood. Today, Nabobil is launching their integration with Smartcar. Here’s how and why the company uses our API.
Previously, Nabobil’s car owners had to meet with renters to physically exchange keys before and after every car rental. This could be time-consuming and challenging, especially for vehicle owners who travelled and wanted to rent out their car more than once during that time. To make the car sharing experience easier and more seamless for users, Nabobil decided to integrate with Smartcar’s API.
“The integration with Smartcar’s API was uncomplicated, said Nabobil CTO Christian Hager. “The Smartcar team is service-minded and was happy to help out with the preparations necessary for us to succeed.”
Starting today, Nabobil’s Tesla owners can share digital keys with renters without the need to physically meet. Nabobil uses Smartcar’s security endpoint, allowing renters to lock and unlock their rental cars directly from the app. The company also uses Smartcar’s location endpoint, letting renters locate their rental cars via the app during pickup.
“This is next generation car sharing! The integration with Smartcar’s API is allowing us to onboard our big pool of Teslas already available on our platform,” said Nabobil CTO Christian Hager. “The rental experience is finally up to the standards our users expect, and we are super excited to see where we can move from here!”
Today, we’re proud to announce Smartcar's Compatibility API - a product that allows developers to determine which vehicles are compatible with the Smartcar platform.
Until now, it was hard to know which vehicles were compatible with Smartcar, even among supported brands. Some brands started equipping their models with the required connectivity hardware in a specific production year, while others only equipped a vehicle if the buyer configured the car with a certain package. Long story short, there was no easy way of knowing whether a certain car was compatible with Smartcar.
We realized that this was far from ideal and decided to solve the problem. Our new Compatibility API allows you to enter a car's vehicle identification number (VIN) and determine whether it is compatible with the Smartcar platform.
The Compatibility API is the industry’s first and only system to determine embedded connected hardware compatibility across different vehicle brands. Here’s how it benefits you:
Determine whether your user’s car is compatible before sending them through Smartcar Connect. Your app can now easily support user flows for both compatible and incompatible vehicles.
Find out how many of your users own compatible vehicles and decide whether integrating with Smartcar is right for you.
Check out our docs to try the new endpoint, and let us know if you have any questions!
P.S. This is just the beginning. the Compatibility API paves the way for us to add more API endpoints and to connect your apps with millions of vehicles. Stay tuned!
Applying for a job can be nerve-wracking and confusing, especially if you don’t know what to expect during the interview process. When will I hear back? Who will conduct my next interview? How many rounds will I have to complete until the job offer? As each company handles its recruiting process differently, answers to these questions vary and can be hard to find.
We at Smartcar thought: “We can do better than this!” If you are interested in applying for a job at Smartcar, the following guide will tell you what our application process is all about. Even if you aren’t looking to apply at our company, you can get some useful insights into what you should know before applying, what the main steps in the process are, and how to prepare for a job interview.
In short, Smartcar’s APIs allow auto insurers, car sharing businesses, and electric utility providers to connect with cars. Tracking vehicle locations, verifying mileage, sharing digital keys, and managing EV smart charging is available in-app via an effortless link to our software. If you’re interested in APIs, cars, software, the mobility space, or just one of the above, Smartcar might be a good fit for you. Check out more about our product to see for yourself!
Smartcar is fully remote across all 50 states. Our team is incredibly smart and down to earth, and truly embodies Smartcar’s values: purpose, respect, empowerment, and balance. Each job posting includes who your immediate team members are as well as your manager.
Our interview process takes about two to three weeks from start to finish. We transparently keep candidates in the loop during the entire interview process. As Smartcar is a remote-first company, all interviews take place via phone call or video chat, including our final stage!
Once you find the position that’s right for you and submit your application, you will hear back from us within a few business days.
Pro tips:
1. On your resume, we’re looking for a substantial project that you’ve worked on and that you are proud of. Tell us the good, the bad, and the ugly about that project — we want to know it all.
2. Spend time writing answers to the questions we’re asking on the application form. You can skip the cover letter.
We got back to you and scheduled a first phone call, yay! You will speak to a member of the recruiting team. The purpose of this call is to answer all your questions about Smartcar and the role you are applying for. We also want to learn more about you. Be yourself and have fun!
After the call, our team will review your background to determine whether your skill set matches the role. If that’s the case, we will reach back out to schedule your first call with the hiring manager.
If there isn’t a match, we will let you know. However, we are always happy to help you connect with other recruiters we know. Please don’t hesitate to ask!
Pro tip: Be prepared with questions about the company and the role before your call.
During this call, the hiring manager wants to learn more about you, your background, and your motivation to apply for the position at Smartcar. If you are interviewing for an engineering role, the manager might ask you a few technical questions. If you are interviewing for a business role, they might ask you a few situational questions.
Pro tip: Come prepared to talk about a complex project that you’ve worked on in the past, and one that is related to the role you are applying for. You will be asked to break down what the project was, what you were responsible for, what the most complex part was, and what you would do differently if you had to do it again.
During this stage of the interview process, you will receive a challenge that will assess your skill set in relation to the role you’re applying for. Once you receive the challenge by email, you’ll have a specified amount of days to complete it depending on the assignment.
Pro tip: We’ve built every challenge in-house here at Smartcar. If you have any questions while working on the project, our team is happy to help!
The review will take place with a member of our team. The team member has reviewed your challenge beforehand. They will ask you how you went about putting your assignment together, what was tough, what was easy, and what you would have done differently if you had more time.
Pro tip: In this interview, we are assessing your ability to reflect on your work. Please come prepared and ready to screen share your assignment. You will be leading the conversation by explaining your thought process and strategy.
The final stage is the last step in Smartcar’s interview process. It differs for each role, so we will give you more details over the phone beforehand. It is usually around 3 hours long. You will have a chance to meet the hiring manager again, a few members of your team, and most likely a member of a different team to get a full picture of our culture.
Pro tip: Make sure to use this time to interview us as well!
After the final stage, our team will huddle, reflect on all the interviews, and decide whether we’d like to move forward with an offer. Before we extend the final job offer, we will ask you for two references who have worked with you in the past — one manager and one co-worker. We will reach out to them and briefly speak with them about their experiences working with you, your ability to work in teams, and your ability to handle stressful situations. Once reference calls are completed, the team will discuss the feedback and decide whether to extend an offer!
Pro tip: If you would like us to move even faster, feel free to send us the references before your final stage. We will not reach out without your permission.
Congrats, Smartcar is giving you a job offer! Now it’s on you to decide whether our company and the role are a good fit for you and whether you’d like to accept. Fun fact: we have a 92% offer acceptance rate!
Pro tip: Don’t hesitate to reach out to the recruiting team, the hiring manager, and the team members who interviewed you, in case you have any questions or need advice. We hope that you’ll make the decision that’s right for you, and we’re excited if you join our team!
Like with so many things in life, being well-prepared for a job interview can go a long way. To familiarize yourself with Smartcar, learn more about who we are and what we do:
Long hours. Swag monsters. Hours of pitching and helping students debug their code. For a lot of small companies and their engineers, hackathons can be a tiring way to spend the weekend. Surprisingly, we at Smartcar found that sponsoring and attending student hackathons is not only fun, but fundamental to how we think about our developer community. We started attending hackathons last year, saw how well it worked for us, and committed to a lot more of them for 2019. We’d love to share why we — a small, early-stage startup — are focusing on this heavy-duty initiative.
Startups and especially engineering teams are often laser-focused on the product they’re building, optimizing features in the most fine-tuned way possible. Attending a hackathon where nobody knows you and your product is a good way to zoom out and look at the bigger picture. What problem are you trying to solve? How do potential users approach your product? How would they use it? Hackathons are a great way to get large amounts of in-person feedback on these topics.
And that’s not the whole story: hackathons are an especially tough environment to pitch in, given the competition ( — Google and Microsoft will be sitting just steps away from your booth — ) and the hectic nature of hackathons. If your startup falls prey to the trap of “build it and they will come,” then attending hackathons will be just the reality check your team needs. Can you convince young, talented developers that your product will bring them value? Then you’re on a good path to success.
This point is fairly self-explanatory. Hackathons are great for catching errors in your code and testing new features. We’ve had hackers point out many little errors in our code, from finding that the code snippet in our docs was out-of-date, to errors in our READMEs. The best part? Your audience is pretty forgiving, especially if you push out a fix in time for submission!
More than just finding small bugs and errors, hackathons can also be useful for testing new features that you’re planning to take live soon. Is our new JavaScript SDK in high demand? Do folks run our demo app, or do they go straight to the Getting Started Guide? How do beginners use our docs, as opposed to more experienced programmers? Hackathons are controlled environments that allow you to track how your product is being used. Making use of that opportunity can go a long way.
Hackathons — even student hackathons — are full of real developers, building creative, innovative, and useful projects. Students are more curious and visionary than any other developers. We’ve seen them build the most creative apps on our API — from an app that lets parents track how fast their children are driving, to an app that lets users measure their car’s impact on the environment.
But it’s more than just seeing students learn and build creative products. Building relationships with those talented young people today means building relationships with the tech industry’s engineers and CTOs in the future. It’s as simple as that.
Hackathon attendees are talented developers, and are often searching for internships and their first full-time jobs. If your team does a good job at interacting with those people, and at representing your startup in an engaging way, you will soon automatically have motivated internship applicants and — even if it takes a few months or even years — accomplished full-time candidates lining up at your office door!
All in all, hackathons have been a great way for us to build Smartcar’s product and developer community. If you are organizing a hackathon this year and you’ve read all the way until the end of this post, please don’t hesitate to reach out and see if we can attend!
Smartcar enables developers to locate and unlock cars with an API. Want to take our product for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
Smartcar dashboard feature alert! 🚨
Today, we’re proud to announce the most recent addition to our developer dashboard: usage. Starting today, you will see the option “Usage” in the dashboard’s top left menu. Our usage graph allows you to easily track the requests you’ve made to Smartcar’s API.
So, what are the benefits? What does this mean for you, developers? We’re glad you asked.
Now it’s your turn — get out there and start making requests! Watch that blue line go up and up! 💙
Any features you’d love for us to add to our usage tracking? Give us a shout — we’d love to hear from you!
Smartcar enables developers to locate and unlock cars with an API. Want to take our product for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
2018 was an exciting year for us at Smartcar. We shipped many new product features and worked with a host of exciting new customers. But what made the year really special were the many hackathons we attended and the awesome students we met! Last year’s events brought us to Hackbright Academy in San Francisco, UC Davis’ SacHacks in Sacramento, HackHarvard at Harvard University, and Y-Hack at Yale.
We haven’t landed in your city yet? Don’t worry. We’re revving our engines to take the Smartcar hackathon show on the road! We’ll bring a Tesla Model S to every event, allowing developers to build and test their apps on a real vehicle. Using our API, we’ve seen hackers create everything from peer-to-peer car sharing platforms to mileage-based insurance apps. In 2019, the Smartcar team will dash around the country (and across the border) to attend the following hackathons.
And there’s more to come. Right now, we’ve only paved the way up to April. As we commit to more events, we’ll update this blog post accordingly.
Are you organizing a hackathon, but yours isn’t yet on our list? Contact us to see if we can attend!
If you’re curious about the types of apps hackers have built on our platform last year, check out this blog post about the first hackathon we hosted with Hackbright Academy in San Francisco. Also have a look at our favorite photos from past events below!
Happy hacking, everyone, and we hope to see you this year! 💻🚗
Smartcar enables developers to locate and unlock cars with an API. Want to take our product for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
The Smartcar team wishes everyone a Happy New Year! What have we been up to for the past 12 months? Have a look at the photos below to find out.
Smartcar enables developers to locate and unlock cars with an API. Want to take our product for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
We’re thrilled to announce that Box Care — an on-demand car care app — is leaving the shop and heading for the open road with Smartcar.
Based in Berkeley, CA, Box Care offers on-demand car wash and fuel delivery to vehicle owners in San Francisco and the East Bay. The company lets customers book appointments via their mobile app. It then sends a staff member to clean and/or fuel the car on the spot.
Box Care’s app offers on-demand car wash and fuel delivery.
Since the company integrated Smartcar’s API into its app, it has been able to locate the vehicles it needs to service and unlock their doors for interior cleaning. This cuts time and costs for both the company and their customers.
Before using Smartcar, Box Care’s customers had to manually enter their car’s location in the app each time they were requesting a service. With our API’s location endpoint, the company can now locate their customers’ vehicles and send their staff directly to the right spot.
If Box Care’s customers wanted the inside of their car cleaned, they had to stay nearby and unlock their car for Box Care’s staff when they arrive. Smartcar’s security endpoint allows staff members to unlock and lock the customers’ cars via the app, without having to physically exchange keys.
“It’s convenient for our customers, but also for us,” said Box Care co-founder John Kim. “Without Smartcar, we’d have to ask customers to come outside and unlock their car. Integrating with the Smartcar API has made things a lot easier for both sides.”
To integrate Smartcar’s API into their app, Box Care added a “Connect my car” button that launches Smartcar’s authorization flow. This flow lets customers log in with their car brand’s app credentials (e.g. Tesla app, Volkswagen Car-Net app) and lets them grant the app access to a set of permissions (e.g. to locate, lock, and unlock their vehicle).
Since our first meeting with Box Care this year, the team has rapidly grown and improved their product. As a part of the Smartcar Garage Program, they worked with our team to help us test new features like API endpoints and SDKs. We can’t wait to see what the Box Care team does next, which features it will add to their app, and where they will expand their services.
To bring the best possible user experience to developers, we constantly iterate on our products. In the last few months, we have revealed a redesigned dashboard, added live and test modes to the Smartcar authorization flow, and shipped a new version of our JavaScript SDK.
Today, we’re proud to present a revamped documentation center. With its new features, the doc center will help you quickly and easily integrate Smartcar’s API into your application.
So, let’s have a look at what’s new:
We offer a demo app on the landing page, called Test Drive. The Test Drive app shows you how our platform works. Without writing any code, you can run the Test Drive app in your terminal and launch our demo in your browser.
Our Getting Started Guide gets you up and running with Smartcar. In a step-by-step format, this guide explains how you can make your first request to our API. It’s available in Node, Python, and Java.
If you want to build a full-fledged application, our Integration Guides show you how. Whether you prefer building single-page apps with React, mobile apps on iOS or Android, or server-side rendered apps with Express — we have the right Integration Guide for you.
The new doc center also offers guides on more nuanced aspects of our platform. These guides will tell you which architectures we support, how you can test your app, how we handle errors, and which security best practices we advise you to follow.
Last but not least, our API reference has remained the same. If you’ve seen our old docs before, you will encounter some familiar elements here.
That’s it! We hope you’ll enjoy browsing the new doc center. And as always, please don’t hesitate to reach out to us with any questions or feedback!
Smartcar enables developers to locate and unlock cars with an API. Want to take our product for a spin? Check out our docs and get started with our Test Drive!🚗
The original version of this story was published on the Sentry blog.
Buckle up! On this episode of Exception Perceptions, Sydney Palumbo and Emre Sonmez, engineers at Smartcar, drove by to chat about Smartcar, a platform that helps developers create apps that communicate with vehicles. Watch the episode, and then shift gears to let Sydney and Emre guide you through Smartcar’s delightfully simple process.
Smartcar is a standard API for connected vehicles. We enable web and mobile app communication with cars (think “lock doors” or “check odometer”) across multiple brands, without any hardware.
So what does that actually mean?
Let’s say you wanted to build a simple iOS app to share your car keys with your friends. Here’s how you’d do that:
Now, this is how things should work. But as we all know, things can go wrong. And when things go wrong, we want to quickly resolve the issue to keep our developers happy. Here’s where Sentry comes in.
When someone makes an API request to us (to get a vehicle’s location, for example), we figure out what brand and model the car is and retrieve that data point from the car using our integrations with car brands. A lot could happen when we attempt to retrieve this info:
These types of issues are to be expected with large, complex, moving objects. However, if any of these three things occur, our process is to (a) investigate the issue as soon as possible, (b) notify our developers that have been affected if the issue is severe, and (c) resolve the issue.
When an error occurs, Sentry provides us the stack trace, release, car brand, and source of the request — which allows our team to investigate, resolve, and notify developers of the issue as fast as possible.
When you first create a developer account (for example, to run our demo app), we generate a client ID and secret for your application. This process is a necessary step to make your first request to the Smartcar API. If a developer experiences an error in our React app while registering their application or updating their configuration, we want to identify who the user is and make sure they can successfully use our API as soon as possible.
At Smartcar, we focus heavily on minimizing the time it takes for a developer to log in to our dashboard, register an application, and make their first request to our API. Sentry enables us to quickly detect errors and see the actions the user took that lead to the error.
Want to check out the Smartcar API? Create an account, run our demo, and let us know what you think! 🚀
The Smartcar API currently offers three back-end and three front-end SDKs for developers who want to build apps for cars. The JavaScript SDK is our most widely used front-end SDK.
We recently launched v2 of the JavaScript SDK. This revamped version makes it easier to build single-page applications (SPAs) on the Smartcar platform. But before we dive into details, let’s discuss how v1 worked and why we decided to do an overhaul.
An important part of building and using an app on the Smartcar platform is the authorization flow. Smartcar uses the OAuth2 framework for its authorization flow. In v1 of the SDK, this flow enabled server-side rendered applications, which use frameworks such as Rails, Django, or Spring:
While v1 worked for traditional server-side rendered applications, we noticed that many of our developers wanted to create single-page applications (SPAs), using frameworks like Angular and React. When building SPAs on the Smartcar API, our developers faced several challenges:
In order to solve these challenges associated with SPAs, we decided to revamp our JavaScript SDK. The solution we came up with has Smartcar host a redirect page for you. Here’s a diagram of the updated authorization flow:
Using `postMessage` — a web API that allows for secure cross-domain communication — enables v2 of the SDK to send the authorization code from the pop-up to your SPA, while still abiding to CORS rules.
By hosting a redirect page for you and using `postMessage` to securely communicate across domains, we solve all three challenges that SPAs faced with v1 of the SDK:
Thanks to v2 of the JavaScript SDK, you can now easily build SPAs on the Smartcar platform! 🎉
And of course…
Are you ready to start building? Head over to the JavaScript SDK repo and jumpstart your creative engines! For more context, check out our docs — and as always, please don’t hesitate to reach out to us with any questions.
It’s always great to ship new features to your users — but you can’t know how these features are performing if you don’t know how your users are interacting with your product.
This is something we struggled with during the early days at Smartcar. We didn’t have a way of measuring how our users interacted with the new features we shipped.
Our product, an API for cars, lives in a space that is just emerging. The concept of building a mobile app that reads data from cars (e.g. the odometer) without any hardware is difficult to communicate. Vehicle owners are connecting their car to a mobile app (e.g. a mileage-based car insurance app) for the very first time. To make our product succeed, we needed to answer the following questions:
How can we iterate on the experience that we provide to app developers as well as to the vehicle owners using these apps? In other words, how can we know which of our recent product changes are working well and which ones aren’t?
As we were tackling this issue, we found hundreds of ways to track how users interact with our product. Our marketing team wanted to view data in Mixpanel, our business team wanted to send Intercom campaigns based on specific interactions, and our engineering team wanted to pipe user event data into Amazon S3 buckets. As a result, we had to answer yet another question:
What is the right tool to track user interactions? Is there a single tool that meets all of our team’s different needs?
“There must be!” was our answer to the latter question. At least until we could hire enough people to set up and maintain multiple integrations.
Luckily, we found Segment.
When we collected and weighed different tools, we hesitated between:
Ultimately, we decided to use Segment (option 3), thanks to following advantages:
In short, Segment lets us implement and maintain a single integration, while making it possible for all team members to use any analytics tool without additional engineering effort.
Now that we decided to use Segment, how did we end up using the tool on a day-to-day basis? How does Segment help Smartcar deliver a better experience to app developers and vehicle owners?
At Smartcar, we’re constantly seeking to improve the “developer journey” by asking: “What are the biggest friction points in building an app using our API?”
When we redesigned the Smartcar dashboard not too long ago, we first wanted to understand what was lacking in our original iteration. We then wanted to use that information to drive our redesign. So, we added Segment to our original dashboard and tracked three core things (among many others):
Feeding this data into Mixpanel, we realized the following:
Thanks to those insights, we knew to redesign our dashboard in the following way: When you create an account, we automatically create an application for you and provide links to resources that can help you get started (e.g. running demo app). We also managed to reduce the number of clicks it takes developers to run our demo app from over ten clicks to four.
By adding Mixpanel and Intercom as destinations, our engineering team can now keep tabs on how developers are interacting with our redesigned dashboard, while our marketing team can use events to send timely emails to developers (for example, messages that are tailored towards how many apps a developer has built or which SDKs they used).
Creating a better experience for app developers is important to us, but we also want to improve the user experience for consumers. In any app that uses Smartcar, the consumer will go through the Smartcar authorization flow. During this auth flow, the consumer authorizes the app to access their vehicle, by:
As users proceed through this flow, our team wanted to monitor the following:
Before using Segment, we couldn’t monitor those things and had to rely on qualitative feedback from friends and developers. We had no notion of how many people “dropped off” during the auth flow, and we had no way of telling whether the new features we added were producing positive results.
When we instrumented our authorization flow with Segment, we could track user interactions before they logged in — and then retroactively associate these events with the actual users after they signed in.
This means that we can now not only monitor the three metrics mentioned above, but we can also determine how many clicks it takes for a vehicle owner to successfully authenticate with us — and segment (pun intended 😊) this data based on the user’s traits (e.g. what car they own).
Building a user-friendly API can be difficult — especially if you want to appeal to your users and their users. Thanks to Segment, we can focus on both areas in one go, and give our team the chance to measure and evaluate the things they feel are most important.
Smartcar is an API that allows mobile and web apps to access data from and send requests to cars (think “check odometer” or “unlock doors”) — across vehicle brands, hardware-free.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
Smartcar makes it fast and easy for app developers to integrate with cars. One of these developers is Spiffy — an on-demand car care app based in North Carolina. So, what is Spiffy, how do its developers use our API, and what are the technical advantages of using Smartcar?
Spiffy offers on-demand car care services such as washing, detailing, and oil change to individual vehicle owners and fleets of cars. “On-demand” means that customers can schedule appointments from an app, and that Spiffy staff will come to service the car on the spot. On top of one-time appointments, customers can book subscriptions to Spiffy’s services to get their car washed and serviced on a regular basis.
It’s actually quite simple. Spiffy uses the Smartcar API to let their car care staff do two things: locate a customer’s vehicle and — in case the customer has booked inside cleaning — unlock the vehicle doors.
Before integrating with Smartcar, Spiffy’s developers were facing two challenges:
To work around these complexities for their customers and staff, some app developers use OBD (on-board diagnostics) dongles. But integrating with those dongles — especially the kind that can locate, lock, and unlock vehicles— is an expensive and complicated process. Each model, make, and production year of cars might bring their own nuances, making the lives of developers more difficult.
With Smartcar’s standard API, you can access data and send requests from and to vehicles — across car brands, without hardware, and using only simple HTTP requests:
This is how Spiffy’s developers use the Smartcar API for their on-demand car care app.
Did we make you curious? If you’re building a similar app yourself, great! If you aren’t building an on-demand car care app, we still have good news for you: Our API permits you to integrate with much more than just on-demand car care apps. Car sharing, fleet management, mileage-based insurance, and in-car delivery are just a few examples of other apps you can build using the Smartcar platform.
Thank you, Spiffy, and have a great trip, everyone!
Smartcar is an API that allows mobile and web apps to access data from and send requests to cars (think “check odometer” or “unlock doors”) — across vehicle brands, hardware-free.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
One of the questions we get frequently asked by our current and soon-to-be users is: “How can I build an app without having access to a car?”
Until today, the answer to this question was a little complicated. In order to easily build and test your app, you needed access to a real vehicle with active credentials (i.e. an active subscription to the Tesla app, Volkswagen Car-Net app, etc.). If you didn’t have access to a car or its credentials, we exposed a “mock vehicle” that was confusing to many of our developers.
Today, we’re proud to announce that from now on, you can quickly and easily build and run your app, even without access to a real car. This is how it works:
Smartcar’s authorization flow in test mode
Doesn’t that sound like a Sunday drive? Feel free to learn more about live and test modes in our docs, or get started right away with our demo app!
Smartcar is an API that allows mobile and web apps to communicate with cars (think “check odometer” or “unlock doors”) — across vehicle brands, hardware-free.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
PS: Follow us on Instagram!
Early in the process of redesigning our developer dashboard, we came to a realization: The engineering effort needed to implement our exciting new design changes would entail more than just a few stylistic tweaks — a dilemma that many of our fellow engineers know all too well. There would be a handful of technical challenges we had to face during the redesign, especially when it came to routing.
“Oh, just move the navigation bar,” we said. “Just pull out a few parent routes here and add a few child routes there. We’ll be able to implement the entire redesign in a day — two days max, right?”
Not quite.
As the previous episode of our “What the React” series outlined, we wanted to eliminate as much friction from our developer experience as possible, starting with removing our `/apps` route. In our old dashboard, the `/apps` route was where you had to select your desired app from a list of all your applications, whenever you logged in. Thanks to the redesign, you don’t have to make that choice anymore. Instead, we make an educated guess of which app you’d like to view, based on which application you’ve most recently interacted with.
What’s more, each app in our dashboard now also contains a few nested routes of its own (think: app credentials and app settings) to organize content within that application more clearly.
To help you visualize this, here’s the original flow:
And here’s the new and improved flow:
From a user standpoint, this is great. Now you get well-organized content and spend fewer clicks getting where you need to go within our dashboard.
From an engineering standpoint, however, improving this flow was no walk in the park. Our routing needed more than just a few tweaks. Specifically, we had to:
So, before we knew it, we had a very long to-do list of routing adjustments.
Enter React Router.
One extremely neat feature of React Router is that it allows for nested routing. For us, this meant that we could define our `/apps/:id` route — which renders the Application component — at the highest level of our dashboard’s routing. Then, in the render method of Application, we could define nested routes for every possible view within an app, each with its own respective component. For example, `apps/:id/credentials` renders the Credentials component and `apps/:id/settings` renders the Settings component.
On top of this, using nested routes allows us to verify that you have navigated to a valid app ID in the Application component, before we send you to a nested route. If the app ID in the route is invalid, we won’t send you to a nested route, but will instead prompt you to choose a valid app or register a new app.
Another benefit of using nested routing with React Router is the ability to redirect differently in the nested routes and the top-level routes.
At the nested level, we can redirect you to a default view within an application:
At the top-level, we can redirect based on your authentication:
In order to do this, we wrote functional wrapper components — `<PublicRoute/>` and `<PrivateRoute/>` — around React Router’s `<Route/>`. If you are properly authenticated, these wrapper components will render the component corresponding to your route. If you aren’t properly authenticated, the wrapper components will render the specified redirect. They look something like this:
Putting this all together, we get our top-level routes — each with their own path, authentication check, component, and redirect:
Long story short, we love React Router and its straightforward solutions for nested routes and redirecting.
With its help, adding new routes and tweaking old routes was a piece of cake! We tackled our seemingly very complicated to-do list of routing changes and got to work on our redesign styling in no time.
Blockers: gone 🚫
Our redesigned developer dashboard: shipped 🚢
Smartcar is an API that allows mobile and web apps to communicate with connected cars (think “check odometer” or “unlock doors”) — across vehicle brands, hardware-free.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
PS: Follow us on Instagram!
As you might have heard, we recently redesigned the Smartcar dashboard. Our goal at Smartcar is to make building apps that communicate with cars fast and simple — and the goal of the redesign was to make the process of getting started with Smartcar much easier.
One of our redesign’s many improvements was to reduce the number of steps you have to complete between logging in and viewing your API credentials. In our old dashboard, you would have to select an application on every login. Our redesign has eliminated this unnecessary friction point, reducing the amount of time and the number of steps it takes to get started with the Smartcar API.
The task of removing an application selection page — a page where we list all of your apps and let you pick the configuration you want to see — forced us to think through the following questions:
In this blog post, we’ll explain how we tackled each of these questions using React-Router, Redux, and Redux-Sagas. In other words, what happens behind the scenes during your first few seconds on the Smartcar dashboard?
If you signed up on our old dashboard, we would force you to “Register an App” on login. As a developer, you would:
This flow presented the following friction points:
If you already created an account and registered an app, and then logged into our old dashboard, you would:
Similarly to our signup flow, this process wasn’t perfect:
Finally, if you tried to navigate to an application that you do not have access to (e.g. if you’ve bookmarked an app from another account), we would render an “Application Does Not Exist” component that lets you choose an existing application or register a new one.
In our redesigned dashboard, we simplified the login flow as follows:
We load an error page with links to your existing applications, and a button to register a new app.
Here’s how we implement this flow in our React app:
When you first log in to the dashboard, we render an InitializeApplications component. This component renders a spinner and dispatches an “INITIALIZE_APPLICATIONS” action to the redux store on mount.
Our Saga middleware intercepts the Redux action, and executes the following:
Step 2.1: Fetch applications
Step 2.2: Check size of the applications array
If the user doesn’t have any registered applications, automatically register an application.
Step 2.3: If a selected application exists (in local storage), load the selected app
If the user is logging back in on the same device, we can extract their most recently selected application. This is because we use Redux-Persist to persist elements of the user’s redux store in local storage.
Step 2.4: Otherwise, load the user’s most recently registered app
The saga
Here’s what our initialize applications saga looks like (edited for clarity):
Now, we render the application! If an application doesn’t exist in the user’s set of applications, we render an “Application Not Found” page.
Here’s what the credentials view looks like to the user:
Now you know how we decide what app to show you when you log in! Give it a try for yourself by creating an account at smartcar.com, and let us know what you think!
Smartcar is an API that allows mobile and web apps to communicate with connected cars (think “check odometer” or “unlock doors”) — across vehicle brands, no hardware needed.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
Smartcar is an API for developers who want to build apps for cars. Our team aims to make integrating apps with cars as simple and secure as possible — across vehicle brands and without the need for hardware.
Today, the Smartcar platform offers three API endpoints (location, odometer, lock/unlock doors), SDKs in six languages, and support for nine vehicle brands. Create an account today, and use our free tier of 5,000 API calls on 5 connected vehicles per month!
Looking for inspiration? Take a deep dive into the projects from the Smartcar + Hackbright Academy Connected Car Hackathon this September, and see how participating teams turned ideas to real-life apps over the course of just 48 hours.
Smartcar is a product for developers. Clearly, there was no better way for us to put our API in the hands of developers than to host a hackathon.
We were extremely lucky to partner with Hackbright Academy — one of the leading women’s coding academies in the Bay Area. Hackbright hosted us at their San Francisco location and helped us organize everything from getting the word out to potential attendees to providing food and drinks on the weekend-of.
A highlight of the event was the Tesla Model S that our team brought onsite, so that participating teams could test their apps in real time while building. All through the weekend, we could see hackers hitting the lock/unlock endpoint, and the lights flashing on the car parked on Sutter Street.
Our teams could test their apps on a Tesla Model S in real time.
Here is a quick overview of the products and services that our six teams came up with. Congrats to the winners, Team Car Magic, and the runner-ups, SafeGuard!
In just a weekend, we saw an amazing variety of use cases and ideas from our hackers. From on-demand vehicle maintenance to package delivery, we saw the breadth of possibilities when developers get in the driver’s seat to define the future of mobility. These were just six of the countless use cases that Smartcar facilitates for the automotive ecosystem every day - there are many others, from fleet management to usage-based insurance, from fuel delivery to car washing.
Did we jump-start your creative juices? Then it’s time for you to put things in motion. Simply head to developer.smartcar.com and start building! Any questions or concerns? Please don’t hesitate to email us.
PS: A big thank you goes to everyone who attended our hackathon, to our judges Alexandra (Dobs) Dobkin, Carly Robinson, Sahas Katta, and Charu Sharma, and to our sponsor, Shift.
PPS: If you missed this hackathon, watch out for more to come! Smartcar will be at SacHacks, LAHacks, and six other hackathons during the next few months.
Smartcar is an API that allows mobile and web apps to communicate with connected cars (think “check odometer” or “unlock doors”) — across vehicle brands, hardware-free.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
Our goal at Smartcar is to make it as simple and secure as possible for developers to build apps that communicate with cars. Our developer dashboard is your sidekick as you build on the Smartcar API, allowing you to create an account, register your app, and make your first request to a vehicle.
Today, we’re thrilled to announce that our developer dashboard just got a major facelift. 💅
With its sleek new exterior, the dashboard is focused on showing you exactly what you need to get started with the Smartcar API. Shedding a few of the clunkier steps that may have previously made it difficult to register and configure your application, the dashboard has been fully redesigned to give you a much friendlier developer experience (not to mention a much friendlier aesthetic experience too 😉).
More specifically, here are a few changes that might make your life (more than) a little bit easier when building with Smartcar:
We hope that these improvements make it just a bit easier for you to build on the Smartcar platform today. To us, the most exciting part of this redesign is how it paves the way for many awesome features to come.
So, keep an eye out for what’s next! Don’t hesitate to give us as much feedback and as many feature requests as your heart desires. You can email us or message us directly on Twitter. We read every message and are always more than happy to help! 💖
Smartcar is an API that allows mobile and web apps to communicate with connected cars (think “check odometer” or “unlock doors”) — across vehicle brands, no hardware needed.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
Come join Smartcar and Hackbright Academy at the Connected Car Hackathon in SF this weekend, Sept. 22–23! If you couldn’t attend our Info Session on Sept. 19, here are a few FAQs that get you ready to hit the road.
Smartcar is an API that allows apps to communicate with connected cars. We make it easy and secure for developers to integrate mobile and web apps with vehicles across car brands, without the need for hardware. On the Smartcar platform, developers can build apps for car sharing, fleet management, insurance, fuel delivery, car wash, and many more use cases.
Our API is a product for developers. Since Sahas and Sanketh Katta founded Smartcar in 2014, our team has spent the last three years building a product that hones the developer’s experience from start to finish. In addition to offering three endpoints (location, odometer, and lock/unlock doors) and supporting eight vehicle brands, we’ve been working on minimizing the time and steps it takes to have a developer make their first request with a vehicle. Developers can get started with our guide and demo app, read our docs with SDKs in six languages, build their app on our developer dashboard, and get live support from our team within minutes (thank you, Intercom!).
To truly be developer-friendly though, we wanted to put our product in the hands of developers. And let’s be honest — what better way to engage with the developer community than a hackathon? A hackathon doesn’t only spread the word and make developers familiar with Smartcar — it’s also a fantastic opportunity to bring our product to the test and get enormous amounts of user feedback within the course of a single weekend. This is why we were more than thrilled when Hackbright and Smartcar came together to host a hackathon.
We’re proud to team up with Hackbright, because we share some pretty important values. We at Smartcar believe that the automotive space shouldn’t be dominated by a few big players. We want to empower everyone from independent developers to small startups to shape the industry by creating hundreds of mobility applications for vehicle owners.
As a premier women’s coding academy, Hackbright Academy shares our commitment to a diverse ecosystem of ideas, where everyone has a voice in tech. Hackbright is changing the ratio and leveling the scales, and we at Smartcar are thrilled to play a small role in that effort.
“We know that when you’re in a coding bootcamp, it takes a lot of effort to put together your first few projects for job applications,” Zeenia from Smartcar told attendees at the info session. “What we’re here to do is to make sure that building on the Smartcar API can be that first project, and a great one at that.”
You couldn’t attend our Info Session on Sept. 19? Just keep reading, and you will find all your questions answered.
In a nutshell, Smartcar is a standard API that lets developers read vehicle data and send commands to connected cars using HTTP requests. We have SDKs in three back-end languages (Java, Node.js, Python) and three front-end languages (JavaScript, iOS, Android). Our API uses the OAuth2 authorization framework and offers support for eight car brands.
If you would like to know more about OAuth and how to get started on the Smartcar platform, feel free to check out this video:
Sanketh explains the OAuth flow and shows our audience how to get started on Smartcar.
All are welcome. This is not a women-only event.
You will be hacking on the Smartcar API and testing your code on a real Tesla Model S that our team will have onsite. We have great prizes for the winners, including free API calls, Google Home minis, and Amazon gift cards. For more information, have a look at the agenda on our Eventbrite page, familiarize yourself with our Code of Conduct, and contact our team if you have any questions.
Not at all — ticket sales won’t close until Friday at midnight! If you get your ticket at the last minute and you don’t yet have a team to work with, don’t worry. Visit our Devpost site, message our team, or just arrive early on Saturday and find a team to work with when you get there.
Did we catch your interest? Come join the adventure and sign up for the hackathon! 🚗💻💪
Smartcar is an API that allows mobile and web apps to communicate with connected cars (think “check odometer” or “unlock doors”) — across vehicle brands, no hardware needed.
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email! 🚀
We at Smartcar want to make it easy and secure for developers to integrate applications with cars. Our API allows apps to communicate with connected vehicles across car brands without the need for any additional hardware. Recently, our team overhauled the internal interface that connects our developer-facing API to each of our car manufacturer (OEM) integrations. Rather than calling the respective JavaScript functions directly, we introduced the Avro protocol. Why, you might ask?
Before switching to Avro, our internal interface posed three fundamental problems that made it hard for us to scale our product:
When trying to solve these three challenges, we decided to tackle the serialization problem first. Soon, we ended up diving head over heels into the world of serialization formats. We spent many a day researching and trying out formats like Google’s Protocol Buffers, Apache Thrift, Apache Avro, MessagePack, and others. Some of them, like MessagePack, function as serialization formats only. Others, like Avro and Protocol Buffers, act as combinations of serialization formats and Remote Procedure Call (RPC) frameworks.
Our guess was that an RPC framework could help us decouple the two sides of the interface and thus solve our second problem as well. This narrowed our choices down to the formats that came with an RPC framework: Avro, Thrift, and Protocol Buffers.
Looking more into those three formats, we found that Avro’s features would solve all three of our challenges and make our product scalable in other ways too:
Once we knew that Avro was the format to go with, it was time to start building!
By “building” I mean implementing the Avro protocol as a copy of Smartcar’s internal interface. Let’s recall the two sides of the internal interface: the developer-facing API and the OEM integrations. As both sides were written in JavaScript, we needed to use an npm library to implement the Avro protocol. By a fluke, we stumbled upon avsc — an npm library that implements Avro in pure JavaScript.
When we started implementing, we found that both creating Avro schema files and following the avsc instructions were relatively easy. We also had to face some challenges:
Once we had successfully replicated our internal interface in Avro, the last step was to replace our old interface with the new Avro interface.
Did I mention that our internal interface is on the critical path of almost every request to Smartcar? We couldn’t just go on a feature freeze and halt all work until the migration was complete. Thankfully, we were able to use some avsc features alongside some carefully designed shims — small chunks of temporary code that wrapped our old methods and made them compatible with our new interface. All this allowed developers to keep using the Smartcar API, while we integrated and deployed the new interface at the same time.
The work is done! Smartcar now has a brand new internal interface that uses Avro to connect the developer-facing side of our API with our OEM integrations. This new interface allows our team to scale the Smartcar platform more easily. It ensures that we can:
Thank you, Avro and avsc! 🚀
Smartcar is the connected car API that allows mobile and web apps to communicate with connected vehicles across brands (think “check odometer” or “unlock doors.”)
Want to take our API for a spin? Check out our docs and get started with our demo app! Have any questions or feedback? Shoot us an email!
Smartcar is a product for developers. Our platform inspires developers to build great applications with our API — everything from insurance tech apps to diagnostics apps for gearheads who want to know how their cars function. We founded Smartcar because we believed that the barriers to building apps for cars were unreasonably high. Messy car manufacturer software and expensive dongles excluded the developer community from truly taking part in the massive shifts affecting the automotive industry. Our mission has always been to lower those barriers and to make building apps for cars safe, speedy, and simple.
Communicating that to developers, though, is easier said than done. That’s why we were so glad to be presenting at the API World conference, where we would have an audience of folks ready and eager to learn more about APIs in the mobility space. What we struggled with was figuring out exactly how to convey the simplicity and potential of Smartcar in a single presentation. When we’re building our API, we try to focus on the developer experience. How quickly can a developer create an account, download one of our SDKs, and receive an access token? How easy is it for the end user to authenticate their vehicle with an application built on our platform?
We soon realized that talking about a great developer experience alone wouldn’t convince our audience. We had to show exactly why and how our product benefits our users. With that in mind, we decided to do a Smartcar live demo, taking our audience through the process of sending their first request to our API. While live demos can certainly be tricky, we truly believed that during the time we had on stage, we could show how easy it was to build an app for cars on the Smartcar platform. A live demo could show developers exactly how quickly they could build and run an app using our SDKs. As we planned our demo, we also became better test users of our own product: We became more critical of the developer flow and overhauled our dashboard design! Undaunted and buoyed by the possibility of really putting the Smartcar API out there, we couldn’t wait to perform the live demo on stage.
Getting a live demo together doesn’t just require nerves of steel (which we had to develop this past week), but a lot of advance planning. The organizers of API World kindly let us park a Tesla Model S right by the stage, so everything (from making sure the WiFi functioned perfectly to getting a Faraday bag for the car keys) had to fall into place! Our plan was to:
…all in under 10 minutes.
The key components of the Smartcar platform we wanted to highlight were security, speed, and simplicity. We focused on highlighting the three endpoints that developers could use to build their applications: odometer, location, and locking and unlocking vehicle doors. We chose to unlock the doors during the demo, because it would be the most exciting thing for the audience to see. We also chose to use our back end SDK to demonstrate how easy it was to get up and running on Smartcar.
On stage, we gave a quick Smartcar pitch, discussing all of the different kinds of use cases that Smartcar makes possible, from on-demand car washing to fleet management. We then launched into our demo with Sanketh walking the audience through each of the steps involved in building the app, starting with getting our credentials from the developer dashboard. After Sanketh had finished writing the code, one could hear the collective sharp inhale as we made our request to unlock the car. In just a second, the Tesla headlights flashed and the doors unlocked, delighting the crowd.
Don’t miss Sanketh’s blinding grin and the quietly whispered “Yes!” from me.
The truth is, when planning for any live demo, the devil is always in the details, from having someone proofread your code, to having at least three back-up jokes in case something goes wrong. Our favorite: “My friend told me the range of this Tesla, and I was like ‘Watt?!’”
Did our live demo capture your imagination? Come to our Smartcar + Hackbright Hackathon next weekend and see what you can build!
In mid-August, our team headed up to San Francisco to give engineers in the Bay Area an opportunity to peek under the hood of the Smartcar developer experience. We wanted to give everyone in attendance a clear look into what we’ve been building recently and how they might start using the Smartcar API themselves.
One of the challenges we face working on Smartcar day-to-day is understanding how developers who are completely new to our platform interact with Smartcar: how do they expect the process to work, what do they think is missing, where do they get stuck along the way? In other words, how can we make it easier to get off the ground with Smartcar?
Of course, we think about these things at Smartcar every day, but what might we learn if we were able to fully take a step back and remove ourselves from the product we’ve created? What elements of the developer experience might we be making assumptions about just because we see them so often internally?
So, back to the event. After Sahas and Sanketh Katta — our CEO and CTO — explained the Smartcar mission and gave a live demo showing how we connect to vehicles, we shifted gears to what may seem like a not-so-common tech meetup activity.
Breaking into small focus groups, we asked the audience to go through the process of getting started with Smartcar step by step: visiting our homepage, making an account, and running our demo application. The attendees put themselves in the driver’s seat, getting into the mindset of developers who want to build applications with our API. The Smartcar crew took a back seat, trying to influence the audience as little as possible during a small-group brainstorming session.
We kept some critical questions at the center of the discussion. We wanted to be able to guide the conversation, but we didn’t want to direct our audience’s attention away from what it would naturally migrate towards. Here are a few examples of questions we came up with:
With a fresh set of eyes in the room, we quickly dove into an in-depth conversation about the ideal developer experience of an API-driven product.
In no time, post-it notes were flying through the room and onto the walls. They were filled with potential features that could exponentially improve a developer’s experience, roadblocks that might come up along the way, and essentially everything in between. When we took a step back and looked at what had been uncovered, we couldn’t have been more excited to get back to work, putting the pedal to the metal towards prioritizing and developing the features we had discussed.
If there’s anything we learned from our Under the Hood event — and trust us, we learned a lot — it’s to know (and listen to!) our audience. And we can’t say it enough: we loved getting to better know our audience of engineers, better understand how they work with APIs, and better iterate on our product so that they have the best possible experience moving forward.
Finally, a huge thanks to NEA for having us and to everyone who attended!
PS: Interested in giving us your feedback or participating in a future workshop? Give us a shout at hello@smartcar.com!
Smartcar is the connected car API that allows mobile and web apps to communicate with connected vehicles across brands (think “check odometer” or “unlock doors.”)
Want to take our API for a spin? Check out our docs and get started with our demo app!
Our first rendition of “What the React?” has arrived! Today, we’re going to dive into how we handle side effects in our React apps at Smartcar.
When we first started designing our developer dashboard and aligned on using Redux for state management, we faced the question many developers face when building React apps: where do we put the side effects?
Side effects are basically anything that affects something outside of the scope of the current function that’s being executed. In our dashboard, this includes:
In the context of our app, this looks like:
Well, not in reducers.
Reducers — functions that we use to update our app’s state given its current state and an action — are pure functions. They cannot contain side effects like making API calls to our backend service.
So, where do we put the three side effects listed above when a REGISTER_APPLICATION event is dispatched to our Redux store?
When thinking about side effects in React apps, we thought about the following constraints:
We looked around for what was popular with the React community and found two options that could hit our criteria: Thunks and Sagas.
The first option we looked into was Thunks. Thunks transform action creators so that they can return functions (rather than JSON objects representing actions). We can then use these functions to make API requests and trigger dispatch calls to our redux store.
The benefit of using Thunks is that they are lightweight and easy to integrate into a React-Redux application. However, Thunks require us to mock our APIs to test.
This complicates testing — and makes it a lot less fun.
Now for Sagas!
There are a few things that make Sagas different. Most importantly, they’re heavier than Thunks (we add a middleware layer to our React-Redux app); but, they also have a whole suite of benefits that make it incredibly easy to manage side effects in our React apps.
Here are a few of the benefits:
Sagas are generator functions that listen for Redux actions. When an action is dispatched to the redux store, a corresponding Saga will execute. This allows us to pair a Saga with a particular redux action.
What made Sagas delightful for us to use was its concept of Effects. An Effect contains an instruction for the Saga middleware but does not perform any execution.
Inside a Saga, we yield plain JavaScript objects (Effects). This eliminates the need for us to mock functions to test Redux Sagas (which leads to better tests!).
We use Effect creators (provided by the Redux-Saga API), functions that create these JavaScript objects, to generate our Effects. Some of the ones we use at Smartcar include:
When the middleware retrieves an Effect, the Saga is paused until the event is fulfilled.
Using Effects inside Sagas make them incredibly easy to test. A Saga function does not make any external API calls — it yields Effects which are executed by the Saga middleware. Since these Effects are plain JavaScript objects, we can test Sagas by making sure a task yields a call with the right function and the right arguments.
This is what a Saga to register an application looks like:
As you can see, we’ve placed all side effects for the REGISTER_APPLICATION action into a single place! And now for the test:
As we noted earlier, we don’t have to mock any of our API calls — in each line, we just check if the Effect object matches what we expect it to be.
So, to sum up what we’ve learned:
We’ll see you next time 😉
Smartcar is the connected car API that allows mobile and web apps to communicate with connected vehicles across brands (think “check odometer” or “lock doors”).
Want to take our API for a spin? Check out our docs and demo app.
One of the questions we often ask when using other web apps is “How was this built?” (i.e. “What the React?”) — everything from how the stylesheets are structured to how our clicks are tracked as we use the app.
To pay homage to the hundreds of React guides we’ve consumed, we thought we’d share a bit about how we build and maintain our own React apps. Over the next few weeks, we’ll dive into how we built our developer dashboard and tackle questions including:
Our goal is to give you a birds-eye view of how we think about React apps — so you can either (a) use our series as inspiration for your own web apps or (b) point out how you would have tackled a similar situation (both of which we’d consider to be positive outcomes of this series!).
Have a question you’d like us to tackle in a blog post? Let us know!
And finally, none of these posts will subtly try to get you to use the Smarcar API (we promise). But! Let’s say you wanted to know what our developer dashboard is used for and happened to have 5 minutes to spare… you could hypothetically run our demo app and check out the dashboard in the process 😉
To be continued!
Smartcar is the connected car API that allows mobile and web apps to communicate with connected vehicles across brands (think “check odometer” or “lock doors”).
Want to take our API for a spin? Check out our docs and demo app.
Welcome to Smartcar’s office hour series, "Under the Hood"!
Over the past three years, we’ve worked to create the connected car API that allows developers to communicate with vehicles through simple HTTP ‘get’ and ‘post’ commands. We would love for you to stop by to try out our tech (and have lunch on us)!
Today, ~60% of newly manufactured cars contain built-in telematics (e.g. 4G LTE, 3G) making it possible to access real-time vehicle data. But, developers hoping to build for these vehicles face the challenge of non-existent API documentation. That’s about to change — with Smartcar, you can start creating applications within just minutes.
With our API, developers can access multiple vehicle brands in a single engineering effort without hardware additions. We support seven car brands and three endpoints: location, odometer, and lock/unlock. Today developers including on-demand car washing, fleet management, pay-per-mile insurance, and more are using Smartcar’s APIs.
Smartcar puts developers first — we want to hear from you, get your feedback, and help you test drive our software. Whether you’re a professional in the automotive space, or a developer just getting started, we want to make using the Smartcar API easier for you.
At Under the Hood, you’ll have the chance to:
Signing up is easy. Just get in touch and tell us about yourself (name, coding language, LinkedIn) to make sure we can match you with the right team member at lunch!
PS: Bring your computer on your visit so you can give our APIs a try!
Today, we’re bringing you two exciting updates to our developer dashboard: the ability to register multiple apps and a simplified app view that makes it easier to get started with Smartcar.
Read on for more details, or launch the dashboard to explore the improvements we’ve made! 🎉
Here’s what’s new:
You can now create and manage multiple application configurations in our dashboard. Simple select your user name from the top menu bar and select the app you want to edit or add redirect URIs to.
From redirect URIs to our demo app, our dashboard lets you view everything you need to integrate with Smartcar in one place.
Now it's time to try it out for yourself!
If you have feature requests or feedback (positive, negative, or anything in between!), you can email us or message us directly on Twitter. We read every message and are always (more than) happy to help!
Create a Smartcar developer account and start building apps that communicate with connected cars!
Since 2015, we’ve been working on a car API that lets developers communicate with vehicles (think “lock doors,” or “check odometer”) from web and mobile applications.
This idea came from the following observations and beliefs:
We invited developers to use our car API platform and worked closely with this community to fully understand their needs. Here’s what we built (and learned) in the initial months…
We’re focused on creating a developer experience that makes it easy to get up and running with Smartcar.
Today, we’re opening our platform to developers everywhere. We can’t wait to see what you build on Smartcar — and our team is here to help every step of the way.
Create an account, try our getting started guide, and let us know what you think. 🚀
Today, we’re thrilled to announce Smartcar has raised a $10 million round of Series A financing led by New Enterprise Associates (NEA) with participation from Andreessen Horowitz (a16z). This follows a $2 million round of seed financing from a16z, which brings our total financing raised to-date to $12 million. We are also excited to welcome Forest Baskett from NEA and William Krause from a16z to the Smartcar Board of Directors.
We founded Smartcar in 2015 after we became frustrated trying to build a mobile app that would communicate with vehicles (think “check odometer” or “unlock doors”). While many cars were already internet-connected, we couldn’t find a way to integrate with them. Cars didn’t have documented APIs and each car manufacturer had proprietary cloud infrastructure. Some companies worked around these issues by using aftermarket hardware (like OBD dongles), but these devices came with severe limitations and a prohibitive upfront cost.
Smartcar is a connected car platform that lets you read vehicle data and send commands to vehicles of any brand using HTTP requests in a single engineering effort. We take advantage of embedded telematics hardware already present in vehicles, maintain a suite of SDKs, and have comprehensive API docs to help you get started.
Our objective at Smartcar is simple: we want to make it easy and secure for developers to build apps that communicate with vehicles.
Over the past three years, we’ve already enabled many companies to build new experiences for their customers. From car sharing and fleet management services to smart parking and insurance, our partners are pioneering a world of truly connected automobility.
Smartcar is a lean team with a focused product; we chose to raise more financing as we began to see traction and excitement from early customers on our platform. As the team grows, we will build out our developer experience, iterate on our core platform, and support more vehicle brands.
While we’re very excited about what lies ahead, we wouldn’t be where we are today without the support of our first OEM partners (BMW and Hyundai), investors, team, and early adopters of the Smartcar platform. To everyone who’s helped us get this far — thank you. We still have a long way to go towards a future where millions of apps communicate seamlessly with all vehicles on the road. Today, we’re grateful to be one step closer to making this future a reality.
Cheers,
Sahas and Sanketh
Co-Founders, Smartcar
P.S.: We're hiring! 🚀
We are excited to announce the Smartcar connected car platform is opening up to developers looking to bring apps and services to Hyundai vehicle owners. Hyundai Motor America has partnered with Smartcar to let their customers use new digital experiences built on our platform with their vehicles starting early 2018.
Today, at Automobility LA, we are showcasing one of the very first developers using Smartcar’s platform. Washos is a mobility service which lets Hyundai owners order a car wash in just a few clicks from a mobile app. Using Smartcar API platform, Washos can now locate a customer’s Hyundai vehicle for a wash and use a temporary digital key to unlock the doors to clean the interior.
“With the single integration of Smartcar into the [Hyundai] Blue Link system, we’re able to give customers access to a vast range of new services. And we can do it more quickly — because there’s no need to do a separate integration of every new service.” said Manish Mehrotra, Director of Digital Business Planning and Connected Operations at Hyundai Motor America.
Over the coming months, Smartcar will announce a wide variety of developers using our platform ranging from car-sharing services, to on-demand fuel delivery, in-trunk deliveries, and a few surprises for Hyundai owners as part of our joint pilot in California.
Smartcar’s mission is to empower developers to easily build apps which work with vehicles of any make or model in a single development effort. With our friendly API documentation, SDKs for popular programming languages, and enterprise-grade security, Smartcar scales to accommodate developers ranging from emerging startups to large fleets and insurance companies. These businesses can now focus on creating great experiences for their customers without worrying about how to communicate with vehicles.
Starting on June 30th, developers can add Smartcar APIs into their app or website with a few lines of code to connect to data from BMW vehicles.
Smartcar has partnered with BMW Group to enable developers to access select data from vehicles which have built-in SIM cards for data connectivity. Initially data from BMW vehicles in Germany can be accessed via Smartcar, the rollout in other countries will follow gradually.
The wide range of applications includes insurance, expense tracking, smart home, gas stations, and mobility services like car sharing and car wash.
Smartcar’s platform enables developers to access data from vehicles of multiple brands through a standard API and a single development effort. Developers looking to add connected car APIs into their app or website can save time by using Smartcar.
If you are interested, sign up for early access. If you have any questions, you can reach us at hello@smartcar.com.