The California Electric Vehicle Infrastructure Project (CALeVIP) offers incentives for the purchase and installation of electric vehicle charging infrastructure at publicly accessible sites throughout California. It is administered by our partners at the Center for Sustainable Energy (CSE) and funded by the California Energy Commission. The program connects a national network of site hosts, equipment providers, and regional program administrators to deploy and maintain an electric vehicle charging infrastructure throughout the state. Drupal provides the beautiful, powerful, and flexible content management tools they depend on. And Salesforce provides robust reporting, data management, and workflow tools to manage their application pipeline. Decentralization of the program has helped them scale up quickly.
Regional programs are tailored to the needs of their administrators and the constraints of enabling legislation. Each one has its own unique requirements, as well as its own Salesforce org. Salesforce administrators thus have flexibility to tweak their orgs as needed. But on the Drupal side, applicants want a consolidated dashboard where they can manage all their projects in one place. How can we connect one Drupal site with all these different Salesforce orgs? And how can we do it in a way that's maintainable, scalable, and eventually self-service for Drupal administrators?
Message Agency helped architect a solution that allows rapid deployment of new incentive programs in different regions across the state. First, we made it easy for site administrators to spin up new programs within the site without our intervention. Then, we developed an application platform that provides a default process, business logic, and form which can also be customized, if needed, for any incentive program. Using this platform approach, we cut the time and cost for CSE to release a web-based platform to support a new program by two-thirds, on average.
The Salesforce Suite, developed and maintained by Message Agency, provides a host of powerful features out of the box that helped to make this platform happen. The authentication, mapping UI, and synchronization tools can get a complex Drupal-Salesforce integration project up and running with minimal custom programming. And while the Salesforce Suite supports one connection out of the box, its extensibility allows us to inject our own credentials to make it happen.
Implementing authentication as its own service means that we can utilize any number of disparate Salesforce instances just by instantiating a new REST client. Separating the concern of authentication from other APIs leads to a simpler interface for developers, allowing us to focus on data APIs.
Looking to the future, this architecture allows us to give more control to the site administrators and builders. By having a dedicated authentication service we can create a configuration form where site admins can get a new project up and running quickly and efficiently.