---
title: "Estimate screen-pool change"
method: POST
path: "/v1/account/screen-pool/estimate"
tags: ["account"]
---

# Estimate screen-pool change

`POST /v1/account/screen-pool/estimate`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/account/screen-pool/estimate`
- Auth: HTTP bearer

Returns the prorated cost of changing the screen pool before committing to it, including the exact amount that would be charged today and which card would be used. This is read-only and does not change anything; it uses POST rather than GET because the requested quantity must never be cached.

**Notes.**
- A POST because it takes an argument; it changes nothing.

## Request body

- object
  - `quantity` integer, required

## Response `200`

Success.

- object
  - `data` object, required
    - `lines` object[], required: Line items of the invoice raised today.
      - `description` string, required
      - `amount` number, required
    - `creditsApplied` number, required: Credit for the unused part of the current term.
    - `subTotal` number, required
    - `amountDueNow` number, required: Charged now, after credits (currency units, not cents).
    - `currencyCode` string, required
    - `nextBillingAt` string, nullable, required: ISO-8601 timestamp (UTC).
    - `payWith` string, nullable, required: The payment method that is charged (`Visa •••• 4242`).
    - `currentQuantity` integer, required
    - `newQuantity` integer, required
    - `renewalAmount` number, nullable, required: What each term costs after the change.
    - `chargedToday` boolean, required: False when the amount is too small to charge today (it is added to the renewal).
    - `invoiced` boolean, required: The account pays by invoice; nothing is charged to a card.
    - `decreaseRequiresSupport` false, required: Always false. Kept for older clients.
    - `scheduledAtRenewal` boolean, required: A reduction on a paid plan: it takes effect at `renewsAt`.
    - `renewsAt` string, nullable, required: ISO-8601 timestamp (UTC).
    - `inTrial` boolean, required
    - `trialEndsAt` string, nullable, required: ISO-8601 timestamp (UTC).
    - `minQuantity` integer, required: The lowest allowed quantity: the screens running now (at least 1).

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: You do not hold the permission for the whole workspace (a grant at one location is not enough).
- `409`: `no_subscription`, `account_cancelled`, or `under_contract`.
- `422`: `quantity` is not a whole number from 1 to 10000.
- `502`: `estimate_unavailable`.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
