- Overview
- JavaScript functions
- Python functions
- Deploy and run
- Packaging and publishing
- Invoking functions
Functions are packaged as standard UiPath .nupkg packages and published to an Orchestrator feed. From there, a package is deployed as a process in an Orchestrator folder before it can be invoked. The flow is the same in both languages; only the command prefix and the version source differ.
| JavaScript / TypeScript | Python | |
|---|---|---|
| Package | uip function pack | uipath pack |
| Publish | uip function publish | uipath publish |
| Version comes from | package.json | pyproject.toml |
Package
uip function pack
uip function pack
This produces a versioned .nupkg (for example, my-function.1.0.0.nupkg). Bump the version in your project file before packing a new release.
Publish
uip function publish
uip function publish
You are prompted to select a package feed (for example, the Orchestrator Tenant Processes Feed); pass --feed-id to select one non-interactively in CI. Publishing uploads the .nupkg to that feed — at this point it is a package on the feed, not yet a runnable process.
Deploy
Before a function can be invoked, the published package must be deployed as a process in an Orchestrator folder — either manually in Orchestrator or through solution deployment. A function joins a solution the same way an RPA or API project does:
uip solution project import "./my-functions"
uip solution resources refresh
uip solution project import "./my-functions"
uip solution resources refresh
Once the process exists, the function becomes available to:
- A Maestro Service Task
- The Orchestrator API and job triggers (scheduled, event-based)
- Its HTTP trigger, for a JavaScript function that declares a
methodandpath
Versioning
- The package version comes from the project file —
package.jsonfor JavaScript,pyproject.tomlfor Python. - Publishing a new version adds it to the feed; update the process or Maestro Service Task binding to pick it up.
- The
.nupkgis the same package format used by RPA — the same feed, upload, and version-management mechanics apply.
Next steps
- Invoke functions — wire the published function into a process.