What is an open internet service?
An open internet service is a technology deployed to the Internet Computer that is “ownerless” — meaning the code itself is deployed to the very fabric of the internet, allowing the service to operate autonomously based on user support. When a developer wishes to create an “Open Internet Service”, they sign over control of its Canister smart contracts to tokenized public governance Canisters that thereafter take responsibility for upgrades and configuration.
These proposals are then governed by the NNS, enabling users of the application or service to vote and make decisions about its code, policies, and functions. An open internet service can mark shared functions as “permanent” (i.e. APIs can be marked as permanent). In such cases, Canister upgrades cannot overwrite the shared functions, and if an upgrade degrades the functionality it provides, constructively revoking the API, the Internet Computer’s own governance system can make progressive modifications to the governance system of the internet service until such time that the expected functionality is restored.
The purpose of permanent APIs is to allow developers to build services that rely on data or functionality supplied by other services without platform risk. Platform risk is a problem created by dependence on a public or private technology company’s API or data for the success of one’s product. For example, when LinkedIn revoked access to its API from thousands of companies that depended on it, they lost their entire data and authentication source overnight. Open internet services operate without an owner, supporting continuous access to said “code” by entrepreneurs who depend on it without fear of being cut off.