Skip to navigation

Opportunity status on read endpoints, now WON/LOST

Fixed: status is now returned when reading opportunities

GET /opportunities/{opportunity_id}, GET /opportunities, and GET /opportunities/search now include the opportunity’s status. Create and update already accepted it, but these read endpoints never returned it. The legacy /requests aliases return it too.

Changed: closed opportunities are WON or LOST

Opportunity status uses WON and LOST for closed opportunities:

ValueMeaning
ACTIVEOpen
ON_HOLDOn hold
WONWon
LOSTLost
  • Every opportunity response uses these values, including the response from POST/PATCH /opportunities.
  • POST/PATCH /opportunities and status search filters (e.g. ?prop1=status&op1=eq&value1=WON) take the same values.
  • Project status is unchanged.

Changed: status search filters only accept exact-match operators

On GET /opportunities/search and GET /projects/search, a status filter now supports only eq, neq, in, and nin. Any other operator (e.g. contains, gt, between) returns a 400 VALIDATION_ERROR instead of a 200 with no results.