{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Images Scraper - Image URLs, Sizes, Sources & Filters",
    "description": "Scrape Google Images by search term or link: full-size image URL, width and height, thumbnail, title, source page, site, file size, dominant colour, product and licence data. Every Google filter, size and aspect checks, related searches, monitor mode. No login.",
    "version": "0.1",
    "x-build-id": "xAeeWFO4NAwLnoUWh"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/topapi~google-images-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-topapi-google-images-scraper",
        "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/topapi~google-images-scraper/runs": {
      "post": {
        "operationId": "runs-sync-topapi-google-images-scraper",
        "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/topapi~google-images-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-topapi-google-images-scraper",
        "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": {
          "queries": {
            "title": "Search terms",
            "type": "array",
            "description": "One Google Images search per line, e.g. \"red panda\", \"modern kitchen\", \"nike air max 90\". A pasted Google Images link works here too. Empty = the sample search \"red panda\".",
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "Google Images links",
            "type": "array",
            "description": "Pasted Google Images result links, e.g. https://www.google.com/search?q=red+panda&udm=2&tbs=isz:l. Each keeps its own term, filters (tbs), country, language and safe search.",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Country",
            "enum": [
              "us",
              "gb",
              "ca",
              "au",
              "nz",
              "ie",
              "in",
              "sg",
              "za",
              "ph",
              "my",
              "ng",
              "ke",
              "pk",
              "ae",
              "sa",
              "eg",
              "hk",
              "tw",
              "jp",
              "kr",
              "id",
              "th",
              "vn",
              "de",
              "at",
              "ch",
              "fr",
              "be",
              "nl",
              "es",
              "it",
              "pt",
              "br",
              "mx",
              "ar",
              "co",
              "cl",
              "pe",
              "pl",
              "cz",
              "hu",
              "ro",
              "gr",
              "tr",
              "se",
              "no",
              "dk",
              "fi",
              "ua",
              "il"
            ],
            "type": "string",
            "description": "Which Google Images to search (Google domain, gl and the proxy country). Results and product prices follow the market Google shows for this country.",
            "default": "us"
          },
          "language": {
            "title": "Language",
            "enum": [
              "en",
              "de",
              "fr",
              "es",
              "it",
              "pt",
              "pt-BR",
              "nl",
              "pl",
              "sv",
              "da",
              "no",
              "fi",
              "cs",
              "hu",
              "ro",
              "el",
              "tr",
              "ru",
              "uk",
              "ar",
              "iw",
              "hi",
              "id",
              "ms",
              "th",
              "vi",
              "ja",
              "ko",
              "zh-CN",
              "zh-TW"
            ],
            "type": "string",
            "description": "Interface and result language (hl), e.g. English or German.",
            "default": "en"
          },
          "imageSize": {
            "title": "Size",
            "enum": [
              "any",
              "large",
              "medium",
              "icon",
              "400x300",
              "640x480",
              "800x600",
              "1024x768",
              "2mp",
              "4mp",
              "6mp",
              "8mp",
              "10mp",
              "12mp",
              "15mp",
              "20mp",
              "40mp",
              "70mp",
              "exact"
            ],
            "type": "string",
            "description": "Google's size filter. \"Larger than\" and \"Exactly\" are also checked on every image's own width and height before it is delivered.",
            "default": "any"
          },
          "exactWidth": {
            "title": "Exact width (px)",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "With Size = Exactly: the width in pixels, e.g. 1920."
          },
          "exactHeight": {
            "title": "Exact height (px)",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "With Size = Exactly: the height in pixels, e.g. 1080."
          },
          "imageColor": {
            "title": "Colour",
            "enum": [
              "any",
              "color",
              "blackAndWhite",
              "transparent",
              "red",
              "orange",
              "yellow",
              "green",
              "teal",
              "blue",
              "purple",
              "pink",
              "white",
              "gray",
              "black",
              "brown"
            ],
            "type": "string",
            "description": "Google's colour filter: full colour, black and white, transparent background or one dominant colour.",
            "default": "any"
          },
          "imageType": {
            "title": "Type",
            "enum": [
              "any",
              "photo",
              "face",
              "clipart",
              "lineart",
              "animated"
            ],
            "type": "string",
            "description": "Google's type filter: photo, face, clip art, line drawing or animated GIF.",
            "default": "any"
          },
          "fileType": {
            "title": "File type",
            "enum": [
              "any",
              "jpg",
              "png",
              "gif",
              "bmp",
              "svg",
              "webp",
              "ico",
              "raw"
            ],
            "type": "string",
            "description": "Google's file-format filter, e.g. PNG or SVG.",
            "default": "any"
          },
          "timeRange": {
            "title": "Time",
            "enum": [
              "any",
              "pastHour",
              "pastDay",
              "pastWeek",
              "pastMonth",
              "pastYear"
            ],
            "type": "string",
            "description": "Only images Google found within this period. Ignored when a date range is set.",
            "default": "any"
          },
          "dateFrom": {
            "title": "Date from",
            "type": "string",
            "description": "Custom date range start (YYYY-MM-DD), e.g. 2026-01-01. Empty = no lower bound."
          },
          "dateTo": {
            "title": "Date to",
            "type": "string",
            "description": "Custom date range end (YYYY-MM-DD). Empty = no upper bound."
          },
          "usageRights": {
            "title": "Usage rights",
            "enum": [
              "any",
              "creativeCommons",
              "commercial"
            ],
            "type": "string",
            "description": "Google's licence filter: Creative Commons or commercial & other licenses.",
            "default": "any"
          },
          "safeSearch": {
            "title": "SafeSearch",
            "enum": [
              "off",
              "moderate",
              "strict"
            ],
            "type": "string",
            "description": "Google SafeSearch for explicit results.",
            "default": "off"
          },
          "site": {
            "title": "Only from site",
            "type": "string",
            "description": "Only images from this website (Google's site: operator), e.g. \"wikipedia.org\". Empty = every site."
          },
          "aspectRatio": {
            "title": "Aspect ratio",
            "enum": [
              "any",
              "tall",
              "square",
              "wide",
              "panoramic"
            ],
            "type": "string",
            "description": "Keep only images of this shape, checked on each image's width and height (Google no longer applies its own aspect filter).",
            "default": "any"
          },
          "minWidth": {
            "title": "Minimum width (px)",
            "minimum": 0,
            "maximum": 20000,
            "type": "integer",
            "description": "Drop images narrower than this, e.g. 1200. 0 = no minimum.",
            "default": 0
          },
          "minHeight": {
            "title": "Minimum height (px)",
            "minimum": 0,
            "maximum": 20000,
            "type": "integer",
            "description": "Drop images shorter than this. 0 = no minimum.",
            "default": 0
          },
          "skipCrawlerOnlyImages": {
            "title": "Skip crawler-only links",
            "type": "boolean",
            "description": "Drop images whose link only answers search crawlers (Facebook / Instagram lookaside \"crawler\" URLs).",
            "default": false
          },
          "removeDuplicatesAcrossQueries": {
            "title": "Dedupe across searches",
            "type": "boolean",
            "description": "Deliver each image once per run even when several searches find it (the first search keeps it).",
            "default": false
          },
          "checkImages": {
            "title": "Check image links",
            "type": "boolean",
            "description": "Ask each image's host for the first bytes of the file: whether the link still serves an image, its real content type and its size in bytes. Paid add-on per checked image.",
            "default": false
          },
          "expandWithRelatedSearches": {
            "title": "Expand with related searches",
            "type": "boolean",
            "description": "When Google runs out of new images before your per-search cap, also search Google's own related-search chips (e.g. \"baby red panda\") and add those images.",
            "default": false
          },
          "maxRelatedSearches": {
            "title": "Max related searches",
            "minimum": 1,
            "maximum": 30,
            "type": "integer",
            "description": "How many related searches one search may expand into.",
            "default": 5
          },
          "relatedSearchesExclude": {
            "title": "Skip related searches containing",
            "type": "array",
            "description": "Related searches containing any of these words are not searched, e.g. \"drawing\", \"cartoon\".",
            "items": {
              "type": "string"
            }
          },
          "includeRelatedQueries": {
            "title": "Output related searches",
            "type": "boolean",
            "description": "Add one free row per search (type \"relatedQueries\") with Google's related-search chips.",
            "default": false
          },
          "monitorMode": {
            "title": "Monitor mode (only new images)",
            "type": "boolean",
            "description": "Read each search's first results page (up to 100 images) and deliver only images not delivered by an earlier run with the same monitor store. A poll with nothing new delivers and charges nothing.",
            "default": false
          },
          "monitorStoreName": {
            "title": "Monitor store name",
            "type": "string",
            "description": "Named key-value store that remembers delivered images, e.g. \"my-brand-images\". Empty = \"google-images-monitor\"."
          },
          "maxResultsPerQuery": {
            "title": "Max images per search",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Images to deliver per search. Page 1 carries up to 100; Google's own depth is about 150-400 per search (more with related searches).",
            "default": 100
          },
          "maxResults": {
            "title": "Max images in total",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Cap for the whole run across all searches. 0 = no run cap (each search still stops at its own cap).",
            "default": 0
          },
          "compact": {
            "title": "Compact output",
            "type": "boolean",
            "description": "Core fields only (query, position, title, image URL and size, thumbnail, source page, domain, site) - trimmed for AI / MCP pipelines.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Google requests in flight at once. Searches run in parallel; pages within a search run one after another.",
            "default": 4
          },
          "tbs": {
            "title": "Raw tbs parameter",
            "type": "string",
            "description": "Extra Google tbs filter codes added to every search, e.g. \"isz:l,ic:trans\". For codes not in the menus above."
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}