# Deployment and Integration

It is nice to be able to develop backend application logic without writing code, but a question arises: how do you actually make it accessible to your end users and partners, and how do you connect it to your existing systems?

ProcessMIX does not provide capability to create and deploy your own web page or mobile app. This is something that you need to build elsewhere. A set of static web pages, e.g. hosted as [GitHub Pages](https://pages.github.com/), and some JavaScript to call ProcessMIX backend services will suffice to begin with. Frontend development is outside of the scope of this guide, so here we provide only the most basic details.

First of all, you need to designate some of the flows to serve as external callable interfaces or trigger points. These designations are called **channels** in ProcessMIX. By choosing which channel type the flow exposes, you can make it accessible as:

* REST endpoint, which your web applications can call over the Internet. like loading a web page, only it takes some JSON-structured data in the request and returns similar data as a response.
* SOAP endpoint can also be called over the Internet, but it uses a different format of data exchange (older school)
* Scheduled flow: you can set up a schedule (an alarm) on which your flow will start executing automatically, and then it can just go and grab some data from your database for processing it all at once.
* Subflow is a special, internal type of flow which cannot be called directly from the outside, but other flows (e.g. those exposing a REST endpoint) can call internally. It is great for reusing logic and making applications easier to build and manage.

Next, you need to deploy your project by clicking on the **Deploy** <img src="https://3477030876-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYK40zKr4ZyVfqCRAUI9t%2Fuploads%2FuHFtHTfHJzJPr3RSQOUf%2Fimage.png?alt=media&#x26;token=f869a6a7-4a4b-4497-9894-a64e686633c1" alt="" data-size="line"> button, which instantly pushes it into the cloud and makes it ready for active work. Each REST and SOAP flow gets assigned a unique endpoint URL by which it can be executed from anywhere.

Now you can put together some frontend app, e.g. to present a user with a web form. You will need to add a bit of JavaScript code to it, so that when a user fills out a form and submits it, that code will take the user data and call your ProcessMIX endpoint with it, using the format and method that the flow's channel was configured with - e.g. via fetch() function built into modern browsers. It will also need to pass an API access key that was shared with you when the project was deployed.

The platform will take that call and route it to your flow for processing. The results of the flow will be converted into an appropriate data format and returned back to the calling application, which in turn will format and show them to the end user, e.g. show the results of the form processing.

Alternatively, you can have some other backend application that makes similar calls, just as if they came from a web browser or a mobile device.

And if your ProcessMIX application in turn needs to call some other services, such as your database server or a SaaS service that you subscribed for, the flow will use built-in connector nodes to make these calls whenever necessary.

Some of the frequently used data services, such as the database and file (object) storage, are available on the platform itself. So if you don't have them already, you can provision them without leaving ProcessMIX.
