Launched as an open-source project at ZendCon last October, Apigility is a simple, standard interface designed for building and maintaining high-quality APIs. Apigility eliminates the challenges traditionally associated with designing and implementing APIs and supports versioning, validation, error handling, documentation and more.
"We have been astonished and thrilled by the thousands of developers who have already adopted Apigility," Matthew Weier O'Phinney, project leader for Apigility, said in a statement. "These early users have validated that Apigility simplifies API creation, enabling them to innovate and create new value for their companies."
With Apigility 1.0, developers can create new APIs with both RPC and REST services, providing a full spectrum of Web services. Developers also can document their API, providing a reference to end-user consumers. In addition, authorization and authentication can be added to APIs, allowing credentials to be assigned to specific users.
An API-based architecture is integral to future-proofing applications, allowing the same APIs to be used across multiple form factors and mobile device types—and reused in different applications throughout a company's technology ecosystem, Zend officials said. With the right set of APIs, companies can support Web and mobile apps whose data and services are provided by multiple back-end systems and more easily provide service to multiple front-end devices and form factors.
"API first has become the new mantra for Web development, due to the variety of devices and form factors accessing the Web today," Zeev Suraski, CTO and co-founder of Zend, said in a statement.
"Achieving company-wide agility is at the top of every business' must-do list, as it is key to seizing strategic market opportunities," said Andi Gutmans, CEO and co-founder of Zend, also in a statement. "Achieving agility as a company has two sides to it—on the one hand, developing in a more rapid and agile manner—and here is where APIs have a pivotal importance. But there is also the side of moving that application more rapidly from development into production—and Zend believes that both sides need to be given equal weight.
"Adopting an API-based architecture both helps speed initial development of new apps but also makes those components more usable and reusable, thus helping speed future development efforts, too. However the other half of the equation is to invest in the capability to continuously deliver those new apps to market," he continued.
With its error-handling support, when an error occurs on the server side, Apigility reports the response involved and the nature of the problem to the API consumer. This reporting enables programmers to easily parse and understand what happened. The API builder also provides tools for ensuring that all data coming into an API is valid. If not, Apigility sends a single response, in a predictable format, reporting all errors. API consumers know up-front when they did something wrong.
Meanwhile, Apigility will verify whether each client is capable of viewing an application, and whether data submitted to an API is of an acceptable content type. If not, Apigility sends back a response indicating that the API cannot provide a representation, or cannot understand the data.
In addition, Apigility supports multiple versions of the same API and enables developers to support both old and up-to-date clients at the same time. The user interface allows developers to manage all versions of the API from one centralized place, and provision new versions as needed.
Developers can use Apigility to build APIs that enable mobile apps, developer communities and any other consumer-controlled access to applications. Apigility automates some of the API-creation process, enabling developers to evolve—including adding, updating or removing—their APIs as requirements change. Developers also can tailor APIs to specifications needed to address business requirements. Apigility allows any PHP-based business logic to be API-enabled, regardless of how it is written and what framework it uses, if any.