publ betaReference (MCP guide)
Open publ console

course_catalog_prices_apply

# course_catalog_prices_apply

Saves or removes the individual sale price of a class catalog in the Course app (pApp C00007). Shows a preview first; the change runs only after confirmation. Called without confirmToken it previews and returns a confirmToken; repeating the same input with it executes once.

## Inputs

| Field | Required here | Contract |
| --- | --- | --- |
| `catalogId` | Yes | string; min length 1; max length 128; pattern `^[A-Za-z0-9_-]+$` |
| `confirmation` | Yes | `CHANGE_CATALOG_PRICING` |
| `action` | Yes | one of: `save`, `discard` (by `kind`) |
| `action.fields` | Yes | When `action.kind` is `save`: object |
| `action.fields.representationalName` | Yes | When `action.kind` is `save`: string |
| `action.fields.currency` | No | When `action.kind` is `save`: `KRW`, `USD`; Uses the freshly read channel currency automatically. An explicit currency is only a consistency assertion. |
| `action.fields.sellingPrice` | Yes | When `action.kind` is `save`: string; pattern `^(?:0\|[1-9]\d{0,8})(?:\.00)?$` |
| `action.fields.originalPrice` | No | When `action.kind` is `save`: string; pattern `^(?:0\|[1-9]\d{0,8})(?:\.00)?$` or null |
| `action.fields.unlockActionExpiryPeriodInDays` | Yes | When `action.kind` is `save`: `1` or `3` or `7` or `15` or `30` or `60` or `90` or `180` or `365` or null |
| `action.fields.isPurchaseAvailable` | Yes | When `action.kind` is `save`: boolean |
| `action.fields.availablePurchaseMethodsType` | Yes | When `action.kind` is `save`: `CASH_ONLY`, `CASH_AND_CP` |
| `confirmToken` | No | string; pattern `^ct[a-f\d]{32}$`; The confirmToken from this tool's preview result. Omit it to preview; repeat the same input with it to execute. |