Skip to main content

Bot Types

hidettp supports two bot types -- Extraction and Action -- each designed for a distinct automation pattern. Bots also have a runtime setting that determines how they execute.

Extraction Bots

Extraction bots are designed for data scraping. They visit a page, interact with it as needed, and pull structured data from the content.

Key characteristics:

  • Schedulable -- Can be set to run on recurring intervals (every 5 minutes, hourly, daily, or custom).
  • Data output -- Extracted data is stored with the execution and can be delivered automatically to an external system via webhooks.
  • Webhook delivery -- Configure a webhook endpoint to receive extracted data as soon as each execution completes. Webhook payloads can be authenticated with HMAC-SHA256 or JWT.
  • Monitoring-friendly -- Ideal for ongoing monitoring tasks where you need to track changes over time.

Common use cases:

  • Scraping product listings, prices, or inventory from e-commerce sites.
  • Monitoring job postings, news articles, or government filings.
  • Tracking availability of appointments, tickets, or reservations.
  • Aggregating data from multiple sources on a recurring basis.

Action Bots

Action bots are designed for performing tasks on a website -- filling forms, clicking through workflows, or completing transactions.

Key characteristics:

  • API-triggered -- Action bots are triggered via the REST API with input parameters. For example, you might trigger a booking bot with { "date": "2025-03-15", "venue": "Main Hall" }.
  • Parameterized -- The bot's manifest defines what parameters it accepts. These parameters are available to the script at runtime.
  • Not schedulable via UI -- Since action bots require input parameters, they are triggered programmatically rather than on a fixed schedule.
  • Task-oriented -- Designed for one-off or on-demand operations rather than recurring data collection.

Common use cases:

  • Submitting forms with dynamic data (registrations, applications, orders).
  • Completing multi-step booking or checkout workflows.
  • Triggering browser-based actions from external systems via API.
  • Automating administrative tasks that require human-like browser interaction.

Bot Runtimes

Each bot has a runtime that determines how it executes:

SeleniumBase Runtime

The default runtime. Launches a full stealth Chrome browser inside a Docker container and executes the bot's Python script using SeleniumBase. This is the runtime to use for any automation that interacts with a web page.

Capabilities:

  • Full browser rendering (JavaScript, CSS, media).
  • Anti-detection and fingerprint masking.
  • Proxy and geolocation support.
  • Live browser viewing during execution.
  • Screenshot, video recording, and file download capture.
  • Captcha solving integration.

HTTP Runtime

A lightweight runtime for API-only bots that do not need a browser. HTTP-runtime bots make direct HTTP requests instead of rendering pages. Use this when the data you need is available through an API endpoint and browser rendering is unnecessary.

Capabilities:

  • Direct HTTP requests (GET, POST, etc.).
  • Lower resource usage and faster execution.
  • No browser overhead.

Choose the runtime based on whether your automation requires a rendered browser or can work with raw HTTP requests.