# Jigsawstack

JigsawStack provides a suite of custom small AI models integrated into scalable infrastructure, enabling developers to build AI-powered applications efficiently.

- **Category:** artificial intelligence
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 25
- **Triggers:** 0
- **Slug:** `JIGSAWSTACK`
- **Version:** 20260309_00

## Tools

### Check Image for NSFW Content

**Slug:** `JIGSAWSTACK_CHECK_NSFW`

Tool to detect NSFW content in images. Use when you need to quickly detect nudity, violence, hentai, porn and other NSFW content in images.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of the image to check for NSFW content. Either url or file_store_key must be provided. |
| `file_store_key` | string | No | File store key for an uploaded image. Either url or file_store_key must be provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Check Profanity

**Slug:** `JIGSAWSTACK_CHECK_PROFANITY`

Tool to check text for profanity and inappropriate language. Use when you need to validate user-generated content, filter inappropriate language, or sanitize text input.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | The text to validate for profanity and inappropriate language. |
| `censor_replacement` | string | No | Character used to replace profanity instances in the clean_text output. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Check Spam

**Slug:** `JIGSAWSTACK_CHECK_SPAM`

Tool to perform spam check analysis on text. Use when you need to detect spam content and get a spam confidence score.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Text to analyze for spam. Provide the content you want to check for spam indicators. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Check Spelling

**Slug:** `JIGSAWSTACK_CHECK_SPELLING`

Tool to check and correct spelling errors in text. Use when you need to validate text for spelling mistakes and get correction suggestions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Text to check for spelling errors. |
| `language_code` | string | No | Language code for spell checking (e.g., 'en', 'es', 'fr'). Defaults to 'en' if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Classify Content

**Slug:** `JIGSAWSTACK_CLASSIFY_CONTENT`

Tool to classify text and image datasets using custom labels. Use when you need to categorize content into predefined labels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `labels` | array | Yes | Array of classification label options. Must provide at least 2 labels. |
| `dataset` | array | Yes | Array of items to classify (text or image URLs). Must contain 1-128 items. |
| `multiple_labels` | boolean | No | Whether to allow multiple labels to be assigned to each dataset item. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Convert HTML to Image or PDF

**Slug:** `JIGSAWSTACK_CONVERT_HTML_TO_ANY`

Tool to convert HTML to images (PNG/JPEG/WEBP) or PDF, or capture website screenshots. Use when you need to generate visual representations of HTML content or web pages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of webpage to capture and convert. Either url or html is required. |
| `html` | string | No | Raw HTML content to convert to image or PDF. Either url or html is required. |
| `type` | string ("png" | "jpeg" | "webp" | "pdf") | No | Output format for the conversion. |
| `width` | integer | No | Viewport width in pixels. Default is 1920. |
| `height` | integer | No | Viewport height in pixels. Default is 1080. |
| `quality` | integer | No | Image quality for jpeg/webp formats (1-100). Default is 75. |
| `full_page` | boolean | No | Capture entire scrollable area if true, otherwise capture viewport only. |
| `return_type` | string ("url" | "base64" | "binary") | No | Response format: url returns temporary URL, base64 returns base64-encoded string, binary returns raw file content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Embedding V2

**Slug:** `JIGSAWSTACK_CREATE_EMBEDDING_V2`

Tool to generate enhanced vector embeddings with speaker fingerprint support using the v2 model. Use when you need to create embeddings from text, images, audio, or PDF files.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | Image URL for embedding. Required when type is 'image'. |
| `text` | string | No | The text content to generate embeddings for. Required when type is 'text' or 'text-other'. |
| `type` | string ("text" | "text-other" | "image" | "audio" | "pdf") | Yes | Content category for embedding: text, text-other, image, audio, or pdf. |
| `query` | boolean | No | Enable query mode for text embeddings. Default: false. |
| `dimensions` | integer | No | Vector dimensionality (32-4096). Default: 4096. |
| `instruction` | string | No | Custom query embedding instruction (max 400 characters). |
| `file_store_key` | string | No | Key for accessing files stored on Jigsawstack. Required for audio and pdf types. |
| `speaker_fingerprint` | boolean | No | Include speaker audio embedding for audio content. Default: false. |
| `token_overflow_mode` | string ("truncate" | "error") | No | Truncate the input to fit within token limits or return error (default). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Prediction

**Slug:** `JIGSAWSTACK_CREATE_PREDICTION`

Tool to forecast time series data using AI-powered prediction. Use when you need to predict future values based on historical data patterns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `steps` | integer | No | Number of future steps to predict. Must be between 1 and 500. |
| `dataset` | array | Yes | Array of historical data points for prediction. Must contain at least 5 data points and at most 1000 data points. The larger the dataset, the more accurate the predictions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Prompt

