Skip to main content
POST
/
proposals
/
calculate
Calculate Proposal
curl --request POST \
  --url https://api.example.com/proposals/calculate \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "requirements": [
    {}
  ],
  "hourlyRate": 123,
  "settings": {}
}
'
{
  "totalPoints": 123,
  "totalHours": 123,
  "estimatedDays": 123,
  "baseCost": 123,
  "techStackSurcharge": 123,
  "urgencyModifier": 123,
  "clientDiscount": 123,
  "customDiscount": 123,
  "subtotal": 123,
  "tax": 123,
  "total": 123,
  "maintenanceMonthly": 123
}

Authorizations

X-API-Key
string
header
required

Body

application/json

Request for proposal calculations.

Accepts a settings dict with the same camelCase keys the frontend editor uses (techStackFee, urgency, clientType, etc.). Falls back to simple legacy fields when settings is not provided.

requirements
Requirements · object[]
required
hourlyRate
number
required
settings
Settings · object

Response

Successful Response

Response with calculated values.

totalPoints
integer
required
totalHours
number
required
estimatedDays
integer
required
baseCost
number
required
techStackSurcharge
number
required
urgencyModifier
number
required
clientDiscount
number
required
customDiscount
number
required
subtotal
number
required
tax
number
required
total
number
required
maintenanceMonthly
number
required