UiPath Documentation
functions
latest
false
  • Vue d'ensemble (Overview)
    • À propos des fonctions
  • Python functions
    • Démarrage
    • Building Python functions
    • Accessing platform services
    • Tracing and observability
    • Test et débogage
  • Deploy and run

Functions user guide

Démarrage

This page walks you through installing the SDK, scaffolding a project, and running your first Python function locally.

Prérequis

  • Python 3.10 or later.
  • The uipath CLI and SDK, installed with pip.
  • A UiPath account with access to Orchestrator (for publishing and invoking).

Install the SDK

pip install uipath
pip install uipath

Verify the installation:

uipath --version
uipath --version

Scaffold a project

Create a new function project:

uipath new my-function
uipath new my-function

This scaffolds the files you edit:

FichierObjectif
main.pyYour function logic and the Input/Output models. Starts as a runnable example.
pyproject.tomlProject metadata and dependencies.
uipath.jsonDeclares the callable entry points. The scaffold registers main for you.

Write your first function

Replace the scaffolded logic in main.py:

from pydantic.dataclasses import dataclass


@dataclass
class Input:
    message: str = ""


@dataclass
class Output:
    reply: str = ""


def main(input: Input) -> Output:
    return Output(reply=f"Hello, {input.message}!")
from pydantic.dataclasses import dataclass


@dataclass
class Input:
    message: str = ""


@dataclass
class Output:
    reply: str = ""


def main(input: Input) -> Output:
    return Output(reply=f"Hello, {input.message}!")

The scaffolded uipath.json already declares this entry point:

{
  "functions": {
    "main": "main.py:main"
  }
}
{
  "functions": {
    "main": "main.py:main"
  }
}

The key (main) is the entry-point name used in CLI commands; the value references the file and function. Update it only if you rename the function or add more entry points.

Generate the project schema

Once your Input and Output are defined, generate the schema and bindings:

uipath init
uipath init

This reads your code and uipath.json and generates:

FichierObjectif
entry-points.jsonInput/output JSON Schema derived from your models, used for variable binding.
bindings.jsonResource bindings for local runs.

Re-run uipath init whenever you change your Input or Output models.

Run it locally

uipath run main '{"message": "world"}'
uipath run main '{"message": "world"}'

Local runs use the bindings in bindings.json to resolve platform resources, so you can test against real Orchestrator assets and buckets before publishing.

Prochaines étapes

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour