> For the complete documentation index, see [llms.txt](https://docs.novacura.com/flow-connect/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.novacura.com/flow-connect/working-with-connect/connect-to-systems/custom-functionality.md).

# Custom Functionality

You may encounter requirements that cannot be addressed by the standard functionality available in Flow Connect. In these cases, you can extend your solution with custom functionality.

The recommended approach depends on what you need to achieve and where the custom functionality needs to run.

### Start with the PowerShell Connector

If your requirement can be solved using the **PowerShell Connector (available early fall 2026)**, it is generally the simplest and fastest approach.

If PowerShell is not suitable, you can instead build your own service and expose the required functionality through a **REST API**, which can then be called from Flow Connect using the REST Connector.

How you decide to build your own service depends on what you are trying to achieve, so we cannot give any general guidelines. The code itself can likely be generated by an LLM at this stage, but consider consulting a software engineer to ensure proper security and reliability measures are in place if it is to be used in a production environment. The important part is that you wrap your service in a REST layer so you can set up a REST Connector in Flow to talk to it.&#x20;

And if you host your Connector agent on a server, you can consider hosting your solution on it as well for performance, simplicity, and security. But be extra careful not to fill up disks or overconsume its resources, as it could affect your critical business processes.     &#x20;

The decision flow below provides an overview of different options.

<figure><img src="https://1716064794-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIIgl6sNaTky0iALxYWHH%2Fuploads%2F7c9ARtnVjQM6JNkgjT6g%2Fimage.png?alt=media&amp;token=367d84ea-93e6-409a-91b8-612f52a7920f" alt=""><figcaption></figcaption></figure>

### Hosting a custom REST service

If you build a custom REST service, there are two main hosting options.

#### Host the service locally

If the service is used only by Flow Connect, it can be hosted on the same server as the **Connector Agent** and bound exclusively to the local loopback interface (`localhost` / `127.0.0.1`).

In this setup, HTTP may be used alongside Bearer Token authentication, provided the service is accessible only from localhost. Because communication remains on the local machine, there is no network transport to protect with TLS.

If the service is exposed beyond localhost, HTTP should not be used. Use HTTPS instead.

> **Agent Groups**
>
> If the REST Connector uses an **Agent Group containing multiple Agent servers**, a locally hosted service must be deployed and maintained on each server in the Agent Group. Requests may be executed by any Agent in the group.

#### Host the service externally

If the service needs to be accessible over a network, from multiple Agent servers, or by other systems or users, host it in the cloud or on another suitable server.

In this scenario, expose the service using **HTTPS with a valid TLS certificate** and appropriate authentication, such as Bearer Token authentication, together with any additional security controls required for your environment.

The hosting overview below illustrates the differences between the local and external approaches.

<figure><img src="https://1716064794-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIIgl6sNaTky0iALxYWHH%2Fuploads%2Fdmnu9XXp2ocGhdCR5HV8%2Fimage.png?alt=media&amp;token=9898972b-881f-4c70-bcb6-6d5f9119ccf8" alt=""><figcaption></figcaption></figure>

### Responsibility for custom solutions

Custom solutions are outside the standard Flow Connect functionality and must be maintained by you.

This includes, where applicable:

* backups
* application and dependency updates
* security patches
* certificates and certificate renewal
* security configuration
* monitoring and operational maintenance
* keeping the underlying technology stack on supported versions

For example, if the custom service is built using .NET, it should be upgraded when the .NET version it uses reaches end of support.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.novacura.com/flow-connect/working-with-connect/connect-to-systems/custom-functionality.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
