Glossary
Key terms and abbreviations of API design.
A
App (Application)
Software is a broader concept than an app. Software is more versatile and can often be tailored. An app is simpler. Previously, apps were only used on mobile devices – phones and tablets – with Android or iOS operating systems. Software is installed on a computer. In recent years, apps have also been published for Windows operating system in the App Store. Consequently, both computer software and apps are today used on computers. In Windows 11 operating system, for instance, Android-based apps can be used.
Application Programming Interface (API)
An API determines how a program or its module provides data or services to applications or other information systems.
A data API can process data, which means that you can use it to read data contained in a service into other information systems. An example of a data API can be found on the website kansalaisaloite.fi, which provides information on citizens’ initiatives.
An operational API also provides computing algorithms or the possibility of modifying the data in an information system through the API. Examples of operational APIs include
- The API in Helsinki Region Transport's Journey Planner with a routing algorithm
- international Open311 interface standard that can be used to report faults to the feedback systems of cities that support this standard.
B
Business transaction
A situation or transaction associated with the activities of a legal person (such as a company or association) that, in the context of a digital service, is handled on the same principle as life events.
C
Customer orientation
Customer orientation is a principle in which services and operating models are designed from the point of view of the customer and their situation, ensuring that they will produce value for the customer as smoothly and easily as possible.
D
Developer experience
Similar to User Experience (UX), however focusing on software developers using the software. Good developer experience saves time and money while it reduces risks and errors.
E
Enterprise Architecture (EA)
A model for structuring the organisation’s activities from the perspectives of operation, data, information systems and technology.
- Operational architecture describes functional structures.
- Information architecture describes the data the organisation processes and their structures and mutual relationships.
- The information system perspective deals with applications and computer programs (or information systems) that process data.
- Technology architecture focuses on the technological infrastructure.
Previously, this work was carried out based on such documents as JHS-179 (Design and development of enterprise architecture).
Read the Enterprise Architecture in Operational Development guide.
European Interoperability Framework (EIF)
The EIF is a strategic and structural guidance framework that defines the principles, recommendations and standards with the help of which public information systems and services can exchange information and work together across borders.
Extensible Markup Language, XML
XML is a metalanguage that was developed by the World Wide Web Consortium in the 1990s and that resembles HTML and describes data structure without predefined codes.
G
GraphQL
GraphQL is a query language and interface technology developed by Facebook (now Meta) in 2012 and published as an open standard in 2015. It is used for information retrieval between client and server software. GraphQL is an API query language and execution engine that allows the customer to request the specific data they need in a single call.
H
Hub and spoke model
In this model, data are transferred through a single access point (hub) to different information systems (spokes). In the Figure below, the balls with numbers (1-8) represent different information systems. For example, an integration bus is a hub of this kind. The operating principle of the Hub and spoke model is often compared to that of a switchboard.
Hypertext Transfer Protocol (HTTP)
Originally released in 1991, a stateless protocol for sharing resources on the World Wide Web. It is based on a TCP/IP transmission control protocol and architecture with two roles: client and server. HTTP has been standardised, and its latest version is http/3 (RFC 9114) published in June 2022.
Hypertext Transfer Protocol Secure (HTTPS)
A combination of the HTTP and TLS/SSL protocols used for secure communication over a data network, usually on the Internet. A certificate is required when using TLS encryption. HTTPS traffic is not stored in proxy server caches.
I
Information system
A system consisting of:
- data
- people who process data
- data processing devices
- telecommunication devices
- programs that process data
- data processing rules.
Its purpose is to facilitate or improve the efficiency of certain activities, or to enable them.
Integration
Combining at least to components into a configuration. Dozens of different styles can be used for this. The integration pattern defines how the integration is implemented in practice. APIs facilitate integration.
Integration platform as a service (IPAAS)
A broad umbrella concept with features and uses that vary by industry. An organisation’s data flows are managed using a cloud service. IPAAS platforms often feature easy-to-use tools that enable the business division to build integrations without the help of the IT department.
J
JavaScript Object Notation, JSON
A data format designed to be more simple than XML that is based on a standard published in 1999. Easy to read, understand and write. Comprises a collection of name and value pairs within objects contained in parentheses. Language independent. Read more at json.org.Opens in a new window.
L
Life event
A life event refers to a situation in which a change occurs in a person’s or a company’s life that requires dealings with several authorities or different actors.
Loose coupling
In this model, each service is independent and their development, decommissioning or replacement does not affect other services.
M
Message Queuing Telemetry Transport (MQTT)
MQTT is a protocol used in the Internet of Things (IoT). A protocol is a set of rules that define how IoT devices can publish and request information on the Internet. MQTT is primarily used for exchanges of messages and data transfers between IoT devices and industrial IoT (IIoT) devices, such as embedded devices, sensors and industrial programmable logic controllers.
Microservice
A software architecture style in which a program is made up of a collection of small services that focus on (business) operations.
Microservices communicate with each other through APIs. They are easy to rewrite, add or take down as required by business needs. A microservice can be built independently, and it can be thought of as a module.
Module (Modular programming)
An independent software component with input data, output data and a dedicated operational function. Any complex configuration can be assembled from modules, in other words designed using modular (software) architecture. The idea was developed in the 1960s for large software packages, in which it made reusing and later hiding details (of an operational task) possible.
Monolithic application
Software consisting of a single, large configuration. The microservice architecture style, which is made up of small components, is often cited as its opposite. In monolithic software architecture, a single application takes care of most or all of the functions. Old monolithic software packages are often modified and replaced with microservices one component a time.
O
OpenAPI
A description method of APIs in RESTful architecture style developed since 2010. Its former name was Swagger. The description method is open and supported by the Linux Foundation. Based on the description, short versions of programming codes for both client and server implementations can be created in different programming languages, as well as documentation, software tests and more. Read more at openapis.org.Opens in a new window.
Open Authorization (OAuth)
A protocol for delegating access between services without resending passwords or IDs. For example, you can use Amazon, Google, Facebook, Microsoft, and Twitter IDs to log in to third-party apps and services. Used in APIs to delegate access rights.
P
Point-to-Point Integration
In this model, data are transferred directly from one information system to another. It is the oldest way of transferring data between different information systems. In practice, it is often implemented using local scripts and programs. Complex configurations have often been implemented using different technologies, by different persons and at different times. Point-to-Point integrations have frequently been built in connection with information system procurements over a number of years or decades.
A configuration built a little at a time often turns into one that is difficult to manage from maintenance and development point of view and that is frequently highly complex. For example, if eight different information systems (n=8) are integrated with each other using this method, n(n-1)/2 integrations are created, or 8(8-1)/2 = 28.
R
RESTful architecture Style (REST)
The most commonly used API style. According to estimates, more than 80% of Internet APIs have been implemented in this architecture style.
S
Software
A computer program and its documentation.
Software as a Service (Saas)
Software as a Service is a software distribution model in which the service supplier maintains and develops the software on its servers and provides the service to customers on the Internet. Customers often pay for the service per use: monthly or annually.
Software testing
Testing the behaviour of software to get closer to ensuring that it works as expected. Validation refers to determining that the software meets the customer’s goals and needs. Verification ensures that the program complies with requirements, plans and instructions. While verification can often be automated, validation cannot.
Spaghetti architecture
A very complex configuration that has often been built over the decades, in which different programs have been acquired in different ways. Programs have been written in different languages, by different persons and using a variety of techniques. Information systems have been purchased as turnkey deliveries, they have been tailored, and some may be off-the-shelf software. Any slightly larger organisation uses more than 100 information systems for different purposes. This results in a 'spaghetti', a word that describes mismatch and complexity, which is either not properly managed by anyone, or by somebody to a limited extent.
Systems Integration
A way of perceiving the organisation’s IT architecture. Also a set of operating methods with which IT resources can be harnessed as well as possible to meet (business) needs.
T
Technological Neutrality
Technological neutrality and data portability are Objective 5 of the European Union Interoperability Principles. The aim is to ensure that public administrations are not obliged to use certain technical implementations or products or, for example, rely on a single supplier.
U
Uniform Resource Locator (URL)
A URL is an address used on the Internet. It refers to a resource, determining its location on the network and the mechanism for retrieving it. URLs are also used in APIs to indicate their location in the information network.
W
Web service
Software designed for interoperable machine interaction over a network. In practice, the term refers to APIs that operate across the Internet.
Z
Zero trust or Zero Trust Architecture (ZTA)
A term coined by Stephen Paul Marsh in his doctoral dissertation in 1994. An approach to information system strategy, design and implementation. The main idea of the model is 'never trust, always check'. This means that by default, you never trust users and devices under any circumstances, not even when they are connected to a closed network, such as a local area network operating within an organisation.