**Slug:** `JIGSAWSTACK_CREATE_PROMPT`

Tool to create a new prompt in the Prompt Engine for reusable LLM interactions. Use when you need to store and manage prompt templates with variable inputs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `inputs` | array | No | Array of input variable definitions specifying keys, optionality, and initial values. |
| `prompt` | string | Yes | The prompt template text with variables in {variable} format (e.g., 'Tell me about {topic}'). |
| `prompt_guard` | array | No | Array of content filters to apply (e.g., 'sexual_content', 'defamation', 'hate_speech'). |
| `return_prompt` | string | No | Return format specification - can be a string, array, or object defining the expected output structure. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Voice Clone

**Slug:** `JIGSAWSTACK_CREATE_VOICE_CLONE`

Tool to create a cloned voice for text-to-speech synthesis. Use when you need to clone a voice from an audio sample for later use in TTS operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | Public URL to an audio file containing the voice to clone. The audio must be human speech, under 60 seconds, and in a supported format (WAV, MP3). Either url or file_store_key is required. |
| `name` | string | Yes | Name for the cloned voice. This identifier will be used to reference the voice in future TTS requests. |
| `file_store_key` | string | No | Key referencing a file in JigsawStack's file storage containing the voice to clone. The audio must be human speech and under 60 seconds. Either url or file_store_key is required. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Detect Objects in Image

**Slug:** `JIGSAWSTACK_DETECT_OBJECTS`

Tool to recognize and identify objects within an image using computer vision AI. Use when you need to detect and locate objects in images.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of the image to analyze for object detection. |
| `file_store_key` | string | No | File store key for uploaded image. Use this if the image was previously uploaded to JigsawStack file storage. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Extract Data with Vision OCR

**Slug:** `JIGSAWSTACK_EXTRACT_VOCR`

Tool to recognize, describe and retrieve data within images with great accuracy using Vision OCR. Use when you need to extract text, data fields, or descriptions from images or PDFs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of the image to process. Either url or file_store_key must be provided, but not both. |
| `prompt` | string | No | Instruction for image analysis. Can be a string (e.g., 'Describe the image in detail'), an array of field names to extract (e.g., ['first name', 'last name']), or an object for complex queries. Defaults to 'Describe the image in detail' if not provided. |
| `page_range` | array | No | Two-element array [start_page, end_page] for processing specific pages in PDF documents (max 10 pages total). Pages are 1-indexed. |
| `fine_grained` | boolean | No | Enable high fidelity word-level bounding boxes within complex documents. Set to true for enhanced OCR accuracy. |
| `file_store_key` | string | No | File store key for uploaded image. Either url or file_store_key must be provided, but not both. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Search Suggestions

**Slug:** `JIGSAWSTACK_GET_SEARCH_SUGGESTIONS`

Tool to get real-time search suggestions for a given query. Use when you need to provide autocomplete suggestions or related search queries.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | The search query to get suggestions for. Maximum query character length is 200. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Sentiment

**Slug:** `JIGSAWSTACK_GET_SENTIMENT`

Tool to retrieve sentiment analysis via GET request. Use when you need to classify text into positive, negative, or neutral sentiment using a GET endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | The text content to analyze for sentiment and emotion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Generate Image from Prompt

**Slug:** `JIGSAWSTACK_IMAGE_GENERATION`

Tool to generate images from text prompts. Use when you need visual content created from a prompt.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | Destination URL to send the generated image |
| `steps` | integer | No | Denoising steps; higher = better quality, slower |
| `width` | integer | No | Image width in pixels (256-1920) |
| `height` | integer | No | Image height in pixels (256-1920) |
| `prompt` | string | Yes | Text prompt to generate image (1-5000 characters) |
| `return_type` | string ("url" | "base64" | "binary") | No | Response return type Accepted values: 'url', 'base64', or 'binary'. |
| `aspect_ratio` | string ("1:1" | "16:9" | "21:9" | "3:2" | "2:3" | "4:5" | "5:4" | "3:4" | "4:3" | "9:16" | "9:21") | No | Aspect ratio of the generated image |
| `output_format` | string ("png" | "svg") | No | Image output format |
| `advance_config` | object | No | Advanced generation options |
| `file_store_key` | string | No | Key to store generated image in file storage |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Prompts

**Slug:** `JIGSAWSTACK_LIST_PROMPTS`

Tool to list all prompts stored in the Prompt Engine. Use when you need to retrieve or view stored prompts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `limit` | integer | No | Maximum number of prompts to return. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Run Prompt By ID

**Slug:** `JIGSAWSTACK_RUN_PROMPT_BY_ID`

Tool to execute a stored prompt using its prompt engine ID. Use when you need to run a pre-configured prompt template with dynamic input values.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | UUID of the stored prompt to execute. |
| `stream` | boolean | No | Whether to stream the response. Set to true for streaming, false for complete response. |
| `input_values` | object | No | Dictionary of input variables to substitute in the prompt template. Each value must be 1-500 characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 Website

**Slug:** `JIGSAWSTACK_SCRAPE_WEBSITE`

Tool to scrape any website and extract structured data using AI-powered element prompts or CSS selectors. Use when you need to extract specific information from web pages without writing custom scraping code. Supports both URL-based scraping and direct HTML content parsing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of the website to scrape. Either url or html must be provided. |
| `html` | string | No | Raw HTML content to scrape. Either url or html must be provided. |
| `scale` | integer | No | Page scale factor (min: 1). |
| `width` | integer | No | Custom viewport width in pixels. |
| `height` | integer | No | Custom viewport height in pixels. |
| `scroll` | boolean | No | Enable automatic scrolling during scraping. |
| `cookies` | array | No | Array of cookies to set before scraping. |
| `features` | array | No | Additional features to extract from the page (meta, link). |
| `wait_for` | object | No | Wait for configuration before scraping. |
| `byo_proxy` | object | No | Bring Your Own Proxy configuration. |
| `is_mobile` | boolean | No | Emulate mobile device viewport. |
| `selectors` | array | No | Array of CSS selectors to extract (max 5). Either element_prompts or selectors is required. |
| `size_preset` | string | No | Viewport size preset (e.g., 'HD', 'FHD', 'iPhone 13 Pro', 'A4'). |
| `goto_options` | object | No | Options for page navigation. |
| `http_headers` | object | No | Custom HTTP headers to send with the request. |
| `page_position` | integer | No | Page position/scroll position (min: 1). |
| `advance_config` | object | No | Advanced configuration options for scraping. |
| `element_prompts` | string | No | Array of strings describing elements to extract (e.g., ['titles', 'prices']) or object with custom extraction rules. Either element_prompts or selectors is required. |
| `force_rotate_proxy` | boolean | No | Force proxy rotation for this request. |
| `root_element_selector` | string | No | CSS selector for the root element to scrape from. |
| `reject_request_pattern` | array | No | Array of regex patterns to reject requests (e.g., block ads, trackers). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Sentiment Analysis

**Slug:** `JIGSAWSTACK_SENTIMENT_ANALYSIS`

Tool to analyze text sentiment. Use when you need to classify text into positive, negative, or neutral sentiment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | The text content to analyze for sentiment and emotion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Summarize Text

**Slug:** `JIGSAWSTACK_SUMMARIZE_TEXT`

Tool to generate concise, intelligent summaries of text or documents with AI. Use when you need to condense long content into bullet points or paragraphs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | URL of document to summarize. Either text or url must be provided. |
| `text` | string | No | Text content to summarize. Either text or url must be provided. |
| `type` | string ("points" | "text") | No | Summary format: 'points' returns bullet points (list of strings), 'text' returns continuous prose (single string). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Text to Speech

**Slug:** `JIGSAWSTACK_TEXT_TO_SPEECH`

Tool to convert text to natural-sounding speech. Use when you need to generate an audio file from text input.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Text to generate speech from. Standard TTS supports 5-1500 characters; voice cloning supports 5-500 characters. |
| `accent` | string | No | Accent identifier for standard TTS (e.g., 'en-US-female-3', 'en-GB-male-2', 'es-ES-female-9'). Required for standard TTS; ignored when using voice cloning. See API documentation for complete list of supported accents. |
| `speaker_clone_url` | string | No | Public URL to an audio sample for voice cloning; mutually exclusive with file_store_key. |
| `speaker_clone_file_store_key` | string | No | File store key for an uploaded audio sample for voice cloning; mutually exclusive with URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Translate Text

**Slug:** `JIGSAWSTACK_TRANSLATE_TEXT`

