# Gemini AI Scraper (`jupri/google-bard`) Actor

Interact with Gemini AI formerly (Google Bard) and save conversation to dataset

- **URL**: https://apify.com/jupri/google-bard.md
- **Developed by:** [cat](https://apify.com/jupri) (community)
- **Categories:** AI, Developer tools
- **Stats:** 95 total users, 1 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

$30.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

### Welcome to Google Bard AI Scraper

<img src="https://static5.depositphotos.com/1001046/514/v/450/depositphotos_5148743-stock-illustration-outline-illustration-of-sitting-cat.jpg" width="240"><img src="https://raw.githubusercontent.com/JupriGH/resources/main/cats/robo.png" width="140"/>

### About Google Bard AI

**Bard** is a conversational [generative artificial intelligence](https://en.wikipedia.org/wiki/Generative_artificial_intelligence "Generative artificial intelligence")  [chatbot](https://en.wikipedia.org/wiki/Chatbot "Chatbot") developed by [Google](https://en.wikipedia.org/wiki/Google "Google"), based initially on the [LaMDA](https://en.wikipedia.org/wiki/LaMDA "LaMDA") family of [large language models](https://en.wikipedia.org/wiki/Large_language_models "Large language models") (LLMs) and later the [PaLM](https://en.wikipedia.org/wiki/PaLM "PaLM") LLM. It was developed as a direct response to the rise of [OpenAI](https://en.wikipedia.org/wiki/OpenAI "OpenAI")'s [ChatGPT](https://en.wikipedia.org/wiki/ChatGPT "ChatGPT"), and was released in a limited capacity in March 2023 to lukewarm responses, before expanding to other countries.

> ***Notes :*** 
> Bard is still in its experimental phase (therefore also this Actor). 
> Chatting with it and rating its responses will help improve the experience.

### About This Actor

Use this Actor to send prompts to **Google Bard AI** or Interact with it, and save conversation to a Dataset.

> ***Disclaimer:***  
> This actor need a value from your cookies, otherwise it won't works.

###  TOKEN

**How to get Bard Token (Cookie) value :**

 - Access [Google Bard AI](https://bard.google.com) homepage. *(Google Account is needed)*
 - Open Developer Tools *`(Ctrl+Shift+I)`*
 - Go to Application Tab -> Storage -> Cookies -> https://bard.google.com
 - Search for a ``cookie`` named:  **__Secure-1PSID**  *(this is your token)*
 - The value is ended with a dot,  *example :* **```WAgzxxx_Zhxxx_xxx_b7XX.```**
 - Then copy and paste.

**Is it save to share this cookie (__Secure-1PSID) ?**

I am totally have no clue. You just have to trust me, but please ask Google to make sure.

<img src="https://raw.githubusercontent.com/JupriGH/resources/main/screenshots/bard-cookie.png">

### TUTORIAL

***One step closer toward AI Global domination.*** 

***Example #1: Basic Usage***

Sending prompts

```json
{
	"token": "YOUR_BARD_TOKEN_VALUE",
	"query": [
		"What is Apify ?",
		"Is Web Scraping legal ?",
		"Who is Chuck Norris ?",
		"Python vs NodeJS"
	]
}
````

***Example #2: Keeping The Conversation Context***

Use `keep_context` parameter to maintain conversation context. When this is enabled, all queries *(prompts)* will be requested in sequence instead of using workers.

```json
{
	"token": "YOUR_BARD_TOKEN_VALUE",
	"keep_context": true,
	"query": [
		"Who is chuck norris ?",
		"Where is he ?",
		"How old is he ?"
	]
}
```

***Example #3: Attaching Images***

You can attach `image` to corresponding `prompts`.

***Important Notes :***

- `image` inputs must match `prompt` inputs. Use empty string ("") for
  prompt that doesn't need image.
- Images links must be publicly accessible.
- Supported image format : `.jpg, png, webp`

***input :***

 <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png" width="240">

```json
{
	"token":  "YOUR_BARD_TOKEN_VALUE",
	"query":  [
		"What's is Apify ?",
		"Describe this image.",
		"Read text from this image."
	],
	"image":  [
		"",
		"https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png",
		"https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png"
	],
}
```

***output :***

```yaml
[
    {
        "query": "What's is Apify ?",
        "choices": [
            {
                "id": "rc_a00f5b248ce94fab",
                "content": "Apify is a cloud platform that helps you build reliable web scrapers and automate anything you can do manually in a web browser. It is a serverless platform, which means that you don't need to worry about managing servers or infrastructure. You can simply focus on building your scrapers and automation tools.\n\nApify provides a variety of features that make it easy to build and deploy web scrapers and automation tools, including:\n\n* A powerful JavaScript engine that allows you to control the Chrome browser and interact with websites in any way you want.\n* A library of pre-built actors that can be used to automate common tasks such as scraping product information, extracting social media data, and converting PDFs to text.\n* A scheduler that allows you to run your scrapers and automation tools on a schedule.\n* A proxy network that allows you to scrape websites anonymously and reliably.\n* A storage service that allows you to store the data that you extract from websites.\n\nApify is used by a wide range of businesses and organizations, including startups, Fortune 500 companies, and government agencies. It is used to automate a variety of tasks, such as:\n\n* Scraping product information from e-commerce websites\n* Extracting social media data\n* Converting PDFs to text\n* Automating customer support tasks\n* Gathering market research data\n* Building data pipelines\n\nOverall, Apify is a powerful and versatile platform that can be used to automate any task that can be done manually in a web browser.\n\nHere are some examples of how Apify is used:\n\n* A company uses Apify to scrape product information from e-commerce websites and populate their own product catalog.\n* A marketing agency uses Apify to extract social media data from their clients' competitors and track their brand mentions.\n* A research firm uses Apify to scrape data from government websites and build a database of public records.\n* A customer support team uses Apify to automate tasks such as responding to common questions and generating reports.\n\nIf you are looking for a way to automate tasks on the web, Apify is a great option to consider."
            }
        ]
    },
    {
        "query": "Describe this image.",
        "choices": [
            {
                "id": "rc_867e5a2df31be738",
                "content": "The image shows a colorful logo of the company Apify on a black background. The logo is a combination of geometric shapes and text. The main shape is a circle with a triangle inside it. The circle is colored blue, green, and purple, and the triangle is colored yellow. The text \"APIFY\" is written in white letters below the circle.\r\n\r\nThe overall impression of the logo is modern, playful, and creative. It is likely to appeal to a target audience of tech-savvy users who are interested in web scraping and automation."
            }
        ]
    },
    {
        "query": "Read text from this image.",
        "choices": [
            {
                "id": "rc_ef756a98597a5c81",
                "content": "The text in the image is:\r\n\r\n**APIFY**\r\n\r\nThis is the logo of Apify, a company that provides web scraping and automation tools."
            }
        ]
    }
]
```

***Example #4: Interact directly (Web GUI)***

You can interact with Google Bard AI directly through The Actor Web GUI using  parameter: `interactive=true`

```json
{
	"token": "YOUR_BARD_TOKEN_VALUE",
	"keep_context": true,
	"interactive": true,
	"query": [
		"What is Apify ?"
	]
}
```

***Accessing Web UI :***

- Open the **URL** displayed in console, or open **Life View**.
- Type **`/quit`** to end conversation.
- All Conversation results will be saved to the Actor default dataset.

![enter image description here](https://juprigh.github.io/res/bard-ui-1.png)

***Console Output :***

```
📝 Arguments :
	✅ query : ['What is Apify ?', 'Is Web Scraping legal ?', 'Who is Chuck Norris ?', 'Python vs NodeJS']
	✅ token : *******
	✅ interactive : True
🌐 [server] <BARD> Server running on https://rvblhiy8bvsv.runs.apify.net (path: None) ...
🌐 [server] Server shutdown ...
😼 removing emptiness ...
🎂 4 results available.
👋 Done.
```

### OUTPUT

***JSON Output***

```json
[
    {
        "prompt": "What is Apify ?",
        "answer": {
            "content": "Apify is a company that provides a platform for web scraping, data extraction, and automation. It is a cloud-based platform that allows users to create and run bots that can automate tasks on websites. Apify offers a variety of tools and features that make it easy to create and run bots, including a web scraper, a data extraction tool, and a chatbot builder. Apify also offers a marketplace where users can find and share bots created by other users.\n\nApify is a popular tool for a variety of tasks, including:\n\n* Web scraping: Apify's web scraper can be used to extract data from websites. This data can be used for a variety of purposes, such as product research, price comparison, and market analysis.\n* Data extraction: Apify's data extraction tool can be used to extract data from documents, spreadsheets, and other files. This data can be used for a variety of purposes, such as customer relationship management (CRM), marketing, and sales.\n* Chatbots: Apify's chatbot builder can be used to create chatbots that can interact with users on websites and in messaging apps. Chatbots can be used for a variety of purposes, such as customer service, sales, and marketing.\n\nApify is a powerful tool that can be used for a variety of tasks. It is easy to use and offers a variety of features that make it a valuable tool for businesses and individuals.\n\nHere are some of the benefits of using Apify:\n\n* Easy to use: Apify is a very easy-to-use platform. Even if you have no experience with web scraping or automation, you can create and run bots with Apify.\n* Powerful: Apify is a very powerful platform. It offers a variety of features that make it possible to create bots that can do a wide range of tasks.\n* Scalable: Apify is a very scalable platform. You can create and run as many bots as you need without having to worry about performance or cost.\n* Cost-effective: Apify is a very cost-effective platform. The prices are very reasonable and there are no hidden fees.\n\nIf you are looking for a powerful and easy-to-use platform for web scraping, data extraction, and automation, then Apify is a great option.",
            "conversation_id": "c_8dc5fcb8bb486751",
            "response_id": "r_8dc5fcb8bb486d1a",
            "related": [
                {
                    "text": "Apify",
                    "type": 1
                },
                {
                    "text": "What is Apify used for?",
                    "type": 4
                },
                {
                    "text": "Is Apify SDK free?",
                    "type": 4
                }
            ]
        }
    },
    {
        "prompt": "Is Web Scraping legal ?",
        "answer": {
            "content": "Web scraping is the process of extracting data from websites using automated means. It is a legal activity in most jurisdictions, as long as the data being scraped is publicly available. However, there are some exceptions to this rule. For example, it is illegal to scrape data that is protected by copyright or that is considered to be confidential. Additionally, some websites have terms of service that prohibit scraping. If you are unsure whether or not it is legal to scrape a particular website, it is best to contact the website owner for clarification.\n\nHere are some of the legal considerations for web scraping:\n\n* **Copyright law:** Copyright law protects original works of authorship, including text, images, and code. If you scrape data from a website that is protected by copyright, you may be infringing on the copyright holder's rights.\n* **Confidentiality:** Some data is considered to be confidential, such as trade secrets or personal information. If you scrape confidential data without permission, you may be liable for damages.\n* **Terms of service:** Many websites have terms of service that prohibit scraping. If you violate the terms of service, you may be subject to termination of your account or other penalties.\n\nIf you are considering web scraping, it is important to be aware of the legal considerations. By following the law, you can avoid potential legal problems.\n\nHere are some tips for legal web scraping:\n\n* Only scrape data that is publicly available.\n* Do not scrape data that is protected by copyright or that is considered to be confidential.\n* Respect the terms of service of the websites you are scraping.\n* If you are unsure whether or not it is legal to scrape a particular website, contact the website owner for clarification.\n\nBy following these tips, you can help to ensure that your web scraping activities are legal and ethical.",
            "conversation_id": "c_53aafa5339848c48",
            "response_id": "r_53aafa5339848acd",
            "related": [
                {
                    "text": "Is Web Scraping legal ?",
                    "type": 1
                },
                {
                    "text": "Is web scraping legal in India?",
                    "type": 4
                },
                {
                    "text": "Can websites detect web scraping?",
                    "type": 4
                }
            ]
        }
    },
    {
        "prompt": "Python vs NodeJS",
        "answer": {
            "content": "Python and Node.js are both popular programming languages that are used for a variety of tasks, including web development, data science, and machine learning. However, there are some key differences between the two languages that make them better suited for different purposes.\n\n**Python**\n\n* Python is a general-purpose language that is known for its simplicity and readability.\n* It is a compiled language, which means that it is converted to machine code before it is executed. This makes Python programs faster than interpreted languages, such as Node.js.\n* Python has a large and active community of developers, which means that there are a wide variety of libraries and tools available.\n* Python is often used for data science and machine learning applications.\n\n**Node.js**\n\n* Node.js is an open-source JavaScript runtime environment that is used to create scalable and high-performance web applications.\n* It is an interpreted language, which means that it is executed line by line. This makes Node.js programs slower than compiled languages, such as Python.\n* Node.js has a large and active community of developers, which means that there are a wide variety of libraries and tools available.\n* Node.js is often used for real-time web applications, such as chat applications and video streaming applications.\n\n**Which language should you choose?**\n\nThe best language for you will depend on your specific needs and requirements. If you are looking for a language that is simple, readable, and has a large community of developers, then Python is a good choice. If you are looking for a language that is fast and scalable, then Node.js is a good choice.\n\nHere is a table that summarizes the key differences between Python and Node.js:\n\n| Feature | Python | Node.js |\n|---|---|---|\n| Language type | General-purpose | JavaScript runtime environment |\n| Compilation | Compiled | Interpreted |\n| Speed | Faster | Slower |\n| Community | Large and active | Large and active |\n| Use cases | Data science, machine learning, web development | Real-time web applications, chat applications, video streaming applications |\n\nUltimately, the best way to decide which language is right for you is to try both of them and see which one you prefer.",
            "conversation_id": "c_adfcf077433d325",
            "response_id": "r_adfcf077433dbda",
            "related": [
                {
                    "text": "Python vs NodeJS",
                    "type": 1
                },
                {
                    "text": "Which is faster Python or NodeJS?",
                    "type": 4
                },
                {
                    "text": "Is Node easier than Python?",
                    "type": 4
                }
            ]
        }
    }
]
```

***About Chuck Norris :***

![enter image description here](https://juprigh.github.io/res/bard-ui-2.png)

***About Michael Jackson  :***

Maintain conversation context using `keep_context = true`

![enter image description here](https://juprigh.github.io/res/bard-ui-3.png)

### Support

Congratulation! You have mastered **"Using The Google Bard AI Scraper"**.

- Any Question
- Share your experience
- Submit an Issue

Please contact us on [Issues Page](https://console.apify.com/actors/PT19u3zRwz7I1IFmP/issues)

# Actor input Schema

## `token` (type: `string`):

<b>How to get Token value ?</b><br><br>Access \<a target="\_blank" href=https://bard.google.com>Google Bard AI</a><br>Search for cookie named: <b>\_\_Secure-1PSID</b><br>then copy and paste here.

## `response_size` (type: `string`):

No description

## `response_type` (type: `string`):

No description

## `keep_context` (type: `boolean`):

Keep conversation context intact.

## `interactive` (type: `boolean`):

Use Actor's Web UI to interact directly with <b>Google Bard AI</b> (activate built-in httpd).

## `query` (type: `array`):

Enter prompts here

## `image` (type: `array`):

Attach images corresponding to queries above.

## Actor input object example

```json
{
  "query": [
    "Describe this image.",
    "What is Apify ?",
    "Is Web Scraping legal ?",
    "Who is Chuck Norris ?"
  ],
  "image": [
    "https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png"
  ]
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "query": [
        "Describe this image.",
        "What is Apify ?",
        "Is Web Scraping legal ?",
        "Who is Chuck Norris ?"
    ],
    "image": [
        "https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("jupri/google-bard").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "query": [
        "Describe this image.",
        "What is Apify ?",
        "Is Web Scraping legal ?",
        "Who is Chuck Norris ?",
    ],
    "image": ["https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png"],
}

# Run the Actor and wait for it to finish
run = client.actor("jupri/google-bard").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "query": [
    "Describe this image.",
    "What is Apify ?",
    "Is Web Scraping legal ?",
    "Who is Chuck Norris ?"
  ],
  "image": [
    "https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Apify-logo.svg/512px-Apify-logo.svg.png"
  ]
}' |
apify call jupri/google-bard --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=jupri/google-bard",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Gemini AI Scraper",
        "description": "Interact with Gemini AI formerly (Google Bard) and save conversation to dataset",
        "version": "0.1",
        "x-build-id": "e2fWCcuwL7GBJEMrN"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/jupri~google-bard/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-jupri-google-bard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/jupri~google-bard/runs": {
            "post": {
                "operationId": "runs-sync-jupri-google-bard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/jupri~google-bard/run-sync": {
            "post": {
                "operationId": "run-sync-jupri-google-bard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "token": {
                        "title": "🔑 Token",
                        "type": "string",
                        "description": "<b>How to get Token value ?</b><br><br>Access <a target=\"_blank\" href=https://bard.google.com>Google Bard AI</a><br>Search for cookie named: <b>__Secure-1PSID</b><br>then copy and paste here."
                    },
                    "response_size": {
                        "title": "Response Size",
                        "enum": [
                            "short",
                            "long"
                        ],
                        "type": "string",
                        "description": ""
                    },
                    "response_type": {
                        "title": "Response Type",
                        "enum": [
                            "casual",
                            "simple",
                            "pro"
                        ],
                        "type": "string",
                        "description": ""
                    },
                    "keep_context": {
                        "title": "Remember conversation",
                        "type": "boolean",
                        "description": "Keep conversation context intact."
                    },
                    "interactive": {
                        "title": "Interactive HTTPD",
                        "type": "boolean",
                        "description": "Use Actor's Web UI to interact directly with <b>Google Bard AI</b> (activate built-in httpd)."
                    },
                    "query": {
                        "title": "",
                        "type": "array",
                        "description": "Enter prompts here",
                        "items": {
                            "type": "string"
                        }
                    },
                    "image": {
                        "title": "",
                        "type": "array",
                        "description": "Attach images corresponding to queries above.",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
