---
title: "Get Prompts Summary"
method: GET
path: "/api/v1/geo/experiments/{experiment_id}/prompts-summary"
tags: ["geo-monitoring", "geo-dashboard"]
---

# Get Prompts Summary

`GET /api/v1/geo/experiments/{experiment_id}/prompts-summary`

## Path parameters

- `experiment_id` string, uuid, required

## Query parameters

- `scan_id` string, uuid, nullable

## Response `200`

Successful Response

- PromptSummaryResponse
  - `items` PromptSummaryEntry[], required
    - `prompt_id` string, uuid, required
    - `prompt_text` string, required
    - `category` string, required
    - `is_active` boolean, required
    - `platforms` PromptPlatformResultSummary[], required
      - `platform_id` string, uuid, required
      - `platform_name` string, required
      - `position` integer, nullable
      - `top_competitor_name` string, nullable
      - `checked_at` string, date-time, nullable
      - `state` 'mentioned' | 'not_mentioned' | 'unavailable'
      - `planned_count` integer
      - `succeeded_count` integer
      - `failed_count` integer
      - `total_attempts` integer
      - `failure_codes` MonitoringFailureCode[]
      - `requested_models` string[]
      - `resolved_models` string[]
    - `appearances` integer, required
    - `total_platforms` integer, required
    - `delta_appearances` integer, nullable
    - `top_competitor_name` string, nullable
  - `scan` DashboardScanMetadata, required — Distinguishes the latest attempt from the scan supplying dashboard data.
    - `latest_attempt` MonitoringRunCoverage — Lifecycle and provider coverage for one monitoring attempt.
      - `run_id` string, uuid, required
      - `status` string, required
      - `total_tasks` integer, required
      - `completed_tasks` integer, required
      - `successful_tasks` integer, required
      - `failed_tasks` integer, required
      - `started_at` string, date-time, nullable, required
      - `completed_at` string, date-time, nullable, required
      - `created_at` string, date-time, required
      - `providers` MonitoringProviderCoverage[]
        - `platform_id` string, uuid, required
        - `platform_name` string, required
        - `planned_count` integer, required
        - `succeeded_count` integer, required
        - `failed_count` integer, required
        - `pending_count` integer, required
        - `total_attempts` integer, required
        - `failure_codes` MonitoringFailureCode[]
        - `tasks` MonitoringTaskCoverage[]
          - `task_id` string, uuid, required
          - `prompt_id` string, uuid, required
          - `platform_id` string, uuid, required
          - `platform_name` string, required
          - `run_index` integer, required
          - `status` 'queued' | 'running' | 'retry_wait' | 'succeeded' | 'terminal_failed', required
          - `attempt_count` integer, required
          - `failure_code` 'quota_exhausted' | 'auth_failed' | 'rate_limited' | 'timeout' | 'provider_unavailable' | 'invalid_model' | 'malformed_response' | 'retrieval_not_observed' | 'unknown' — Stable provider failure taxonomy persisted on monitoring tasks.
          - `requested_model` string, nullable
          - `resolved_model` string, required
          - `adapter` string, required
          - `retrieval_policy` string, required
          - `started_at` string, date-time, nullable
          - `completed_at` string, date-time, nullable
          - `last_attempt_at` string, date-time, nullable
    - `data_scan` MonitoringRunCoverage — Lifecycle and provider coverage for one monitoring attempt.
      - `run_id` string, uuid, required
      - `status` string, required
      - `total_tasks` integer, required
      - `completed_tasks` integer, required
      - `successful_tasks` integer, required
      - `failed_tasks` integer, required
      - `started_at` string, date-time, nullable, required
      - `completed_at` string, date-time, nullable, required
      - `created_at` string, date-time, required
      - `providers` MonitoringProviderCoverage[]
        - `platform_id` string, uuid, required
        - `platform_name` string, required
        - `planned_count` integer, required
        - `succeeded_count` integer, required
        - `failed_count` integer, required
        - `pending_count` integer, required
        - `total_attempts` integer, required
        - `failure_codes` MonitoringFailureCode[]
        - `tasks` MonitoringTaskCoverage[]
          - `task_id` string, uuid, required
          - `prompt_id` string, uuid, required
          - `platform_id` string, uuid, required
          - `platform_name` string, required
          - `run_index` integer, required
          - `status` 'queued' | 'running' | 'retry_wait' | 'succeeded' | 'terminal_failed', required
          - `attempt_count` integer, required
          - `failure_code` 'quota_exhausted' | 'auth_failed' | 'rate_limited' | 'timeout' | 'provider_unavailable' | 'invalid_model' | 'malformed_response' | 'retrieval_not_observed' | 'unknown' — Stable provider failure taxonomy persisted on monitoring tasks.
          - `requested_model` string, nullable
          - `resolved_model` string, required
          - `adapter` string, required
          - `retrieval_policy` string, required
          - `started_at` string, date-time, nullable
          - `completed_at` string, date-time, nullable
          - `last_attempt_at` string, date-time, nullable
    - `showing_older_data` boolean

## Other responses

- `404` — Scan not found
- `422` — Validation Error

## Changes

> 25 revisions in range; 1 not diffed.

- **2026-09-03** `d65b8fefae34` — 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Change history](https://skmtc.dev/getanana/apis/cleon-api/changes/api/v1/geo/experiments/:experiment_id/prompts-summary/get.md)

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getanana/apis/cleon-api/revisions/704de2d43c75?raw)
