Moonborn — API · marketplace
Discover published listings with search + facet filters
Returns published listings only. Filters: free-text search, tag (AND), license, sort. Marketplace is global: results are not workspace-scoped, but install actions still respect the caller workspace.
GET/v1/marketplace/listingsscope · Bearer (API key or session JWT)
Query parameters
| Field | Type | Description |
|---|---|---|
| q | string | Free-text search across title + summary + tags. |
| tag | string | Filter by tag (repeat for AND-of-tags). |
| license | string · "cc_by" | "cc_by_sa" | "cc_by_nc" | "cc_by_nd" | "commercial" | "proprietary" | Filter by license id (cc_by, cc_by_sa, cc_by_nc, cc_by_nd, commercial, proprietary). |
| sort | string · "relevance" | "popular" | "top_rated" | "recent" | Sort key. `relevance` (default with `q`), `popular` (installs+forks), `top_rated`, `recent`. |
| cursor | string | Opaque pagination cursor; omit for the first page. |
| limit | number | Page size (1-100; default 20). |
Responses
200OK
Body
| Field | Type | Description |
|---|---|---|
| itemsreq | object[] | |
| nextCursorreq | string |
401Unauthenticated
Body
| Field | Type | Description |
|---|---|---|
| errorreq | object | |
| error.codereq | string | |
| error.messagereq | string |
Examples
cURL
curl -X GET https://api.moonborn.co/v1/marketplace/listings \ -H "Authorization: Bearer $MOONBORN_API_KEY"
TypeScript
import Moonborn from '@moonborn/sdk';
const client = new Moonborn({ apiKey: process.env.MOONBORN_API_KEY });
const result = await client.marketplace.discoverListings();Python
import os from moonborn import Moonborn client = Moonborn(api_key=os.environ["MOONBORN_API_KEY"]) result = client.marketplace.discover_listings()