---
canonical_url: "https://docs.composio.dev/toolkits/olostep"
markdown_url: "https://docs.composio.dev/toolkits/olostep.md"
product: "platform"
version: null
last_updated: null
---

# Olostep

Olostep provides APIs for web scraping, crawling, search, structured answers, monitoring, and data extraction.

- **Category:** web scraping & browser
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 16
- **Triggers:** 0
- **Slug:** `OLOSTEP`
- **Version:** 20261014_00

## Tools

### Answer Question

**Slug:** `OLOSTEP_ANSWER_QUESTION`

Synchronously research a bounded task by searching and browsing the web, then return the completed answer and sources when available. This usage-metered operation usually takes 3-30 seconds and has no documented fixed dashboard-key credit price; check the account balance before expensive use.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `task` | string | Yes | Question or bounded research task to answer by searching and browsing the web. |
| `json_format` | string | No | Desired structured output. Provide either an example JSON object with empty values or a textual description of the required data shape. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Monitor

**Slug:** `OLOSTEP_CREATE_MONITOR`

Create a scheduled page or web-query monitor and return immediately after Olostep accepts it for asynchronous provisioning. Configure alert channels and a separate webhook in the same non-streaming request. Checks and alerts repeat every hour by default until the monitor is paused.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | Natural-language description of what to monitor. |
| `webhook` | object | No | Webhook delivery configuration, separate from notification channels. |
| `metadata` | object | No | User-controlled metadata object attached to the monitor. |
| `frequency` | string | No | Natural-language UTC schedule, up to 50 characters. Defaults to every hour; the minimum supported interval is every 10 minutes. |
| `notification` | object | No | Events and email, Slack, or SMS channels used for notifications. |
| `output_schema` | object | No | JSON Schema object for structured values extracted by each monitor run. |
| `source_policy` | object | No | Optional URL and domain allow or deny lists for monitor sources. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Credit Balance

**Slug:** `OLOSTEP_GET_CREDIT_BALANCE`

Return the connected team's remaining Olostep credits, credit lots, active subscription, and whether usage is enabled without consuming web-processing credits.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Operation Result

**Slug:** `OLOSTEP_GET_OPERATION_RESULT`

Retrieve a stored scrape, search, map, answer, crawl, or batch by its operation ID without repeating or rebilling the original work. Crawl and batch results may still report in_progress.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `operation_id` | string | Yes | ID returned when the selected operation was created, such as scrape_..., search_..., map_..., an answer ID, a crawl ID, or a batch ID. |
| `operation_type` | string ("scrape" | "search" | "map" | "answer" | "crawl" | "batch") | Yes | Kind of stored Olostep operation whose result should be retrieved. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Batch Items

**Slug:** `OLOSTEP_LIST_BATCH_ITEMS`

Return one page of completed or failed items from an asynchronous batch, including retrieve IDs, URLs, metadata, and extracted links.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum batch items to return in this page. Olostep recommends 10-50; smaller or larger positive values are accepted by the documented API. |
| `status` | string ("completed" | "failed") | No | Return only completed or failed batch items. |
| `batch_id` | string | Yes | Batch ID returned by Start Batch. |
| `next_cursor` | string | No | Opaque continuation cursor from a previous response; omit on the first call. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Crawl Pages

**Slug:** `OLOSTEP_LIST_CRAWL_PAGES`

Return one page of URLs and retrieve IDs processed by an asynchronous crawl, with a continuation cursor for additional pages. Use Retrieve Content for page bodies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum crawl-page records to return in this response (1-50), subject to the provider's 10 MB response cap. |
| `crawl_id` | string | Yes | Crawl ID returned by Start Crawl. |
| `next_cursor` | string | No | Opaque continuation cursor from a previous response; omit on the first call. |
| `search_query` | string | No | Optional query used to order returned pages by relevance. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Monitor Events

**Slug:** `OLOSTEP_LIST_MONITOR_EVENTS`

