---
title: "Get coverage quotes"
method: GET
path: "/api/v1/discovery/coverage-quotes/{id}"
tags: ["discovery"]
deprecated: true
---

# Get coverage quotes

`GET /api/v1/discovery/coverage-quotes/{id}`

## Request

- Base URL: `https://point11.ai`
- URL: `https://point11.ai/api/v1/discovery/coverage-quotes/{id}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://auth.point11.ai/oauth2/authorize`, token URL `https://auth.point11.ai/oauth2/token`)

> **Deprecated.**

Deprecated: use discovery.campaign-settings-quotes.get.v2 (discovery_campaign_settings_quotes_get_v2), which reviews any change to a campaign's assistants (add, remove or swap) with every other setting of one Save; this version answers what one more assistant adds, as the quote of the Save that adds it. Price adding AI assistants to a campaign before ordering it: the price of one conversation, the assistants that can be added, and the monthly change each adds. Refused, with the reason in details.control, where that Save would be.

## Path parameters

- `id` string, uuid, required: The campaign id.

## Headers

- `Point11-Organization` string, uuid

## Response `200`

Success.

- DiscoveryCoverageQuotesGetResponse
  - `control` object, required: The campaign's coverage control verdict.
    - `available` boolean, required
    - `reason` 'ok' | 'operator_run' | 'published_pilot' | 'setup_pending' | 'paused' | 'profile_pending' | 'hand_picked' | 'too_many_audiences' | 'not_current_mode' | 'location_campaign' | 'runs_once' | 'viewer_role' | 'not_active', required: Why the control reads as it does; `ok` when the customer may change it.
    - `title` string, required
    - `detail` string, required
    - `action` object: The one next step a refusal offers, when the reader has one.
      - `label` string, required
      - `href` string, required
  - `quote` object, required: The price of one Discovery conversation (quantity 1).
    - `productSlug` 'discovery', required
    - `dimensionKey` 'interaction', required
    - `unitPriceCents` integer, required
    - `quantity` integer, required
    - `totalCents` integer, required
  - `campaign` object, required
    - `unitPriceCents` integer, required: Price of one Discovery conversation.
    - `interactionLabel` object, required: The conversation's own word.
      - `singular` string, required
      - `plural` string, required
    - `twinCount` integer, required: Twins the campaign refreshes.
    - `selectedEngines` string[], required: Assistants measured today.
    - `addableEngines` string[], required: Assistants this order could add.
    - `engineEstimate` object, required: One added assistant.
      - `count` integer, required: Conversations added each month.
      - `unitPriceCents` integer, required
      - `amountCents` integer, required: count × unitPriceCents, at today's price.

## Other responses

- `400`: The input, query, or Idempotency-Key is invalid.
- `401`: The bearer is missing, expired, or not accepted.
- `403`: The credential lacks the operation's scope or role, or the operation needs a different door.
- `404`: The resource or organization does not exist for this caller.
- `405`: This path takes another HTTP method, named in `Allow`.
- `409`: The request conflicts with current state or with prior use of its Idempotency-Key.
- `413`: The request, or the answer it asks for, is too large; narrow it.
- `429`: The credential's rate budget is spent; retry after `Retry-After` seconds.
- `500`: An unexpected server failure; retry later. Only `request_id` identifies it.
- `503`: A dependency is temporarily unavailable; retry after `Retry-After` seconds.
- `default`: Another status a product answers for its own refusal (for example `415` for an unsupported attachment); branch on `code`.

---

[API](https://skmtc.dev/point11/apis/point11-api.md) · [All operations](https://skmtc.dev/point11/apis/point11-api/llms.txt) · [OpenAPI document](https://skmtc.dev/point11/apis/point11-api/revisions/5241805fe425?raw)
