Glossary of platform terminology
We created this guide to help our new team members, then thought that everyone could benefit 🤯➡️🤓
The following terms appear across the HighCohesion system and documentation. The glossary below should help give a definition of how each term is used by us. Most of the terms are HighCohesion specific, but some are marked as "industry" - denoting that they are a commonly used term across technology companies worldwide.
The API Key is the HighCohesion terminology for the credentials required for HighCohesion to access an external system, such as Shopify or an sFTP.
An email alert that is triggered by the HighCohesion alerting service. An alert is triggered at a Job or Event level in real time as an integration issue occurs. An HighCohesion alert contains all contextual information necessary to directly address the issue.
A web application for authoring all aspects of the the core system, creating streams and the triggers that automate the data between the different endpoints. The control panel is accessible via https://control.hico.io
Used to describe the proprietary system that has been built inside AWS using API Gateway, Lambda, DynamoDB, S3 and SQS. Our core system handles the transformation of data between two different systems in one process.
CRON (also CRON schedule / job) is a time-based scheduler that allows an end-user to schedule Jobs to run periodically at a fixed time, dates or intervals. At HighCohesion we use CRON jobs to schedule when a Source or Destination should be triggered. A CRON job is scheduled by using a CRON expression, for more informations on cron expressions see: https://crontab.guru/#*_*_*_*
A comma-separated values (CSV) file is a delimited text file that uses a comma to separate values. Each line of the file is a data record. Each record consists of one or more fields, separated by commas. CSVs are commonly used across the eCommerce landscape today.
Extract, Transform, Load (ETL) three functions combined into a single, simple to deploy tool to pull data from one database and place it into another database.
- Extract is the process of digesting data from a database (or in High Cohesion - the payload). In this stage, the data is collected from specified sources.
- Transform is the process of transforming the extracted data from its original form into the form it needs to be in to be placed into another database. Transformation occurs using Translation/Transformation Documents.
- Load is the process of writing the data into the target database/system.
An event is how we classify a specific entity of data e.g. an order, moving through a data stream. The event is generated at the source and is consumed by the destination.
File Transfer Protocol is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network. sFTP (secure file transfer protocol), is a more secure way of interacting with an FTP. sFTPs/FTPs are a common way for eCommerce retailers to transfer data between an eCommerce shop and a legacy system.
In the HighCohesion ecosystem an ID is a UUID consisting of 36 characters. The ID is used to tag all key parts of the platform such as Organisations, Users, Sources, Transformations, Destinations, Jobs, Event & Entities.
An integration is a connection between two systems that allows for the transfer of data. In the HighCohesion world, we call this a stream. Although integrations can be very wide ranging in the type of data that is integrated between systems, in our platform it refers to specific data types e.g. the sending of new orders from a website to a WMS (Warehouse Management System).
Message Queues are managed services designed to send, store and receive messages between software components at any volume, without the risk of losing messages or demanding other services be available.
Open Authentication (oAuth) is an open standard for token-based authentication and authorisation on the Internet. Its primary function is to allow an end user’s account information to be used by third-party services without exposing the user’s password. oAuth acts as an intermediary on behalf of the end user, providing the service with an access token that authorises specific account information to be shared.
The HighCohesion account holder company name. Each organisation is assigned a unique ID, ensuring that all associated configuration, processes and data are accessible only to linked accounts.
The payload is the part of transmitted data that is the actual intended message.
The data as pulled from the Source system in JSON format before HighCohesion transformation logic has been added.
The data as posted to the Destination system in JSON format, after HighCohesion transformation logic has been added.
The explorer sections of the control panel allow the viewing of previous; job, event and entity data held in the HighCohesion system.
Response codes are HTTP response codes that are given by API’s in response to any request. A full list of response codes in general can be viewed at https://en.wikipedia.org/wiki/List_of_HTTP_status_codes, however the codes in use by the core api currently are:
- 200 - Status = Ok
- 400 - Status = Bad Requests (something was wrong with the data or the service, in this case, an error message is normally returned with the 400 response code to help debugging).
- 401 - Status = Unauthorised (login details not working)
- 500 - Status = Internal Server Error (something seriously went wrong)
Serverless computing is a type of cloud computing where the customer does not have to provision servers for the back-end code to run on, but accesses services as needed.
It forms part of a cloud-computing execution model in which the cloud provider (e.g. Amazon AWS, Google Cloud Platform) runs the server, and dynamically manages the allocation of machine resources.
Serverless architectures benefit from significantly reduced operational cost, complexity and engineering lead times.
Statuses as defined within the HighCohesion ecosystem is the state in which a Job or Event exists at a specific point in time. The statuses give us a quick overview of how live integrations are performing and enables efficient error reporting.
A TOML configuration file that instructs what a Job does once invoked by a Trigger within the core HighCohesion system. A stream is the integration that moves data from one system or application to another. In HighCohesion a stream consists of a source function, a transformation and a destination function. The stream creates jobs that run to extract data from the source, transform it, and then load it into the destination function. Each entity of data created by the job is known as an 'event.'
A system is used as a term describing a collection of code that can facilitate the production or consumption of data (by acting as a Source or Destination). A system will normally be built around a singular 3rd party application, for example there is a "Shopify System" that exists to facilitate the import/export of data to and from the Shopify e-commerce platform. HighCohesion has connections to and functions for many of the common eCommerce systems.
A security process in which the user provides two different authentication factors to verify themselves to better protect the user’s credentials and the resources the user can access.
A document held in JSON format that stores the mapping of fields. Used by the core system to translate data between multiple endpoints. A public transformation is available to use for all users of HighCohesion. A private transformation is accessible only by a single organisation.
The logic & schedule that defines when a Source or Destination should run.
An individual that has any type of access to the HighCohesion Control Panel.
UUID, or Universally Unique Identifier, is a 128 bit code used to identify information in a computer system. At HighCohesion we associate each Organisation, User, Stream, Job, Event and Entity with a UUID.
Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable.