# Project Price

> > This page is auto-generated from the formations OpenAPI spec.
> Do not edit manually — run `pnpm generate-formations-resource-docs` to regenerate.

# Project Price

> This page is auto-generated from the formations OpenAPI spec.
> Do not edit manually — run `pnpm generate-formations-resource-docs` to regenerate.

Upserts a project-scoped price row so a deployed stack produces billing-grade usage cost with no out-of-band pricing step. The row is keyed on (provider, model, component, effective_from) within the formation's project — the middle pricing tier that covers every one of the project's instances of a given provider slug. When `effective_from` is omitted the price takes effect at deploy time, so generations run right after deploy are priced.

## Syntax

```yaml
type: project_price
properties:
  provider: String
  model: String
  component: String
  unit: String
  unit_price: Number
  meter_type: String
  effective_from: String
```

## Output

The physical resource ID is the **public ID** of the created resource. Reference it from other resources with a `ref` expression:

```yaml
      some_field:
        ref: MyProjectPrice
```

## Properties

**`provider`**

SKU vendor slug the price applies to (e.g. openai, anthropic, soat)

_Required_: Yes
_Type_: String

---

**`model`**

SKU identifier — the model id for LLM SKUs, the platform unit otherwise

_Required_: Yes
_Type_: String

---

**`component`**

The billable component this row prices (input_tokens, output_tokens, cached_tokens, compute_second, …)

_Required_: Yes
_Type_: String

---

**`unit`**

Unit the unit_price is denominated in (token, compute_second, …); must match the metered component's unit

_Required_: Yes
_Type_: String

---

**`unit_price`**

USD per unit. Must be a non-negative number

_Required_: Yes
_Type_: Number

---

**`meter_type`**

Meter type this SKU belongs to (defaults to llm_tokens)

_Required_: No
_Type_: String

---

**`effective_from`**

Timestamp from which this price applies. Omit to take effect at deploy time. The row with the latest effective_from at or before now() prices a call.

_Required_: No
_Type_: String

---
