> ## Documentation Index
> Fetch the complete documentation index at: https://aisa.one/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Live Google Images SERP HTML

> Returns the image results for a keyword on Google, synchronously.

Returns the image results for a keyword on Google, synchronously. Raw page source rather than parsed results. 🔴 **Measured at 2.4 MB for a ten-result Google query, against 57 KB parsed** - take it only to check what the parser dropped. Wrapped in DataForSEO's envelope: data in `tasks[0].result`, outcome in `tasks[0].status_code` - a rejected request still returns HTTP 200.

## Example

<CodeGroup>
  ```bash REST theme={null}
  curl -X POST "https://api.aisa.one/apis/v1/dataforseo/serp/google/images/live/html" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -d '[{"keyword": "...", "location_code": "...", "location_name": "..."}]'
  ```

  ```jsonc MCP theme={null}
  // Copy this whole block into Claude Code, Codex, Cursor or any coding agent.
  // It carries everything needed to connect, authorize and run this example —
  // no key to paste, one click of Allow in the browser.
  {
    "operation_id": "post_dataforseo_serp_google_images_live_html",
    "arguments": {},
    "max_price_usd": 0.05
  }
  // ── for the agent ─────────────────────────────────────────────────────────
  // Register the AIsa MCP server, then call its `use` tool with the JSON above.
  //   name       aisa
  //   endpoint   https://mcp.aisa.one/mcp
  //   transport  streamable-http
  //   auth       OAuth. The server publishes RFC 9728 metadata, so open a
  //              browser and the user clicks Allow once — nothing to paste.
  //              If AISA_API_KEY is set, send it as a bearer header instead.
  // Use your own MCP mechanism, not a hand-edited config file:
  //   Codex        codex mcp add aisa --url https://mcp.aisa.one/mcp
  //   Claude Code  claude mcp add --transport http -s user aisa https://mcp.aisa.one/mcp
  //   Cursor / VS Code   a "url" entry for https://mcp.aisa.one/mcp in the MCP config
  // The server lists five tools over https://mcp.aisa.one/servers worth of APIs:
  // search, get_details, use, batch_use, list_categories. search and
  // get_details are free; use is billed per call and max_price_usd refuses
  // anything above the cap before spending. This operation's full contract —
  // every argument, the response shape, the price and the pitfalls — is at
  //   https://aisa.one/docs/api-reference/dataforseo/post_dataforseo-serp-google-images-live-html.md
  // Then run the call and show me the result.
  ```
</CodeGroup>

<Note>
  **First time?** Point any MCP client at `https://mcp.aisa.one/mcp` — Claude
  Code, Codex, Cursor, VS Code and the rest. Authorization is OAuth: the client
  opens a browser, you click Allow once, and there is no key to paste. The
  commands per client, and what each call costs, are on
  [aisa.one/mcp](https://aisa.one/mcp#connect).
</Note>

[Set this endpoint up in your agent →](https://aisa.one/mcp?from=/api-reference/dataforseo/post_dataforseo-serp-google-images-live-html)


## OpenAPI

````yaml openapi/dataforseo.json POST /dataforseo/serp/google/images/live/html
openapi: 3.0.3
info:
  title: DataForSEO API
  version: 1.0.0
  description: DataForSEO API endpoints exposed through the AIsa unified gateway.
servers:
  - url: https://api.aisa.one/apis/v1
security:
  - BearerAuth: []
paths:
  /dataforseo/serp/google/images/live/html:
    post:
      summary: Live Google Images SERP HTML
      description: >-
        Live SERP HTML provides a raw HTML page of 100 search engine results for
        the specified keyword, search engine, and location.
      operationId: post_dataforseo_serp_google_images_live_html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  keyword:
                    type: string
                    description: >-
                      keyword required field you can specify up to 700
                      characters in the keyword field all %## will be decoded
                      (plus character '+' will be decoded to a space character)
                      if you need to use the "%" character for your keyword,
                      please specify it as "%25"; if you need to use the “+”
                      character for your keyword, please specify it as “%2B”; if
                      this field contains such parameters as 'allinanchor:',
                      'allintext:', 'allintitle:', 'allinurl:', 'define:',
                      'filetype:', 'id:', 'inanchor:', 'info:', 'intext:',
                      'intitle:', 'inurl:', 'link:', 'related:', 'site:', the
                      charge per task will be multiplied by 5 Note: queries
                      containing the ‘cache:’ parameter are not supported and
                      will return a validation error learn more about rules and
                      limitations of keyword and keywords fields in DataForSEO
                      APIs in this Help Center article
                  location_code:
                    type: integer
                    description: >-
                      search engine location code required field if you don't
                      specify location_name or location_coordinate if you use
                      this field, you don't need to specify location_name or
                      location_coordinate you can receive the list of available
                      locations of the search engines with their location_code
                      by making a separate request to the
                      https://api.dataforseo.com/v3/serp/google/locations
                      example: 2840
                  location_name:
                    type: string
                    description: >-
                      full name of search engine location required field if you
                      don't specify location_code or location_coordinate if you
                      use this field, you don't need to specify location_code or
                      location_coordinate you can receive the list of available
                      locations of the search engine with their location_name by
                      making a separate request to the
                      https://api.dataforseo.com/v3/serp/google/locations
                      example: London,England,United Kingdom
                  location_coordinate:
                    type: string
                    description: >-
                      GPS coordinates of a location required field if you don't
                      specify location_name or location_code if you use this
                      field, you don't need to specify location_name or
                      location_code location_coordinate parameter should be
                      specified in the "latitude,longitude,radius" format the
                      maximum number of decimal digits for "latitude" and
                      "longitude": 7 the minimum value for "radius": 199.9 (mm)
                      the maximum value for "radius": 199999 (mm) example:
                      53.476225,-2.243572,200
                  language_code:
                    type: string
                    description: >-
                      search engine language code required field if you don't
                      specify language_name if you use this field, you don't
                      need to specify language_name you can receive the list of
                      available languages of the search engine with their
                      language_code by making a separate request to the
                      https://api.dataforseo.com/v3/serp/google/languages
                      example: en
                  language_name:
                    type: string
                    description: >-
                      full name of search engine language required field if you
                      don't specify language_code if you use this field, you
                      don't need to specify language_code you can receive the
                      list of available languages of the search engine with
                      their language_name by making a separate request to the
                      https://api.dataforseo.com/v3/serp/google/languages
                      example: English
                  device:
                    type: string
                    description: 'Device type: desktop or mobile'
                required:
                  - keyword
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  version:
                    type: string
                    description: The current version of the API
                  status_code:
                    type: integer
                    description: >-
                      general status code you can find the full list of the
                      response codes here
                  status_message:
                    type: string
                    description: >-
                      general informational message you can find the full list
                      of general informational messages here
                  time:
                    type: string
                    description: total execution time, seconds
                  cost:
                    type: number
                    description: Total tasks cost, USD
                  tasks:
                    type: array
                    items:
                      type: string
                    description: Array of tasks
                  tasks[].result:
                    type: array
                    items:
                      type: string
                    description: array of results
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Rate limit exceeded
        '500':
          description: Internal server error
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.