Tool to translate text from one language to another. Use when you need to convert text between different languages with automatic language detection support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Text to translate. Can be a single string or an array of strings. The response format will match the input format. |
| `target_language` | string ("af" | "am" | "ar" | "as" | "az" | "ba" | "be" | "bg" | "bn" | "bo" | "br" | "bs" | "ca" | "ch" | "co" | "cs" | "cy" | "da" | "de" | "dv" | "dz" | "el" | "en" | "eo" | "es" | "et" | "eu" | "fa" | "ff" | "fi" | "fj" | "fo" | "fr" | "fy" | "ga" | "gd" | "gl" | "gu" | "gv" | "ha" | "he" | "hi" | "hr" | "ht" | "hu" | "hy" | "id" | "ig" | "is" | "it" | "iu" | "ja" | "jv" | "ka" | "kg" | "ki" | "kj" | "kk" | "kl" | "km" | "kn" | "ko" | "kr" | "ks" | "ku" | "kv" | "kw" | "ky" | "la" | "lb" | "lg" | "li" | "ln" | "lo" | "lt" | "lu" | "lv" | "mg" | "mh" | "mi" | "mk" | "ml" | "mn" | "mo" | "mr" | "ms" | "mt" | "my" | "na" | "nb" | "nd" | "ne" | "ng" | "nl" | "nn" | "no" | "nr" | "nv" | "ny" | "oc" | "oj" | "om" | "or" | "os" | "pa" | "pi" | "pl" | "ps" | "pt" | "qu" | "rm" | "rn" | "ro" | "ru" | "rw" | "sa" | "sc" | "sd" | "se" | "sg" | "sh" | "si" | "sk" | "sl" | "sm" | "sn" | "so" | "sq" | "sr" | "ss" | "st" | "su" | "sv" | "sw" | "ta" | "te" | "tg" | "th" | "ti" | "tk" | "tl" | "tn" | "to" | "tr" | "ts" | "tt" | "tw" | "ty" | "ug" | "uk" | "ur" | "uz" | "ve" | "vi" | "vo" | "wo" | "xh" | "yi" | "yo" | "zh" | "zh-TW" | "zu") | Yes | Target language code for translation (ISO 639-1 format). The text will be translated into this language. |
| `current_language` | string ("af" | "am" | "ar" | "as" | "az" | "ba" | "be" | "bg" | "bn" | "bo" | "br" | "bs" | "ca" | "ch" | "co" | "cs" | "cy" | "da" | "de" | "dv" | "dz" | "el" | "en" | "eo" | "es" | "et" | "eu" | "fa" | "ff" | "fi" | "fj" | "fo" | "fr" | "fy" | "ga" | "gd" | "gl" | "gu" | "gv" | "ha" | "he" | "hi" | "hr" | "ht" | "hu" | "hy" | "id" | "ig" | "is" | "it" | "iu" | "ja" | "jv" | "ka" | "kg" | "ki" | "kj" | "kk" | "kl" | "km" | "kn" | "ko" | "kr" | "ks" | "ku" | "kv" | "kw" | "ky" | "la" | "lb" | "lg" | "li" | "ln" | "lo" | "lt" | "lu" | "lv" | "mg" | "mh" | "mi" | "mk" | "ml" | "mn" | "mo" | "mr" | "ms" | "mt" | "my" | "na" | "nb" | "nd" | "ne" | "ng" | "nl" | "nn" | "no" | "nr" | "nv" | "ny" | "oc" | "oj" | "om" | "or" | "os" | "pa" | "pi" | "pl" | "ps" | "pt" | "qu" | "rm" | "rn" | "ro" | "ru" | "rw" | "sa" | "sc" | "sd" | "se" | "sg" | "sh" | "si" | "sk" | "sl" | "sm" | "sn" | "so" | "sq" | "sr" | "ss" | "st" | "su" | "sv" | "sw" | "ta" | "te" | "tg" | "th" | "ti" | "tk" | "tl" | "tn" | "to" | "tr" | "ts" | "tt" | "tw" | "ty" | "ug" | "uk" | "ur" | "uz" | "ve" | "vi" | "vo" | "wo" | "xh" | "yi" | "yo" | "zh" | "zh-TW" | "zu") | No | ISO 639-1 language codes supported by the translation API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |

### Web Search

**Slug:** `JIGSAWSTACK_WEB_SEARCH`

Tool to perform AI-powered web search with AI overview and geo-aware results. Use when you need concise search results enriched with AI summary and location context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | The search value (max 400 characters). |
| `byo_urls` | array | No | Restrict results to these URLs only. |
| `ai_overview` | boolean | No | Include AI-generated overview of the results. |
| `auto_scrape` | boolean | No | Enable automatic URL scraping for richer content extraction. |
| `max_results` | integer | No | Maximum number of results to return (excluding BYO URLs). |
| `safe_search` | string ("moderate" | "strict" | "off") | No | Safe search level. |
| `spell_check` | boolean | No | Whether to perform spell check on the query. |
| `country_code` | string | No | ISO country code for geo-aware search (e.g., 'USA', 'GBR', 'BEN'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | 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 |
