TBBN.Merchant Platform docs
WORKING

Reputation

post/v1/reputation/reviews

Submit a 1-5 star review of a Merchant or a Space Branch — must be tied to a real completed trade session or Space booking the reviewer was actually a party to.

Request body

FieldTypeRequired
targetTypeMERCHANT | SPACE_BRANCHyes
merchantIdstring (uuid)
branchIdstring (uuid)
ratingintegeryes
commentstring
tradeSessionIdstring (uuid)
spaceBookingIdstring (uuid)

Response (201)

FieldTypeRequired
idstring (uuid)
reviewerIdstring (uuid)
targetTypeMERCHANT | SPACE_BRANCH
merchantIdstring,null (uuid)
branchIdstring,null (uuid)
ratinginteger
commentstringnull
tradeSessionIdstring,null (uuid)
spaceBookingIdstring,null (uuid)
createdAtstring (date-time)
get/v1/reputation/merchants/{id}/reviews

A Merchant's reviews plus aggregate rating

Parameters

idpathrequired

Response (200)

FieldTypeRequired
reviewsobject[]
averageRatingnumbernull
reviewCountinteger
get/v1/reputation/branches/{id}/reviews

A Space Branch's reviews plus aggregate rating

Parameters

idpathrequired

Response (200)

FieldTypeRequired
reviewsobject[]
averageRatingnumbernull
reviewCountinteger
get/v1/reputation/businesses/{id}/reviews-summary

Aggregate rating rolled up across every Merchant/Branch linked to a Business (direct Postgres read, no live cross-service call).

Parameters

idpathrequired

Response (200)

FieldTypeRequired
averageRatingnumbernull
reviewCountinteger
get/v1/reputation/sellers/{id}

Get a seller's reputation score (0-100). New sellers start at the neutral baseline of 50 — the same default @tbbn/core-matching's reputationMatch factor uses when reputation data is absent, so Matching and Reputation never disagree about what "no track record yet" means.

Parameters

idpathrequired

Response (200)

FieldTypeRequired
sellerIdstring (uuid)
scoreinteger