Skip to main content

Key Concepts

This page defines the core concepts in hidettp. Understanding these will help you navigate the platform and make sense of the documentation.

Bot​

An automation unit targeting a specific URL. A bot has a name, a target website, a script (or recorded steps), configuration settings, and an execution history. Bots are the central building block in hidettp -- everything else revolves around creating, configuring, and running them.

Bot Types​

hidettp supports two bot types, each designed for a different use case:

  • Extraction -- Scrapes data from web pages. Extraction bots can be scheduled to run on recurring intervals (every 5 minutes to daily). Output data is delivered via webhooks or retrieved through the API.
  • Action -- Performs tasks on a website (filling forms, clicking buttons, completing workflows). Action bots are triggered via the API with parameters -- for example, booking a ticket with a specific date and venue. Action bots are not schedulable through the UI; they run on demand.

Script​

The Python code that controls a browser during execution. Scripts use SeleniumBase to interact with page elements -- clicking, typing, navigating, and extracting data.

Scripts can be created in three ways:

  • Written manually in the Monaco-based script editor.
  • Recorded visually using the browser recorder, which captures interactions and converts them to code.
  • Generated by AI from a plain-English description using the built-in assistant.

Scripts support versioning, so you can track changes and revert if needed.

Execution​

A single run of a bot. When you trigger a bot (manually, on schedule, or via API), an execution is created and moves through a lifecycle of states:

  • Pending -- Queued, waiting for an available runner.
  • Processing -- A runner has picked up the execution and is running the script.
  • Success -- The script completed without errors.
  • Failed -- The script encountered an error and could not complete.
  • Cancelled -- The execution was manually cancelled before completion.
  • Timeout -- The execution exceeded its configured time limit.

Each execution records logs, extracted data, downloaded files, and a video of the browser session.

Runner​

A SeleniumBase worker process running inside a Docker container with a stealth-configured Chrome browser. Runners are the execution engine of hidettp.

Runners continuously poll for pending executions, pick up work, launch a Chrome instance, execute the bot's script, and report results. Multiple runners can operate in parallel to handle concurrent executions.

Each runner includes anti-detection measures: stealth Chrome configuration, custom user agents, and fingerprint masking.

Manifest​

A bot's configuration blueprint. The manifest defines how the bot's browser environment is set up before execution:

  • Capabilities -- Proxy settings, locale, timezone, geolocation, user agent, ad blocking, and other browser configuration.
  • Webhook settings -- Where to deliver extracted data, and how to authenticate the delivery (HMAC-SHA256 or JWT).
  • Action parameters -- For action bots, the manifest defines what input parameters the bot accepts when triggered via API.

The manifest is configured through the bot's Settings tab.

Organization​

A workspace that scopes all data in hidettp. Every bot, execution, API key, and team member belongs to an organization.

Organizations support multiple members with role-based access control:

  • Owner -- Full control, including billing and organization deletion.
  • Admin -- Can manage bots, members, and settings.
  • Member -- Can create and run bots.
  • Viewer -- Read-only access to bots and executions.

You can belong to multiple organizations and switch between them.

Steps​

Individual recorded actions that compose a bot's automation flow. When you use the visual recorder, each interaction you perform is captured as a step.

Step types include:

  • navigate -- Go to a URL.
  • click -- Click an element.
  • type -- Enter text into a field.
  • scroll -- Scroll the page or an element.
  • keypress -- Press a keyboard key.
  • selectOption -- Choose from a dropdown.
  • extract -- Capture data from an element.
  • waitForElement -- Pause until an element appears.
  • assertElement -- Verify an element exists or has specific content.
  • solveCaptcha -- Trigger captcha solving.
  • requestHuman -- Pause and request human intervention.
  • downloadFile -- Capture a file download.
  • loop -- Repeat a sequence of steps.
  • dateSelect / timeSelect -- Interact with date or time pickers.
  • paramInput -- Accept a runtime parameter (for action bots).

Steps are converted into a SeleniumBase Python script that the runner executes.