Custom scripting
Introduction
'Out of the box', Patchworks pulls data from a source system and pushes it into a destination system, using field mappings to decide where each item of source data should be placed in the destination system.
Patchworks provides default mappings that can be adjusted if needed, and a comprehensive set of transform functions that can be used if your source data doesn't quite slot neatly into the destination.
However, requirements for manipulating source data can be more complex than any standard set of transform functions can handle. If this is your position and you have developer experience in-house, custom scripting can be used to write and maintain your scripts.
Using our integrated editor with integrated IntelliSense and AI, you can get as complex as you need with a choice of coding languages.
AI assistance

The custom script editor includes an integrated AI agent, so you can get real-time assistance creating and updating scripts!
Our AI integration knows about expected keys and value types (payload, variables, meta, etc.), so generated scripts will be in a form that's ready to use in process flows.
For more information, please see our Creating a script with AI page.
How are custom scripts used?
Once a script is deployed, it can be selected for use in process flows via:
Script shapes (run a script at any point in a process flow)
Map shapes (add a script transform function to run a script to transform source fields before they are pushed to destination fields)
Custom scripts can also be applied in the setup for connectors, specifically:
Supported languages
The following coding languages are currently supported for custom scripting:
C#
8.0
Go
1.18 & 1.23
Rust
1.8.2
Javascript
Node 18
PHP
8.1 & 8.2
Python
3
Ruby
3
Supported libraries & packages
Default packages are available for supported coding languages. Additionally:
1.11.0
Provides functions for accessing remote machines using the secure SSH and SFTP protocols.
If you require additional libraries, you can:
Embed them in your script directly
Submit a request to Patchworks support for a library to be included globally
Related pages
Last updated