Transfer Protocols and Transport Languages for SaaS Integrations
SaaS integrations have many parts, including transfer protocols and transport languages. These work closely to ensure that the data is transferred accurately, securely, and in a format that the receiving system can parse.
A transfer protocol is a network protocol that supports transferring data between systems. APIs (application programming interfaces) generally determine the transfer protocols used for integrations.
Transport languages (data exchange formats) apply formatting and structure to the data sent and received via those transfer protocols.
The TCP/IP network model defines the communications process between any network devices. It is comprised of four levels or layers: application layer, transport layer, internet layer, and network access layer.
Transfer protocols are from the application layer of network protocols and significantly impact how integrations work.
Here are the transfer protocols most commonly used for integrations:
- HTTP (hypertext transfer protocol)
- HTTPS (hypertext transfer protocol secure)
- FTP (file transfer protocol)
- SFTP (SSH file transfer protocol)
- FTPS (file transfer protocol secure)
There are other transfer protocols, and just about any application layer network protocol could be used for an integration. However, these transfer protocols are best suited for the task, so they are used most of the time.
You'll recognize HTTP and HTTPS as the primary web browser protocols. And, as it turns out, they are also the primary protocols for exchanging data over the web via non-browser means, such as back-end integrations. HTTP and HTTPS handle most integrations that transfer data collections (such as from querying an API).
FTP, SFTP, and FTPS are the most common protocols for integrations that import or export files instead of data collections. As a result, FTP, SFTP, and FTPS transfer protocols are often used for integrations that don't have an API on at least one end of the transfer. Integrations that import or export files are often, though not always, with legacy systems.
Data transport languages
Data transport languages are also known as data exchange formats or data interchange formats. Transfer protocols define how one system on a network talks with another system, while transport languages focus on the data transferred between systems.
A transport language can also be referred to as an interim (or temporary) format since the source system and receiving system store the data in formats that are different from the transport language.
Standard transport formats are as follows:
- CSV (comma separated values)
- XML (extensible markup language)
- YAML (YAML ain't markup language)
- SOAP (simple object access protocol)
Most of these formats are human-readable, and some are related. YAML is considered a superset of JSON, and SOAP is a highly structured XML implementation. We've already addressed XML and JSON in our XML vs JSON post, so check that out if you'd like to dig into the details.
Putting it all together
Anywhere we can use HTTP, we can also use HTTPS (HTTP + TLS), as long as the server suports it. Data integrations are likely to use HTTPS because it is secure by design.
Similarly, while file transfer integrations can use FTP, they are more likely to use SFTP or FTPS because of the built-in security. File transfer integrations only use a transfer protocol, without a transport language, because the object being transported is a file.
Let's look at standard transfer protocols and transport languages and see what types of integrations they often enable:
- HTTPS + SOAP. Relied upon for its highly structured approach to data and its ability to increase security beyond HTTPS with the WS-Security extension. Used by some of the largest corporations in the world (such as Salesforce).
- HTTPS + CSV. Many legacy systems cannot import/export data in modern languages (such as JSON or XML). However, many of them do support flat files. CSV is a flat-file format that many of these systems can import or export.
- SFTP or FTPS. Used for securely uploading and downloading files. Most common with integrations external to a company (and therefore needing security).
- FTP. Used for uploading and downloading files. Most common with integrations that are either internal to a company or external integrations where the data is publicly available – thus does not need security.
While other transfer protocols and transfer protocol/transport language combinations are valid, the above patterns account for most of the SaaS integrations on the web today.
Most of this detail is unimportant to the average integration user, but knowing the transfer protocols and transport languages used for integrations can be quite helpful when building your own B2B SaaS integrations.
If you'd like to see more content on protocols, languages, and other integration topics, follow us on LinkedIn or Twitter.
Prismatic is the integration platform for B2B software companies. It's the quickest way to build integrations to the other apps your customers use and to add a native integration marketplace to your product. A complete embedded iPaaS solution that empowers your whole organization, Prismatic encompasses an intuitive integration designer, embedded integration marketplace, integration deployment and support, and a purpose-built cloud infrastructure. Prismatic was built in a way developers love and provides the tools to make it perfectly fit the way you build software.
Get the latest from Prismatic
Subscribe to receive updates, product news, blog posts, and more.