v5

latestOpenAPI 3.1.02026-08-025631,1012.8 MB
Marketplace

Update Marketplace Listing

Update an existing marketplace listing.

patch/v1/marketplace/listings/{listing_id}

Path parameters

listing_idstring required

Request body

object required

Response

Successful Response

listing_idstring

Unique identifier for the listing

internal_idstring required

Organization that owns this listing (provider)

namespace_idstring required

Namespace containing the retriever

retriever_idstring required

Retriever being offered in the marketplace

titlestring required

Public display title

descriptionstring required

Public description of what this listing provides

public_namestring required

Public URL-safe slug for the listing (e.g., 'video-search'). Used in public URL: mxp.co/m/{public_name}. Must be globally unique.

categorystring nullable

Category for browsing (e.g., 'Content Moderation', 'Search')

tagsstring[]

Tags for discovery

logo_urlstring nullable

URL to listing logo/icon

app_urlstring nullable

Optional URL to a live canvas app powered by this retriever (e.g., 'https://nga.mxp.co'). When set, the listing appears in the public showcase at mixpeek.com/showcase.

icon_base64string nullable

Base64 encoded icon/favicon (data URI format). Max size: ~200KB encoded. Use for small icons.

display_configobject nullable

JSON-based UI configuration for the public interface. Follows a component-based schema (inspired by json-render): { 'components': [...], 'theme': {...}, 'layout': {...} }. If not provided, a default UI is generated from retriever input_schema.

password_secret_namestring nullable

Optional organization secret name containing password for access protection. If set, users must provide password to subscribe (even for free tier).

status'draft' | 'published' | 'archived' | 'suspended'

Status of a marketplace listing.

visibility'listed' | 'unlisted'

Visibility level for a marketplace listing.

  • LISTED: Appears in marketplace catalog, homepage showcase, and sitemap.
  • UNLISTED: Accessible via direct link but hidden from catalog/showcase.
is_activeboolean

DEPRECATED: Use 'status' field instead. Computed from status (True if PUBLISHED, False otherwise).

featured_rankinteger nullable

Editorial ordering for the catalog. Lower sorts first (1 = top slot). Listings without a rank fall back to subscriber-count ordering and always sort after ranked ones. This is the single source of truth for catalog order — the homepage showcase, the homepage landing-page showcase strip, and the Studio marketplace all read it, so ordering never has to be hardcoded per-surface.

created_atstring date-time

When the listing was created

updated_atstring date-time

When the listing was last updated

published_atstring date-time nullable

When the listing was first published

total_subscribersinteger

Total number of active subscribers

total_queriesinteger

Total queries executed across all subscribers

Example response

{
  "title": "Brand Safety Classification API",
  "public_name": "brand-safety-api",
  "app_url": "https://nga.mxp.co",
  "icon_base64": "data:image/png;base64,iVBORw0KGgoAAAANS...",
  "display_config": {
    "components": [
      {
        "props": {
          "field": "video_url",
          "label": "Enter video URL"
        },
        "type": "SearchInput"
      },
      {
        "props": {
          "fields": [
            "title",
            "description",
            "score"
          ],
          "layout": "grid"
        },
        "type": "ResultCard"
      }
    ],
    "theme": {
      "fontFamily": "Inter, sans-serif",
      "primaryColor": "#007AFF"
    }
  },
  "password_secret_name": "marketplace_password",
  "featured_rank": 1
}