A dictionary of the terminology most commonly used by developers related to APIs and software development.


Is a technique for building web-based applications that can asynchronously request and receive data from a server without requiring a full page refresh
API stands for Application Programming Interface
API Access
API access refers to the ability to access and use the resources and functionality provided by an API.
API Analytics
API analytics is the process of collecting, analyzing, and reporting on data and metrics related to the usage and performance of an API.
API Authentication
API authentication is the process of verifying the identity of the developer or client making an API request.
API Call
An API call is a message sent to a server
API Economy
The API economy is the exchange of digital data and services through APIs
API Endpoint
An API endpoint is a specific location or address within an API
API Gateway
An API endpoint is a specific location or address within an API
API Integration
The process of integrating one or more APIs into a software application or system
API Keys
API Keys are used to authenticate and authorize access to an API
API Layer
An API layer is a software layer that acts as an interface between two or more systems or components.
API Lifecycle
The API lifecycle refers to the various stages or phases that an API goes through.
API Portal
An API portal is a web-based platform that acts as a central hub for developers to access, discover, and interact with APIs.
API Request
An API request is a request made to an API to access or manipulate a specific resource or set of resources.
API Security
API security refers to the measures and controls that are implemented to protect APIs from unauthorized access, misuse, or attacks.
Abstract Syntax Tree
An AST is a representation of the structure of a piece of code
Acceptance Testing
Is a type of testing that is conducted to determine whether a system or component meets the specified acceptance criteria
Adaptive Design
A design approach that involves creating a design that adapts to the specific needs, preferences, and characteristics
Adaptive Maintenance
Adaptive maintenance is a type of maintenance that is performed on a software system to modify or adapt it to changing business needs or requirements.
Agile Software Development
A set of principles and practices for iterative and incremental software development
An algorithm is a set of steps or instructions that are used to solve a problem or perform a task.
Alpha Testing
The first phase of testing in the software development process
Alternative Classes with Different Interfaces
Are classes that perform similar tasks or provide similar functionality, but have different interfaces
Is a type of software that is designed to perform a specific task or set of tasks.
Asynchronous Programming
A programming paradigm in which a program can perform multiple tasks concurrently



Command Line Interface (CLI)
A command line interface (CLI) is a type of user interface that allows users to enter commands using text input, rather than using a graphical user interface (GUI)
CRUD stands for Create, Read, Update, and Delete. It is a set of operations that are commonly used to manipulate data in a database or other storage system.
A cache is a temporary storage area that is used to store data that is likely to be used again in the near future.
Code Refactoring
Code refactoring is the process of improving the structure and organization of code without changing its functionality.
Code Smell
A code smell is a term used to describe a piece of code that might indicate a deeper problem within a codebase.
Continuous Delivery
Continuous delivery (CD) is a software engineering practice in which code changes are automatically built, tested, and prepared for release to production.
Continuous Integration
Continuous integration (CI) is a software engineering practice in which code changes are automatically built and tested each time a change is made to the codebase.
Continuous Quality
Continuous quality is a software engineering practice in which quality assurance (QA) activities are integrated into the software development process, rather than being treated as a separate phase.
Cross Browser Testing
Cross browser testing is the process of testing a website or web application to ensure that it works correctly on a variety of different web browsers and devices.
Cross-Origin Resource Sharing (CORS)
Cross-Origin Resource Sharing (CORS) is a security feature implemented by web browsers that blocks web pages from making requests to a different domain than the one that served the web page
Cyclomatic Complexity
Cyclomatic complexity is a measure of the complexity of a program, based on the number of independent paths through the code.
cURL is a command-line tool that is used to transfer data to and from a server.