GET /v3/user/my-auctions — tri-state
GET
/v3/user/my-auctions
const url = 'https://api-ha-prod-p8.handbid.dev/v3/user/my-auctions?whitelabelId=%7B%7BwhitelabelId%7D%7D&limit=20';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api-ha-prod-p8.handbid.dev/v3/user/my-auctions?whitelabelId=%7B%7BwhitelabelId%7D%7D&limit=20' \ --header 'Authorization: Bearer <token>'NEW (HAN-1587, 2026-05-19). Replaces V2 GET /user/my-auctions. Tri-state view: auctions the caller relates to across manager / bidder / guest roles, in a single response. Distinct from /v3/bidder/my-auctions (bidder-only).
Response: { auctions: [AuctionCard...], totalCount }. Each row is a standard AuctionCardSerializer card + userStatus extra field:
manager— caller has anorganization_admin_user_relationrow withroleId >= ROLE_ID_MANAGER(4).bidder— caller has anauction_user_relationrow withisBidder=1.guest— caller has anauction_user_relationrow withstatus='guest',isComing=1,isBidder=0(matched by userId OR email).
Params:
whitelabelId— REQUIRED, scopes to one whitelabel.organizationId— optional, narrows within the WL.roleORpermission_level— optional filter. Either name accepted;roletakes precedence when both present. BOTH validated against{manager, bidder, guest}— invalid value on either → 400 with per-param error message.role=bidder(orpermission_level=bidder) INCLUDES manager rows — V2 quirk preserved (“managers can also bid”). Documented; may surprise callers expecting strict bidder-only.
V2-parity behaviors:
- No
statusIdfilter (sees auctions in any status, including setup/archived). - No
isTestAuctionfilter (V2 doesn’t filter test auctions for manager UI). itemCountuses an inlineCOUNT(items)subquery withcustomDonationexclusion to match V2 byte-for-byte.
Sort: timerEndTime DESC, id DESC.
Cache: per-{userId, whitelabelId, organizationId, role, limit, offset}, 15s TTL, tags V3CacheTags::userMyAuctions($userId) + V3CacheTags::whitelabel($wlId).
Errors: 401 anonymous, 400 missing/invalid whitelabelId, 400 invalid role / permission_level value.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ” whitelabelId
string
REQUIRED. Scopes to one whitelabel.
Example
{{whitelabelId}} limit
integer
Default 20, range 1-100.
Example
20Responses
Section titled “ Responses ”Successful response
Media type application/json