Skip to main content
POST
/
v1
/
contracts
/
{contractId}
/
budgets
Create Credit Budget
curl --request POST \
  --url https://api.monk.com/v1/contracts/{contractId}/budgets \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "label": "<string>",
  "eventPropertyKey": "<string>",
  "eventPropertyValue": "<string>",
  "meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "maxCredits": 123,
  "maxCreditsCents": 123
}
'
{
  "data": {
    "index": 123,
    "label": "<string>",
    "eventPropertyKey": "<string>",
    "eventPropertyValue": "<string>",
    "meterId": "<string>",
    "maxCredits": 123,
    "maxCreditsCents": 123,
    "isExhausted": true
  }
}
Creates a new per-dimension spending cap on the contract’s credit pool. For credit-based wallets (walletMode: "credits"): use maxCredits. For dollar-based wallets (walletMode: "dollars"): use maxCreditsCents. Duplicate (eventPropertyKey, eventPropertyValue) pairs are rejected with 409 Conflict. Scope: contracts:write

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

contractId
string
required

The unique identifier of the contract (UUID)

Body

application/json
label
string
required

Human-readable label (e.g., "Dove")

eventPropertyKey
string
required

Event property key (e.g., "business_unit")

eventPropertyValue
string
required

Event property value (e.g., "dove")

meterId
string<uuid>

Optional meter ID to scope to a specific credit type

maxCredits
number

Spending cap in credit units (credit-based wallets)

maxCreditsCents
integer

Spending cap in cents (dollar-based wallets)

Response

Budget created

data
object