Skip to main content.
Developer Newsletter 10 min read

Build On DIMO - July 2024

July 23, 2024

As alluded to in the DIMO July Town Hall, more powerful apps are being built on the DIMO Network. In this edition of Build on DIMO, we spoke to a builder to share his experience working with our developer platform. We’re also proudly announcing DIMO as a sponsor of EthOnline 2024, a global online hackathon designed to kickstart our ecosystem growth.

Q: Can you share a bit about your background and experience?

I studied Symbolic Systems at Stanford University, which gave me a strong foundation in programming. My career has primarily been in product roles, but over the past couple of years, I’ve transitioned into full-stack engineering and the web3 tech stack through self-learning. I consider myself a scrappy, product-minded hacker with a knack for integrating various technologies ✌️😎

Q: How did you stumble upon DIMO?

I've always had an interest in crypto and was keen on exploring real-world applications beyond just trading. This curiosity led me to DePIN, where I discovered Helium and DIMO a few years ago. Despite lacking experience in the automobile or mobility industries, I found DIMO's vision intriguing and saw its potential.

Q: What application did you develop using the DIMO API, and what does it do?

I developed the Vehicle Usage Report, which is akin to Apple Health but for cars. This app leverages DIMO data to unlock insights for car owners. Vehicles are probably the 2nd most valuable assets one would own in their lives behind real estate, so getting a self-served health check made a lot of sense to me as a vehicle owner.

The app currently supports Tesla for its robust data availability but aspires to aggregate and unify data from multiple OEMs, fully-utilizing the DIMO protocol 💡

Q: How would you rate the ease of integrating the DIMO API on a scale of 1 to 5?

I'd rate it a solid 4️⃣. Even without extensive development experience on API integration, I got up-to-speed with the DIMO API within a few days. The availability of the SDK was a significant improvement during my build process, as it simplifies the process and exemplifies a good developer experience. I would still highly recommend reading through the documentation so you can understand what the SDK does under the hood.

Q: Were there any specific resources or tools that proved particularly helpful during the integration? What could have made the process smoother?

Web3 can be quite unintuitive and clunky for those unfamiliar with it. Abstracting web3 complexities would improve the experience. Additionally, requiring users to sign in and perform transactions with their wallet is cumbersome. Sponsored transactions could simplify this process for non-web3 users.

Q: Did you encounter any major challenges during development? How did you overcome them?

The main challenge was navigating the different paths and figuring out the right one through trial and error. The authentication process was particularly tricky, I had implemented a wallet integration, pivoted to login to DIMO, before realizing I had to use wallet integration to set privileges for end-users. Deciding what your app would need upfront and sticking to the game plan is highly recommended.

Q: How did the data quality and availability from the DIMO API influence your app's performance?

Understanding which vehicles had available data was also challenging. In the near future, I aim to offer more dynamic modules for users regardless of vehicle types and makes. As far as I know, DIMO is also working on improving data visibility for developers.

Q: How does your experience with the DIMO API compare to other APIs you've used?

This was my first time using GraphQL so I was a bit hesitant at first. However, I quickly learned to appreciate the flexibility and customization GraphQL has to offer. It allowed me to fetch exactly what I was looking for, and most recently the alias feature has been really cool to implement - everything adds up to easier development for the builder.

Q: How would you evaluate the support and documentation provided by DIMO?

Developer support was exceptional, making the experience smooth and straightforward. I could easily ask questions and receive guidance, which was crucial as it helped me from concept to launch. The main difficulty was keeping up with deprecated features and updates.

Q: What advice would you give to other developers working with the DIMO API?

First, clearly define your project scope and plan ahead. Understanding the developer journey and having foresight is crucial to eliminate throwaway work. Thoroughly read the documentation and SDKs as you progress, you should find everything you need. DIMO continually adds new features, so engage with DevRel, voice your opinions, and leverage their support to simplify your development process 🗣️

Ready, set, build! Come join DIMO at the end of summer for some fun building the ultimate developer experience, as we partake as one of many hosts in EthOnline 2024. DIMO-sponsored prizes will be going out to those that can build using our API, and those disrupting the mobility space with the coolest ideas.

For more information, visit our EthOnline prize page or reach out to us in Discord.

Once again, the DIMO Engineering team strikes again with rapid updates, including many new improvements to our developer API:

GraphQL Aliases

For those that interact with our GraphQL APIs, alias is something that’s now live. Aliases are powerful means and time-savers to construct your GraphQL queries. It is as easy as 1-2-3, simply set powertrainTransmissionTravelledDistance to something such as odometer, developers would be able to skip data formatting and get right down to business.

Telemetry API Enhancements

A brand new signal to help you monitor engine oil levels with greater accuracy, we invite you to come build the Jiffy Lube matchmaker using DIMO data 😂. Plus, all query aggregations now support first and last, giving you more flexibility to see the data in any given interval.

We’ve also made several key improvements to ensure consistency and clarity, this includes renaming signals to make them more self-explanatory. Percentage conversions are now simplified to return as percentages (0 to 100) instead of decimals (0 to 1). This change will help you quickly assess values at a glance, making it more intuitive to analyze data.

Reducing redundancies by removing unnecessary signals, as they are covered in the Identity API. This cleanup helps enhance performance and reduce clutterness, allowing developers to focus on the critical signals.

Python SDK

Remember this poll result?

Our community team is putting in the legwork for the Python SDK, which will unlock all the Python developers out there! Be ready when pip install dimo-python-sdk goes live by subscribing to this newsletter 🎉


In the Works

  • Developer Console: Continue to resolve bugs, end-to-end testing, and getting your developer license onchain.

  • Wallet as a Service

  • Ford Pro integration and other data enrichment initiatives

  • DIMO Event Service

Be Part of the Community

Join the DIMO community and voice yourself in the #built-on-dimo channel in Discord.

Written by: James Li Head of Developer Relations

James Li is on the DIMO Engineering team. Before DIMO, he spent 10+ years leading integration efforts for a last-mile delivery platform, a customer engagement platform for utilities, and defect inspection systems for semiconductors. James enjoys working with cutting-edge technology and working alongside creative thinkers.

Continue reading

Connect my car

Select your car make and year

We'll use this to tell you how you can connect your car to DIMO.