Skip to content

Save an offer revision

POST
/api/offers/{offerId}/revisions
curl --request POST \
--url https://example.com/api/offers/example/revisions \
--cookie better-auth.session_token=<better-auth.session_token>
offerId
required
string

The saved offer revision.

Media type application/json
object
revision
required

Saved revision metadata and optional snapshot for an offer.

object
id
required
string
offerId
required
string
revisionNumber
required
integer
> 0
snapshot

Stored offer state that can be restored later.

object
name
required
string
customerId
required
string | null
customerName
required
string | null
requestId
required
string | null
clientRequest
required
string | null
status
required
string
Allowed values: draft accepted rejected imported
currency
required
string
discountPercent
number
0 <= 100
discountAmount
number
0
notes
required
Array<string>
unmatched
required
Array<string>
items
required
Array<object>

Line item captured in an offer revision snapshot.

object
productId
required
string | null
sku
required
string | null
name
required
string
description
required
string
requestItem
required
string
quantity
required
number
> 0
unitPriceNet
required
number
vatRate
required
number
unitGrossPrice
required
number
totalNet
required
number
totalGross
required
number
rationale
required
string
matchSource
required
string | null
Allowed values: exact semantic manual
matchScore
required
number | null
position
required
integer
createdBy
required
object
id
required
string
name
required
string
createdAt
required
string format: date-time
acceptedAt
string | null format: date-time
Example
{
"revision": {
"snapshot": {
"status": "draft",
"discountPercent": 0,
"discountAmount": 0,
"items": [
{
"matchSource": "exact"
}
]
}
}
}

No valid Better Auth session was present.

Media type application/json

Returned when no valid Better Auth session is present.

object
error
required
string
Example generated
{
"error": "example"
}

The offer was not found.

Media type application/json

Standard API error payload.

object
error
required
object
code
required
string
message
required
string
issues
Array<string>
Example generated
{
"error": {
"code": "example",
"message": "example",
"issues": [
"example"
]
}
}