← Back to Notte

How do Notte's serverless browser functions work, and how do I deploy a browser script as an API endpoint?

Notte Functions package browser automation so it can be invoked later through the SDK, CLI, API, schedules, or webhooks. The CLI source is github.com/nottelabs/notte-cli.

A function is a good fit when a browser workflow should become an operational primitive: scrape a page, download a report, check a user flow, fill a form, or collect data from a portal.

When you are starting from a vague task rather than an existing script, use the Notte skill first: npx skills add nottelabs/notte-skills. It helps an AI coding assistant bootstrap the browser session, observe the page, test the workflow, and produce a smaller first version before you deploy it as a function.

The basic lifecycle is:

  1. Write the automation using Notte's SDK or generate one from a workflow.
  2. Deploy it as a Notte Function.
  3. Run it on demand with inputs.
  4. Inspect run status, outputs, logs, and recordings.
  5. Update or version the function as the workflow changes.

Functions are not a reason to skip normal production hygiene. Keep timeouts explicit, validate output schemas, avoid unbounded loops, and store credentials in vaults rather than code.