What is Apigee

Apigee is an API gateway management framework owned by google which helps in exchanging data from in between different cloud applications and services. Many services and sites available to the users are delivered through RESTful APIs, API gateways act as a medium to connect these sites and services with data and feeds and proper communication capabilities. In simple words, Apigee is a tool to manage API gateway for developing, deploying and producing user friendly apps.

Features of Apigee

Apigee can be bought as a subscription model where API management platform is available to be used. Some of the features of this product are:

  • It can connect the present day user interface with traditional data stores.
  • It can automate documentation of APIs and software development kits.
  • It supports both the hybrid cloud and multi-cloud.
  • It can connect with analytics and machine learning to produce valuable insights.
  • It also provides various tools to monitor and troubleshoot API along with security and optimization.
  • It can be scalable according to the requirements.

Basic terminology of Apigee

Some of the common terms used in Apigee having a unique meaning is discussed in detail below

  • API

API is an 'application programming interface' that makes it simple for one application to extend its capabilities by making use of features and data from other applications. Keeping the stable and simple entry points to application data and logic, developers can easily access and reprocess application logic used in APIs made by other developers. In 'Web APIs', logic is available over the network so that anyone can use it. As APIs are sensitive to the modifications, a 'contract' is implied to provide an assurance that the API will change as expected over a period of time.

  • API basepath and resources

An API has two basic elements consisting of a base path and a set of API resources. APIs can simply be understood as multiple URIs sharing a common base path. For managing these APIs, Apigee amends these URIs with display names and descriptions. Apigee Edge lets you amend policies and code to URIs so that you can manage and control the APIs much better.

  • API Proxy

An API proxy is executed as, policies, a set of configuration files and code that depends on the resources offered by Apigee Edge. API proxies are produced and configured by Apigee Edge management UI. They can also be implemented locally in the text editor.

  • API product

API product is a collection of API resources (URIs) along with a quota, or 'service plan', available to app developers at the time of design. API products can be combined in API packages for monetization.

  • App

The term 'app' is an abbreviation of 'application' often referred to as mobile applications that uses APIs. Apps can be developed in many programming languages by using various platforms and technologies.

  • Environment

Environment is the execution framework API processes and proxies. API proxy must be deployed to an environment before exposing them over a network. Generally two environments are provisioned in organizations 'test' and 'prod'.

  • Organization

Subscribe to our youtube channel to get new updates..!

All the objects contained in an Apigee account including API proxies, API packages, API products, developers and apps are referred to as organization. There must be a user account for each organization if you are a member in it.

  • Policy

Policy is a processing step implemented as an atomic and reusable logic unit present in an API proxy processing flow. Policy-based functionality can convert message formats, request for remote services for more information, impose access control, protect sensitive content from external users, cache frequently used data to improve performance, examine potential threats, etc.

  • API resource path

API resource path is a uniform resource identifier (URI) that recognizes the network path to an available resource.

  • Version

It is used to refer to the developer-facing API interface.

For example, APIinterfaceversion.com/services/v3, or api.enterpriseversion.apigee.com/v1.

There is one difference between version and revision. While API interfaces have versions, API proxies have revisions.

  • Revision

It is a version-controlled numbered package of policies and configuration combined into an API Proxy.

API development lifecycle

Each enterprise has its own software development lifecycle (SDLC). It is important to align and synchronize API proxy deployment with the software development processes used in documenting, developing, testing and executing the applications.

Apigee with API services consist of tools and RESTful APIs that help in integrating the API proxy deployment and management into an enterprise’s software development life cycle. RESTful API is most commonly used to write scripts or code that can deploy API proxies with the use of programs, or to switch API proxies from one environment to another in an automated process where many other applications are deployed and shifted. API Services has nothing to do with the processes used in an organization’s SDLC. It just makes atomic functions available to the users to automate and improve API development lifecycle.

Development Tools

Service providers are aligned towards developing the APIs that benefits the client apps. For developing, deploying and maintaining these API proxies and products, either UI can be used or HTTP requests can be made for accessing the RESTful services as discussed below.

Use the UI

The UIs in Apigee are browser-based tools used to make, configure and manage API proxies and API products such as Edge, Apigee hybrid and private cloud. The UIs can be accessed by the access URL available over the network.

Apigee UIs can be used:

  • To create API proxies by modifying the code and servicing the requests through proxies.
  • To manage development of APIs and developer apps.
  • To implement JavaScript and Node.js apps.
  • To configure test and prod environments.
  • To create API products after combining many proxies to serve client requests.

Use the Apigee APIs

Apigee Edge APIs can be used to manage API resources in Edge. The API also provides the features that are not available over the net and are not exposed by the UI.

The API endpoints take the configuration data information and request the user to enter the authentication information like username and password, to access those APIs.  According to RESTful principles, HTTP GET, POST, PUT, and DELETE methods can be called upon on any of the API resources.

Characteristics of API proxy development

  • Entry points of one API can use the features of another API- API proxies can be implemented to produce APIs. API proxies can be implemented by configuring the API logic after getting a request from the client code. API proxies can be made available to the clients by setting the endpoints consisting of a URL with resource paths, body content, an HTTP verb, etc.
  • Flows are used to organize the sequence of API proxy logic- Data flows in API proxies through the conditional logic. Flows are the sequence of steps that guide the processing path of API proxies
  • The state of APIs can be known by the flow variables produced by API proxies- An API proxy can access variables that denotes the execution state. These variables can be accessed from the XML that configures API policies and proxies. 
  • API proxies execute the code based on conditions similarly like most of the programming languages do- These conditions generally depend on the state of the API proxy which can be accessed by flow variables. For instance, a conditional look upon can be done for a user agent so that request can be processed according to that condition.
  • Policies are used to implement most of the logic in API proxies- A policy is a component of an Apigee Edge that holds the logic for the functioning of APIs, such as traffic management and security. Policies can be configured using XML that forms properties for the primary logic used. Policies can be arranged in a sequence of steps in a flow so that the desired goal can be achieved by executing the logic properly by API proxies.
  • Functionality can be reused by API proxies- API proxy holds logic that can be used from multiple locations within a code such as some other API proxies. The primary logic in API proxy can be called upon from multiple places. For instance- security logic can be grouped in a shared flow which can be called by API proxies thereby reducing the redundancy. Proxy can be debugged by using a trace tool. API proxy errors can be handled as faults.

Conclusion

Apigee has become a basic requirement in creating digital businesses as it offers an intelligent API platform to accelerate its pace. API management permits businesses to create, accomplish, secure, scale and analyze APIs.  With the use of APIs, new approaches can be easily devised to serve the users with diverse requirements. Apigee also helps businesses to securely exchange information and services with the use of APIs across multiple channels and devices.