POST https://api.helpgenie.ai/v1 with resource: "marketplace".
Access control
The
list, all, get, categories, stats, and trending actions are publicly accessible. The create, update, and delete actions require internal admin authentication. The clone, reviews, favorites, collections, and submissions actions require user authentication.sortBy values
| Value | Description |
|---|---|
"popular" | Sort by view count (most viewed first) |
"newest" | Sort by creation date (most recent first) — default |
"rating" | Sort by rating (highest rated first) |
"clones" | Sort by clone count (most cloned first) |
List genies (slim)
Retrieves a simplified list of marketplace genies optimized for dropdowns and compact listings. Returns only essential fields without nested relations.Must be
"marketplace"Must be
"list"Response
List genies (complete)
Retrieves the full marketplace genie listing with all fields and nested relations (category, brand, and creator in admin mode).Must be
"marketplace"Must be
"all"Response
Get a genie
Retrieves a specific marketplace genie by slug or ID. Automatically increments the view count and includes related genies from the same category.Must be
"marketplace"Must be
"get"The genie slug (preferred) or UUID.
Response
All fields from the genie object, plus:
Create a listing
Creates a new marketplace listing. Automatically marks the agent as a marketplace template and links the listing back to the agent.Only internal admins can create marketplace listings.
Must be
"marketplace"Must be
"create"Response (status 201)
The created marketplace genie with all fields. See genie object.
Update a listing
Updates an existing marketplace listing.Only internal admins can update marketplace listings.
Must be
"marketplace"Must be
"update"The listing ID.
Response
The updated marketplace genie with all fields.
Delete a listing
Permanently deletes a marketplace listing and unlinks the agent from the marketplace.Only internal admins can delete marketplace listings.
Must be
"marketplace"Must be
"delete"The listing ID.
Response
List categories
Retrieves all marketplace categories ordered by display order. No authentication required.Must be
"marketplace"Must be
"categories"Response
Get statistics
Retrieves aggregate statistics about the marketplace. No authentication required.Must be
"marketplace"Must be
"stats"Response
Clone a marketplace genie
Clones a marketplace genie into the authenticated user’s account. Delegates tohandle-agent for the actual agent clone, tracks the clone in user_marketplace_clones, and increments the listing’s clone_count.
Must be
"marketplace"Must be
"clone"The marketplace genie listing ID. Can also be passed as
marketplace_genie_id in the data object.Response
Reviews
Manages reviews for marketplace genies. Uses amode parameter inside data to select the operation. When mode is omitted, lists reviews.
Must be
"marketplace"Must be
"reviews"The marketplace genie ID. Can also be passed as
marketplace_genie_id in data.Create a review
{ review: {...} } with status 201.
Update a review
Setmode: "update". Requires review_id, plus optional rating and review_text. Only the review owner can update.
Delete a review
Setmode: "delete". Requires review_id. Only the review owner can delete.
List reviews (default)
Whenmode is omitted, lists reviews for the given genie with pagination.
{ items: [...], count, limit, offset }.
Favorites
Manages a user’s marketplace favorites. Uses amode parameter inside data.
Must be
"marketplace"Must be
"favorites"Add a favorite
{ favorite: {...} } with status 201.
Remove a favorite
Setmode: "remove" with marketplace_genie_id.
List favorites (default)
Whenmode is omitted, lists all favorites for the authenticated user with pagination.
{ items: [...], count, limit, offset }. Each item includes the full marketplace_genie object.
Trending
Returns trending marketplace genies from thetrending_marketplace_genies view, ordered by trending score. No authentication required.
Must be
"marketplace"Must be
"trending"Response
Collections
Manages user-curated collections of marketplace genies. Uses amode parameter inside data.
Must be
"marketplace"Must be
"collections"Create a collection
{ collection: {...} } with status 201.
Update a collection
Setmode: "update" with collection_id and any of name, description, is_public.
Delete a collection
Setmode: "delete" with collection_id.
Add genie to collection
Setmode: "add-genie" with collection_id and marketplace_genie_id.
Remove genie from collection
Setmode: "remove-genie" with collection_id and marketplace_genie_id.
Get a single collection
Passcollection_id (or id) without a mode. Returns the collection and its genies.
List collections (default)
When nomode and no collection_id are provided, lists all collections for the authenticated user.
{ items: [...], count, limit, offset }.
Submissions
Manages marketplace submission requests. Users submit their genies for marketplace listing; admins moderate them. Uses amode parameter inside data.
Must be
"marketplace"Must be
"submissions"Create a submission
{ submission: {...} } with status 201. Initial status is "pending".
Moderate a submission (admin only)
Setmode to "approve", "reject", or "under-review". Requires submission_id. Optional admin_notes.
Delete a submission
Setmode: "delete" with submission_id. Admins can delete any submission; regular users can only delete their own.
List submissions (default)
Whenmode is omitted, lists submissions with pagination. Admins see all submissions; regular users see only their own.
{ items: [...], count, limit, offset }.
Genie object
The full genie object returned byall, get, create, and update actions.
Error responses
| Status | Code | Description |
|---|---|---|
| 400 | VALIDATION_ERROR | Missing required parameters |
| 401 | UNAUTHORIZED | Missing or invalid authentication token |
| 403 | FORBIDDEN | Non-admin attempting a write operation |
| 404 | NOT_FOUND | Marketplace genie not found |
| 500 | INTERNAL_ERROR | Server error |

