In a rapidly evolving digital landscape, controlling your own data and infrastructure is no longer a luxury – it's a necessity. For too long, the promise of decentralized applications has been constrained by the complexities of deployment and management. What if you could orchestrate your Holochain applications with the same precision and automation you expect from any modern platform, all while upholding the principles of digital sovereignty and user agency?
At Holo, we believe that power belongs with the people who build and use the web. That's why we're thrilled to unveil the Holo Public API: your gateway to programmatically deploy, manage, and scale your Holochain workloads, bringing a new level of automation and flexibility to your hApps.
Ready to take control and build the future of the internet? Get started with Holo today.
The Challenge: Centralized Bottlenecks in a Decentralized World
For developers and organizations committed to decentralized solutions, a persistent challenge has been the lack of robust, programmatic tools for managing their own deployments. You want to focus on building groundbreaking applications, not wrestling with the infrastructure. You need your applications to scale effortlessly, integrate into your existing development workflows, and offer reliable service – all without ceding control to centralized big tech.
This is precisely the problem the Holo Public API solves. It’s designed not for you to simply send or pull data from Holo as if it were some traditional SaaS offering. Instead, it empowers you, the application owner and developer, with direct command over your own Holochain applications from development, through production, and into global scale.
With this API, you can now:
- Automate CI/CD and Deployment Monitoring: Seamlessly integrate your Holo deployment processes directly into your continuous integration and continuous deployment workflows. Imagine programmatic monitoring of your live hApps, providing real-time insights and rapid response capabilities.
- Scale Deployments to Meet Dynamic Demand: Programmatically adjust the resources allocated to your decentralized applications. Effortlessly handle fluctuating user traffic and growth, ensuring your dApps remain performant and accessible to your community.
- Provide Community-Powered, Cloud Services: Build and offer innovative services where the underlying infrastructure is truly decentralized and resilient, leveraging the unique benefits of Holochain while maintaining orchestration over your deployments for a consistent user experience.
This focus on programmatic control elevates your capabilities, empowering businesses and developers to drive innovation and agility in the world of decentralized applications. Whether you're a budding entrepreneur, a rapidly expanding enterprise, or a seasoned developer, Holo’s Public API provides the ideal platform to build and manage your decentralized applications with confidence.
Getting Started: Your Secure Path to Decentralized Orchestration
To begin leveraging the power of the Holo Public API, you'll need an API key. This key acts as your secure credential, much like a digital handshake with the Holo platform.
Here’s how to obtain yours:
- Create a Holo Cloud Console Account: Begin by navigating to Holo's refreshed Cloud Console website and registering for a new account.
- Verify Your Email Address: For security, you’ll be prompted to verify your email. Follow the instructions to complete this crucial activation step.
- Log In and Generate Your API Key: Once securely logged into the Cloud Console, you will be able to effortlessly create your unique API key.
This API key then serves as the foundation for obtaining the necessary access and refresh tokens, ensuring secure and continuous programmatic interaction with your deployments.
Core Capabilities: Unleash Your Decentralized Vision
The Holo Public API offers powerful, well-defined capabilities designed to put you firmly in command of your decentralized deployments:
Orchestrate Your Workloads
The true essence of the API lies in its ability to programmatically manage your Holochain workloads. This allows you to:
- Deploy New Applications: Seamlessly initiate the deployment of your hApps onto the Holo network. The API currently supports both "cloud node" and "web bridge" workload types, offering flexibility for connecting your distributed systems with the traditional web while maintaining true user ownership.
- Manage Existing Deployments: Gain comprehensive oversight and control over your deployed hApps, tracking their status and managing their lifecycle with precision.
- Scale and Optimize: Dynamically provision resources for your deployments, preparing them for varying user demands and ensuring consistent, reliable performance for your community.
When deploying a cloud node, you'll simply need your hApp binary, a network seed (if applicable), and the desired Holochain version. Initial installations for new cloud nodes can take up to 30 minutes to deploy.
Manage Your Application Assets (Blobs)
The API provides a streamlined mechanism to upload and manage the essential binary files—or "blobs"—that constitute your decentralized applications.
- What are Blobs? Think of blobs as the fundamental, compiled building blocks of your applications—the essential code, configuration files, or any other necessary binary data that fuels your hApps. When you upload a blob, the system generates a unique hash, acting as a digital fingerprint that allows you to reliably reference that specific file in your deployments.
- Streamlined Uploads: Easily upload these crucial assets, preparing them for immediate deployment onto the Holo network.
- Future Potential for Decentralized Storage: Beyond immediate application deployment, the underlying blob storage capabilities lay the critical groundwork for supporting robust decentralized file storage solutions and services in the future, further extending the reach of digital sovereignty.
Secure and Controlled Access
Security is paramount in safeguarding your digital autonomy. The API employs a robust authentication system to ensure that only authorized entities can manage your precious deployments.
- Granular Permissions: Define precise permissions for each API key you create, ensuring that different tools or services only have the exact access they need (e.g., specific permissions for creating new workloads versus only viewing existing ones). This fine-grained control is key to your security; notably, you cannot create an API key with more permissions than your own.
- Authentication Tokens: Once authenticated with your API key, you'll receive short-lived access tokens (typically around 5 minutes) for each request, along with long-lived refresh tokens (defaulting to 30 days) to maintain continuous, seamless access without the need for frequent re-logging in.
Designed for Developers, Built for Decentralization
The Holo Public API is thoughtfully built with developers in mind, offering a well-structured, intuitive, and versioned interface for seamless integration into your existing toolchains. It is robustly implemented in Rust and leverages a MongoDB instance for reliable data management.
- Comprehensive Documentation: Explore our public API documentation portal, your definitive resource to quickly understand how to integrate and utilize all the functionalities for your decentralized projects: https://api.dev.holo.host/scalar.
- Future Client Bindings: To further simplify integration and accelerate your development, we plan to provide automatically generated client-side language bindings in the future.
Got Questions? Get in touch with us at [email protected].