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

# Create an analysis

> Submit a web page URL or an uploaded image to start a visual attention analysis.

Create an analysis for an image or a web page URL. The request returns immediately with `201 Created`, the new analysis `id`, and a `location` URL (also returned in the `Location` response header). Poll [Get an analysis](/api-reference/get-analysis) with the returned `id` to retrieve the result.

For the underlying concepts, see the [Input model](/concepts/input-model) and [Predictions model](/concepts/predictions-model).

<ParamField body="input" type="object" required>
  The input to analyze.

  <Expandable title="input properties">
    <ParamField body="type" type="string" required>
      `image` or `webPageUrl`.
    </ParamField>

    <ParamField body="content" type="string" required>
      For `image`, a Base64-encoded PNG or JPEG. For `webPageUrl`, the page URL.
    </ParamField>

    <ParamField body="medium" type="string" required>
      `desktopWeb`, `mobileWeb`, or `generic`.
    </ParamField>

    <ParamField body="title" type="string" required>
      A label for the analysis (1–2048 characters).
    </ParamField>

    <ParamField body="removeCookieBanner" type="boolean">
      `webPageUrl` only. Attempt to remove cookie banners before capture.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="predictions" type="object">
  Which predictions to run and which outputs to return. Defaults to `{ "attention": { "outputs": ["attentionMap"] } }`.

  <Expandable title="predictions properties">
    <ParamField body="attention.outputs" type="string[]">
      Any of `attentionMap`, `perceptionMap`, `hotspotsMap`.
    </ParamField>

    <ParamField body="clarity.outputs" type="string[]">
      Any of `score`, `map`.
    </ParamField>

    <ParamField body="excitingness.outputs" type="string[]">
      Any of `score`, `map`.
    </ParamField>
  </Expandable>
</ParamField>

<ResponseField name="id" type="string">
  The id of the new analysis. Use it to poll for results.
</ResponseField>

<ResponseField name="location" type="string">
  The URL where the analysis result can be retrieved (also returned in the `Location` header).
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl \
    -X POST \
    -H "Authorization: Bearer $apikey" \
    -H "Content-Type: application/json" \
    -d '{
          "input": {
            "type": "image",
            "content": "iVBORw0KGgoAAAANSUhE....FTkSuQmCC",
            "medium": "desktopWeb",
            "title": "Example"
          },
          "predictions": {
            "attention": { "outputs": ["attentionMap", "perceptionMap"] },
            "clarity": { "outputs": ["score", "map"] }
          }
        }' \
    https://api.eyequant.com/v2/analyses
  ```
</RequestExample>

<ResponseExample>
  ```json 201 theme={null}
  {
    "id": "611457618c1d4283a830d10a9ad4f8ae",
    "location": "https://api.eyequant.com/v2/analyses/611457618c1d4283a830d10a9ad4f8ae"
  }
  ```

  ```json 400 theme={null}
  {
    "error": {
      "code": "invalid_request",
      "message": "Invalid request."
    }
  }
  ```
</ResponseExample>
