> For the complete documentation index, see [llms.txt](https://docs.highcohesion.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.highcohesion.com/get-started/creating-your-first-stream.md).

# Create your first integration

![The anatomy of a stream](/files/-MNdHhqmuIBiLH5VHiCV)

{% hint style="info" %}
A system here refers to any type of source and destination, be it an a specific 3rd party application, or something more generic like a FTP location, other file storage types or a communication endpoint like email or Slack.
{% endhint %}

**A Stream is created by combining three key components:**\
1\. **The Source function** - The Source Function decides what data should be pulled from the Source system and when. You will need a System Key in order to pull the data from your Source system.\
2\. **The Transformation** - The Transformation is responsible for transforming the data of the Source system to match the data of the Destination System.\
3\. **The Destination** - The Destination Function decides what data should be pulled from the Destination system and when. You will need a System Key in order to post the data to your Destination system.

## Use case based Stream setup guide

**In the next 5 steps we will walk through a use case based guide of how to integrate and automate the flow of data between Shopify & a 3rd party logistics company's FTP-location.**

Unless you're a Developer using HighCohesion's SDK, all configuration for HighCohesion is done from the Control Panel.