Return one page of a monitor's snapshot events, including change summaries and short-lived snapshot links.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum monitor events to return in this page (1-100). |
| `monitor_id` | string | Yes | Monitor ID whose snapshot events should be listed. |
| `next_cursor` | string | No | Opaque continuation cursor from a previous response; omit on the first call. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Monitors

**Slug:** `OLOSTEP_LIST_MONITORS`

List the account's page and web-query monitors, including their IDs, lifecycle status, schedules, tracked targets, and notification settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include_deleted` | boolean | No | Whether to include deleted monitors; omit to exclude deleted records. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Map Website

**Slug:** `OLOSTEP_MAP_WEBSITE`

Synchronously discover and optionally rank URLs on a website, returning one response page and a continuation cursor. This usage-metered operation consumes Olostep credits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Website URL whose links should be discovered. |
| `top_n` | integer | No | Maximum number of top-ranked links to return when search_query is provided. |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit on the first call. |
| `exclude_urls` | array | No | URL-path glob patterns to exclude; exclusions override inclusions. |
| `include_urls` | array | No | URL-path glob patterns to include, such as /blog/**. |
| `search_query` | string | No | Optional query used to rank discovered links by relevance. |
| `include_subdomain` | boolean | No | Whether to include URLs on subdomains of the supplied website. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Content

**Slug:** `OLOSTEP_RETRIEVE_CONTENT`

Retrieve stored page content by retrieve ID in selected live-supported formats, including hosted URLs for oversized output.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `formats` | array | No | Stored formats to return. Supported values are markdown, html, and json. Omit to return all available stored formats, including any screenshot or network-call artifacts captured at scrape time. |
| `retrieve_id` | string | Yes | Content ID returned by a scrape, batch item, or crawl page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Scrape Page

**Slug:** `OLOSTEP_SCRAPE_PAGE`

Synchronously scrape one web page and return requested content, links, metadata, a retrieve ID, and billing usage. This usage-metered operation can consume credits even when cached content is returned. Fresh scrapes, browser actions, extraction, and screenshots may cost more.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Public URL of the single page to scrape. |
| `actions` | array | No | Browser actions to perform in order before collecting content. |
| `country` | string ("US" | "CA" | "IT" | "IN" | "GB" | "JP" | "MX" | "AU" | "ID" | "UA" | "RU" | "RANDOM") | No | Residential country from which to load the page, or RANDOM. |
| `formats` | array | No | Content formats to return for this scrape. |
| `max_age` | integer | No | Maximum acceptable cached-result age in seconds. Zero forces a fresh scrape; 604800 permits a result up to seven days old. Cached results can still consume credits. |
| `parser_id` | string | No | Parser ID for structured JSON extraction; include json in formats when using it. |
| `transformer` | string ("postlight" | "none") | No | HTML cleanup transformer to apply. |
| `links_on_page` | object | No | Options for extracting and filtering links on the page. |
| `extraction_schema` | object | No | Desired object schema for LLM-based structured extraction. |
| `remove_css_selectors` | string | No | CSS removal setting: use default, none, or a JSON-stringified array of CSS selectors. |
| `screenshot_full_page` | boolean | No | When screenshot format is requested, capture the full page after scrolling to the bottom. |
| `wait_before_scraping` | integer | No | Milliseconds to wait after loading before collecting content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Web

**Slug:** `OLOSTEP_SEARCH_WEB`

Synchronously search the web for relevant deduplicated links. This usage-metered operation costs 5 base credits per search; supplying scrape_formats also charges for scraping each returned page. The response reports credits_consumed when available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of deduplicated links to return, from 1 to 25. |
| `query` | string | Yes | Natural-language web search query. |
| `fast_mode` | boolean | No | Use the query verbatim for lower latency instead of the broader default search pass. |
| `scrape_formats` | array | No | Scrape every returned link in these formats. Omit this field to avoid per-page scrape charges. |
| `scrape_timeout` | integer | No | Wall-clock seconds allowed for optional per-link scraping. Unfinished link content may be null. |
| `exclude_domains` | array | No | Bare domains to exclude from results. |
| `include_domains` | array | No | Bare domains to restrict results to. Olostep strips URL schemes and trailing slashes. |
| `remove_css_selectors` | string | No | For optional link scraping, use 'default', 'none', or a JSON-stringified array of CSS selectors to remove. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set Monitor State

**Slug:** `OLOSTEP_SET_MONITOR_STATE`

Pause future scheduled runs of an active monitor or resume scheduled runs of a paused monitor. Returns the updated monitor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `state` | string ("pause" | "resume") | Yes | Desired monitor schedule state: pause future runs or resume them. |
| `monitor_id` | string | Yes | ID of the Olostep monitor to pause or resume. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start Batch

**Slug:** `OLOSTEP_START_BATCH`

Start an asynchronous, usage-metered scrape of 1 to 10,000 URLs and return the batch ID and initial status. This action does not wait for completion; use Get Operation Result to monitor the batch and List Batch Items to consume results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `items` | array | Yes | Pages to scrape asynchronously, from 1 to 10,000 items. |
| `parser` | object | No | Parser configuration applied to every item in the batch. |
| `country` | string | No | ISO 3166-1 alpha-2 country code used for batch execution. |
| `webhook` | string | No | Public HTTP(S) URL that receives a POST when the batch completes. |
| `metadata` | object | No | Batch-level metadata. Supports at most 50 keys; keys are at most 40 characters without square brackets, and values are stringified scalars of at most 500 characters. |
| `links_on_page` | object | No | Link extraction filters applied to every item in the batch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start Crawl

**Slug:** `OLOSTEP_START_CRAWL`

Start an asynchronous, usage-metered website crawl and immediately return its crawl ID and initial status. This action does not poll: use Get Operation Result to monitor status and List Crawl Pages to consume output. Work may continue for 1-10 minutes and can consume credits for up to max_pages pages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top_n` | integer | No | With search_query, crawl only the top N relevant links found on each page. |
| `parser` | string | No | Parser name placed in scrape_options.parser for every page. Olostep automatically adds json output when a parser is supplied. |
| `formats` | array | No | Per-page output formats placed in scrape_options.formats. HTML is always included automatically; raw_pdf is not supported for crawls. |
| `timeout` | integer | No | Stop background work after this many seconds and retain completed pages. Olostep may take about 10 additional seconds to stop. |
| `webhook` | string | No | Public HTTP(S) URL that Olostep should notify when the crawl completes. |
| `max_depth` | integer | No | Maximum link depth from start_url; 0 processes only the starting page. |
| `max_pages` | integer | Yes | Maximum pages to process, from 1 to 100. This required integration bound limits usage-metered work; choose the smallest value that satisfies the task. |
| `start_url` | string | Yes | Public HTTP(S) website URL where the crawl begins. |
| `exclude_urls` | array | No | URL-path glob patterns to exclude. Exclusions override include_urls. |
| `include_urls` | array | No | URL-path glob patterns eligible for crawling. |
| `search_query` | string | No | Query used to find and rank relevant links during the crawl. |
| `include_external` | boolean | No | Also crawl first-degree links to external sites, which may increase usage. |
| `follow_robots_txt` | boolean | No | Respect robots.txt restrictions. Disable only when authorized to do so. |
| `include_subdomain` | boolean | No | Include pages on subdomains of start_url. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Monitor

**Slug:** `OLOSTEP_UPDATE_MONITOR`

Update a monitor's schedule, metadata, notification configuration, or webhook. Pass webhook as null to explicitly remove webhook delivery.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `webhook` | object | No | Replacement webhook delivery configuration. Pass null explicitly to remove the existing webhook; omit this field to leave it unchanged. |
| `metadata` | object | No | Metadata keys to merge into the monitor. Use an empty string value to delete an existing key. |
| `frequency` | string | No | New natural-language UTC schedule. Changing it recreates the monitor's underlying schedule. |
| `monitor_id` | string | Yes | Unique ID of the monitor to update. |
| `notification` | object | No | Replacement notification events and email, Slack, or SMS channels. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
