Skip to content

Finalize Project Offers

POST
/api/projects/{project_id}/offers/finalize
curl --request POST \
--url https://example.com/api/projects/example/offers/finalize \
--header 'Content-Type: application/json' \
--data '{}'

Finalize offers for a project by:

  • Creating assignments for all confirmed offers (one per confirmed offer)
  • Optionally requiring confirmation if some targets have no confirmed offers
  • Keeping offers for payment tracking (no longer clearing)

Request body: { “confirm_anyway”: bool } Responses:

  • 200: { created_assignments: int, cleared_offers: int, missing_targets: int }
  • 400: { detail: “No confirmed offers” }
  • 409: { detail: “Some targets unassigned”, missing_count: int }
project_id
required
Project Id
string
Media typeapplication/json
Any of:
object
key
additional properties
any
Examplegenerated
{}

Successful Response

Media typeapplication/json
Examplegenerated
example

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}