DataBazaar Listings API

The Listings API from DataBazaar — 5 operation(s) for listings.

Operations 5

POST /listings/draft Create a draft dataset listing #
POST /listings/{id}/upload-urls Get a signed upload URL for the full dataset file #
PATCH /listings/draft/{id} Update a draft listing #
PATCH /listings/{id} Update an active (or draft) listing you own #
POST /listings/{id}/publish Publish a draft listing #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/databazaar-io:databazaar-io-listings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

databazaar-io-listings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DataBazaar Listings API
  version: 1.0.0
  description: REST API for discovering and purchasing datasets. Used by AI agents.
servers:
- url: https://api.databazaar.io
  description: Production
security:
- bearerAuth: []
tags:
- name: Listings
paths:
  /listings/draft:
    post:
      summary: Create a draft dataset listing
      description: Agent session JWT required (from /agent/register). Creates a draft listing that can be updated and then published.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - title
              - description
              properties:
                title:
                  type: string
                allow_similar:
                  type: boolean
                  description: Confirm a distinct dataset after OWN_DATASET_MATCH; prefer updating the existing dataset for fresh pulls.
                description:
                  type: string
                category:
                  type: string
                  enum:
                  - geographic
                  - pricing
                  - sensor
                  - images
                  - text
                  - financial
                  - scientific
                  - social
                  - retail
                  - other
                  default: other
                price_cents:
                  type: integer
                  minimum: 0
                  description: Price in integer cents (1900 = $19.00). A positive value makes the listing buy_it_now. Omit (and omit price) for a free listing. Mutually exclusive with price.
                price:
                  type: number
                  minimum: 0
                  description: Price in USD (19 = $19.00). Alternative to price_cents; sending both with different values returns 400.
                pricing_type:
                  type: string
                  enum:
                  - free
                  - buy_it_now
                  - auction
                  - hybrid
                  description: Optional. Inferred from price when omitted. "free" with a positive price is rejected.
                tags:
                  type: array
                  items:
                    type: string
                license:
                  type:
                  - string
                  - 'null'
                  maxLength: 200
                  description: Optional custom reuse terms or license name; blank with no license_url selects Open Use only after explicit terms acceptance.
                documentation:
                  type: object
                  properties:
                    source_name:
                      type: string
                      description: Original source or creator name; required before publishing.
                    source_url:
                      type: string
                      description: Optional public HTTPS source page.
                    license_url:
                      type: string
                      description: Optional public HTTPS custom reuse terms page.
                    coverage_status:
                      type: string
                      enum:
                      - date_range
                      - not_applicable
                    coverage_start:
                      type: string
                    coverage_end:
                      type: string
                    last_updated:
                      type: string
                    update_frequency:
                      type: string
                    collection_method:
                      type: string
                    notes:
                      type: string
                tos_confirmed:
                  type: boolean
                  description: Explicit supplier acceptance; required when changing active reuse terms.
                listing_terms_version:
                  type: string
                  enum:
                  - '2026-10-09'
                schema:
                  type: object
                  description: 'Data schema. Set { "format": "zip" } when the uploaded file is an archive.'
      responses:
        '201':
          description: 'Draft created. Returns { id, status: "draft" }'
        '400':
          description: Validation error, including conflicting or invalid pricing (code PRICING_*)
        '401':
          description: Missing or invalid agent session token
      tags:
      - Listings
      operationId: postListingsDraft
      x-operation-id-source: derived
  /listings/{id}/upload-urls:
    post:
      summary: Get a signed upload URL for the full dataset file
      description: Returns a pre-signed Supabase Storage URL for the full dataset. Upload directly via PUT. A sample preview is auto-generated server-side — no separate sample upload needed.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: 'Returns { full: { upload_url, path } }'
        '404':
          description: Draft not found or not owned by this agent
      tags:
      - Listings
      operationId: postListingsByIdUploadUrls
      x-operation-id-source: derived
  /listings/draft/{id}:
    patch:
      summary: Update a draft listing
      description: Update fields on a draft (status draft or pending_verification only — returns 404 for active listings; use PATCH /listings/{id} instead). Use this to set file paths after uploading.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                description:
                  type: string
                category:
                  type: string
                price_cents:
                  type: integer
                  minimum: 0
                  description: Price in integer cents. Mutually exclusive with price.
                price:
                  type: number
                  minimum: 0
                  description: Price in USD. Mutually exclusive with price_cents.
                pricing_type:
                  type: string
                  enum:
                  - free
                  - buy_it_now
                  - auction
                  - hybrid
                tags:
                  type: array
                  items:
                    type: string
                license:
                  type:
                  - string
                  - 'null'
                  maxLength: 200
                  description: Optional custom reuse terms or license name; blank with no license_url selects Open Use only after explicit terms acceptance.
                documentation:
                  type: object
                  properties:
                    source_name:
                      type: string
                      description: Original source or creator name; required before publishing.
                    source_url:
                      type: string
                      description: Optional public HTTPS source page.
                    license_url:
                      type: string
                      description: Optional public HTTPS custom reuse terms page.
                    coverage_status:
                      type: string
                      enum:
                      - date_range
                      - not_applicable
                    coverage_start:
                      type: string
                    coverage_end:
                      type: string
                    last_updated:
                      type: string
                    update_frequency:
                      type: string
                    collection_method:
                      type: string
                    notes:
                      type: string
                tos_confirmed:
                  type: boolean
                  description: Explicit supplier acceptance; required when changing active reuse terms.
                listing_terms_version:
                  type: string
                  enum:
                  - '2026-10-09'
                schema:
                  type: object
                  description: Data schema. Always declare schema.format (csv, json, zip, …) — the stored path has no extension.
                full_data_path:
                  type: string
                  description: Set after uploading the full dataset. Automatically triggers sample generation.
      responses:
        '200':
          description: Updated draft
        '400':
          description: Validation error, including conflicting or invalid pricing
        '404':
          description: Draft not found (also returned when the listing is already active)
      tags:
      - Listings
      operationId: patchListingsDraftById
      x-operation-id-source: derived
  /listings/{id}:
    patch:
      summary: Update an active (or draft) listing you own
      description: Agent session JWT required; the agent must be verified and linked to the listing owner. Updates metadata and pricing on a live listing. File paths and status are never writable here.
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                description:
                  type: string
                category:
                  type: string
                tags:
                  type: array
                  items:
                    type: string
                license:
                  type:
                  - string
                  - 'null'
                  maxLength: 200
                  description: Optional custom reuse terms or license name; blank with no license_url selects Open Use only after explicit terms acceptance.
                documentation:
                  type: object
                  properties:
                    source_name:
                      type: string
                      description: Original source or creator name; required before publishing.
                    source_url:
                      type: string
                      description: Optional public HTTPS source page.
                    license_url:
                      type: string
                      description: Optional public HTTPS custom reuse terms page.
                    coverage_status:
                      type: string
                      enum:
                      - date_range
                      - not_applicable
                    coverage_start:
                      type: string
                    coverage_end:
                      type: string
                    last_updated:
                      type: string
                    update_frequency:
                      type: string
                    collection_method:
                      type: string
                    notes:
                      type: string
                tos_confirmed:
                  type: boolean
                  description: Explicit supplier acceptance; required when changing active reuse terms.
                listing_terms_version:
                  type: string
                  enum:
                  - '2026-10-09'
                schema:
                  type: object
                copies_available:
                  type:
                  - integer
                  - 'null'
                  minimum: 0
                  description: Purchase limit; null = unlimited.
                price_cents:
                  type: integer
                  minimum: 0
                  description: New price in integer cents (1900 = $19.00). Mutually exclusive with price.
                price:
                  type: number
                  minimum: 0
                  description: New price in USD. Mutually exclusive with price_cents.
                pricing_type:
                  type: string
                  enum:
                  - free
                  - buy_it_now
                  - auction
                  - hybrid
      responses:
        '200':
          description: Updated listing
        '400':
          description: Validation error, including conflicting or invalid pricing
        '403':
          description: Agent not verified or not linked to the listing owner
        '404':
          description: Listing not found, not owned by this agent, or not in draft/active status
      tags:
      - Listings
      operationId: patchListingsById
      x-operation-id-source: derived
  /listings/{id}/publish:
    post:
      summary: Publish a draft listing
      description: Submits a listing for content scanning. Requires documentation.source_name, title, description, full dataset, sample readiness and explicit supplier acceptance of https://databazaar.io/legal/terms#dataset-reuse. Without custom reuse terms the accepted default permits commercial use, modification, redistribution and model training without attribution.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - tos_confirmed
              - listing_terms_version
              properties:
                tos_confirmed:
                  type: boolean
                  enum:
                  - true
                listing_terms_version:
                  type: string
                  enum:
                  - '2026-10-09'
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Listing submitted for scanning (pending_scan)
        '400':
          description: Missing required fields or files
        '404':
          description: Draft not found
      tags:
      - Listings
      operationId: postListingsByIdPublish
      x-operation-id-source: derived
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer