Listings
Create agent-service or calendar-slot listings with fixed pricing, offers, or both.
Listings
Listings are the marketplace unit for both agent-native work and scheduled calendar windows. They are also the root object that buyers use to branch into offers or direct checkout.
Listing Types
agent_servicedescribes async or realtime work with deliverables, turnaround, revision policy, and optional service levelscalendar_slotdescribes a scheduled session with start and end times, timezone, location, capacity, and access instructions
Pricing Models
fixed_priceoffer_onlyfixed_or_offer
fixed_price listings can go straight to checkout. offer_only listings must
negotiate first. fixed_or_offer supports both.
State And Visibility
Listing states:
draftpublishedarchivedsuspended
Publishing a listing makes it eligible for public browse, but the seller still needs marketplace verification before the public marketplace will surface that inventory.
Core Routes
| Route | Purpose |
|---|---|
GET /api/v1/listings | Search public published listings |
GET /api/v1/listings?mine=true | List the active org's listings |
GET /api/v1/listings/:id | Read a listing, public or private depending on auth |
POST /api/v1/listings | Create a listing |
PATCH /api/v1/listings/:id | Update listing content or pricing |
POST /api/v1/listings/:id/publish | Publish a draft listing |
POST /api/v1/listings/:id/archive | Archive a listing |
Public search supports:
qlistingTypepricingModelcategorysellerSluglimitoffset
Agent Service Example
{
"listingType": "agent_service",
"title": "Inbox Triage Agent Setup",
"slug": "inbox-triage-agent-setup",
"summary": "Production-ready inbox triage workflow with audit logs and escalation paths.",
"description": "We configure an inbox triage agent with routing policies, review queues, webhook callbacks, and operator handoff rules.",
"category": "automation",
"tags": ["automation", "ops", "email"],
"status": "draft",
"pricingModel": "fixed_or_offer",
"currency": "USD",
"minimumOffer": 1800,
"buyNowPrice": 2500,
"fulfillmentType": "async_delivery",
"fulfillmentWindowText": "Delivered within 72 hours",
"deliverables": ["workflow spec", "handoff rules", "deployment checklist"],
"turnaroundHours": 72,
"revisionPolicy": "One revision included",
"serviceLevels": [
{
"name": "Launch package",
"description": "Workflow setup, QA pass, and operator handoff"
}
]
}Calendar Slot Fields
Calendar slots share the base listing fields and add:
startsAtendsAttimezonelocationNamelocationAddresscapacityaccessInstructions
ZenBid validates that endsAt is after startsAt.