---
title: "Quote an analysis"
method: POST
path: "/api/v1/analysis-quotes"
tags: ["Analyses"]
---

# Quote an analysis

`POST /api/v1/analysis-quotes`

## Request

- Base URL: `https://app.probbai.com`
- URL: `https://app.probbai.com/api/v1/analysis-quotes`
- Auth: HTTP bearer

Check the assigned report version and applicable price before starting analysis. The fingerprint binds the subsequent submission to the configuration you reviewed.

## Before you call

Prepare a report first. Use its reportId; upload the actual file before submitting the analysis.

**Required scope:** `analyses:write`.

## What happens next

Save fingerprint and send it as quoteFingerprint to Start an analysis. Quoting does not reserve capacity or start processing. Prices shown in examples are illustrative; use your response.

## Recovery

If the report is absent or expired, prepare it again. If configuration changes before submission, obtain a new quote and use a new submission key.

[Follow the complete workflow](/integration-api/) · [Errors and retries](/api-errors/)

## Request body

- QuoteInput
  - `reportId` string, required: Report ID returned by upload preparation, admission, discovery, or an event. It must belong to the API key's workspace.

## Response `200`

Save fingerprint and send it as quoteFingerprint to Start an analysis. Quoting does not reserve capacity or start processing. Prices shown in examples are illustrative; use your response.

- object
  - `data` Quote, required
    - `reportId` string, required: Report ID returned by upload preparation, admission, discovery, or an event. It must belong to the API key's workspace.
    - `reportSystemVersion` string, required: Assigned report version used by the quote or analysis. Can be null for a legacy report.
    - `creditUnits` integer, required: Applicable price in integer units for the assigned configuration. This is a quote, not a reservation; example prices are illustrative.
    - `creditScale` integer, required: Number of integer units per displayed credit. Divide creditUnits by this value; use the scale returned by the API.
    - `fingerprint` string, required: Opaque quote fingerprint. Copy it unchanged into quoteFingerprint on the corresponding submission.

## Other responses

- `400`: Invalid input or cursor
- `401`: Invalid, expired, or revoked API key
- `403`: Disabled organisation or missing scope
- `404`: The resource is absent, expired, deleted, or unavailable in this workspace. Verify the resource ID and key's workspace.
- `405`: Method not allowed; consult Allow for supported methods
- `409`: If the report is absent or expired, prepare it again. If configuration changes before submission, obtain a new quote and use a new submission key.
- `429`: Request limit exceeded
- `500`: Unexpected failure
- `503`: Service unavailable

---

[API](https://skmtc.dev/probbai/apis/probb-ai-customer-api.md) · [All operations](https://skmtc.dev/probbai/apis/probb-ai-customer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/probbai/apis/probb-ai-customer-api/revisions/33a3294530e4?raw)
