---
title: "List an industry's prompts"
method: GET
path: "/org/industries/{id}/prompts"
tags: ["Industries"]
---

# List an industry's prompts

`GET /org/industries/{id}/prompts`

## Request

- Base URL: `https://apiv2.senso.ai/api/v1`
- URL: `https://apiv2.senso.ai/api/v1/org/industries/{id}/prompts`
- Auth: API key in header `X-API-Key`

Returns one page of the prompts an industry runs — the ids you pass to `POST /org/industries/{id}/prompts/import` to adopt them, and to `POST /org/content-generation/industry-prompt-draft` to draft from one. You can read any industry in the public catalogue (`GET /org/industries`) and your organization's own industry; any other id is a `404`.

Only the industry's active prompts are listed. A prompt switched off at the industry collects no new results and is rejected by the import, so it is left out.

`funnel_stage` is the stage the prompt would have in your organization once imported, so the stage you pick by is the stage you get.

Each prompt also carries how it went over the date window. `models` has one entry per AI model that answered it, with your own brand overlaid: how many answers that model gave, and how many of them named you. `top_three_mentioned` is the three brands named most often on that prompt by anyone — so a prompt whose `models` show no mentions of you, next to a full `top_three_mentioned`, is one worth looking at: the AI answers it, and the brands it names are not yours.

The window bounds the FIGURES, never the list. Every active prompt is returned whether or not it has results in the window; one without them carries `[]` for both.

Figures are grouped into whole weeks, Monday to Sunday, UTC. A week is counted when its Monday falls inside `from`–`to`, so a `from` that lands mid-week starts the figures at the following Monday, and the last week is counted in full even where it runs past `to`. Pass Mondays for exact weekly slices. `window` echoes the dates you asked for.

Every prompt also says whether your organization already has it. `org_prompt_id` is your own prompt with this text — the one an import created, or one you wrote by hand — or `null`. Pass `imported=false` to list only the prompts you do not have yet, the natural call after importing one; `imported=true` lists the ones you do. A prompt counts as yours when a live prompt in your organization has the same text, ignoring case and surrounding whitespace. `total` follows the filter.

Prompts come back oldest first, in a stable order. `limit` and `offset` are validated rather than adjusted: a `limit` above 100 is a `400`, not a silently smaller page. Requires the GEO product.

## Path parameters

- `id` string, uuid, required

## Query parameters

- `imported` boolean
- `from` string, date
- `to` string, date
- `models` string
- `location` string
- `limit` integer
- `offset` integer

## Response `200`

One page of the industry's active prompts.

- OrgIndustryPromptListResponse
  - `window` IndustryWindow, required: The date window that was applied.
    - `from` string, required: Start of the window, `YYYY-MM-DD`.
    - `to` string, required: End of the window, `YYYY-MM-DD`.
  - `prompts` OrgIndustryPromptItem[], required: One page of the industry's active prompts, in a stable order.
    - `id` string, uuid, required: The prompt's id — what you pass to the import and draft endpoints.
    - `text` string, required: The question the industry asks the AI models.
    - `funnel_stage` 'awareness' | 'consideration' | 'evaluation' | 'decision', required: Where the question sits in a buyer's journey, and the stage the prompt would have in your organization once imported.
    - `models` OrgIndustryPromptModelMetrics[], required: One entry per AI model that answered this prompt in the window, with your own brand overlaid on the mention counts. `[]` when the prompt has no results in the window.
      - `model` string, required: The AI model, named the way the industry's runs record it.
      - `answered_count` integer, required: Answers this model gave to the prompt in the window.
      - `brand_mention_count` integer, required: How many of those answers named your organization's brand.
      - `brand_mention_rate` number, double, required: `brand_mention_count` divided by `answered_count`, as a fraction between 0 and 1. `0` when the model gave no answers.
    - `top_three_mentioned` OrgIndustryPromptMentionedBrand[], required: The three brands named most often on this prompt in the window, by any brand — yours appears only when it is one of them. `[]` when no brand was named.
      - `brand_id` string, uuid: Stable id for the brand, for matching it across industries and windows. Absent for a brand the AI named that has no registry entry yet.
      - `brand_name` string, required: The brand as the AI answers spell it.
      - `mentioned_count` integer, required: Answers to this prompt that named the brand, across every model.
    - `org_prompt_id` string, uuid, nullable, required: Your organization's own prompt with this text, ignoring case and surrounding whitespace — the one an import created, or one written by hand. Null when your organization has no such prompt. This is what `imported` filters on.
  - `total` integer, required: How many active prompts match the `imported` filter in total, not the size of this page. With no filter, how many active prompts the industry has.
  - `limit` integer, required: The page size applied.
  - `offset` integer, required: The offset applied.

## Other responses

- `400`: The request was malformed — a bad path/query parameter or an invalid value.
- `401`: Missing or invalid credentials — supply a valid org API key in the `X-API-Key` header.
- `403`: The API key is authenticated but not permitted to access this resource.
- `404`: The requested resource does not exist or is not visible to this key.

---

[API](https://skmtc.dev/senso/apis/senso-org-api.md) - [All operations](https://skmtc.dev/senso/apis/senso-org-api/llms.txt) - [OpenAPI document](https://skmtc.dev/senso/apis/senso-org-api/revisions/d789b4fcbe84?raw)
