quarry
Creator guide

Publish your first dataset

Upload files, check their search results, and publish a dataset at a price you set.

To publish a dataset, create an account, upload your files, and check the indexed content. Choose payment per query, a monthly subscription, or both in the dataset's Settings before publishing.

1. Set up your account

Sign in and complete account setup:

  • Choose a handle before creating a dataset. It forms the first part of your endpoint URLs: /{handle}/{slug}. Names reserved for site routes are unavailable.
  • quarry creates your payout wallet during setup. USDC payments go to this wallet, which must be ready to publish with x402. Subscription payments use a connected Stripe account instead. See Pricing and payouts.

2. Create a dataset

Create a dataset from the dashboard and fill in these fields:

FieldConstraints
Name2–80 characters; used to generate the URL slug
DescriptionOptional, up to 500 characters; shown in the catalog and discovery contract
CategoryOptional, up to 40 characters; used to filter the catalog
Price per query0 to 10,000 USDC; applies when x402 is enabled

Describe the dataset's contents

Catalog search matches names and descriptions. State the subject, date range, and source of the files. For example: "Quarterly filings from 2023–2025 for 40 US semiconductor companies. Includes revenue, margins, and management guidance."

3. Upload files

Upload files in any of these formats:

File typeFormats
PDFPDF
Microsoft OfficeDOCX, DOC, PPTX, PPT, XLSX, XLS
OpenDocumentODT, ODS, ODP
Books and emailEPUB, EML
Text and dataMarkdown, plain text, HTML, CSV, JSON
ImagesPNG, JPEG, WEBP, GIF

quarry chooses a parser for each file type and uses OCR to extract text from scans and images when needed. It splits the extracted content into searchable passages, called chunks. Each chunk includes its filename and any headings or page numbers the parser could extract.

4. Index

Indexing starts after upload and runs in the background. quarry builds a search index that combines vector similarity with full-text search. Files move through Queued → Indexing → Ready on the dataset page. Large files and scanned PDFs can take several minutes. You can leave the page while indexing runs.

Failed jobs are retried up to three attempts per file. A periodic recovery check also retries interrupted jobs. If a file reaches Error, read its error message, correct the file if needed, and retry indexing from the dataset page. Reindexing the entire dataset has a five-minute cooldown.

Agents receive the passages extracted from your files, ranked by relevance, not a written answer. Review them before publishing.

Inspect a file

Open a file to inspect its extracted content before publishing:

ViewUse
DocumentRead extracted elements in page or slide order and select their source locations where available
MarkdownRead and download the extracted Markdown
JSONInspect and download the structured parser output
ChunksReview the passages used for retrieval and locate them in the source where available

PDF and PowerPoint chunk previews can show location boxes. Markdown and text previews use source text positions when reliable matches are available. Some formats or parser results have no location data; their content remains readable. Files indexed before inspection support show a reindex hint. Follow it if you need the new views or corrected PowerPoint locations.

5. Publish

In Settings → Payment options, choose how new buyers can pay:

OptionSetup
Pay per query · x402Set a USDC query price and have a ready payout wallet
Monthly subscriptionConnect Stripe and save a monthly USD price, query quota, and dataset usage terms
Pay per query and monthly subscriptionConfigure both payment options

To enable monthly sales, open Subscriptions → Selling, click Connect Stripe, complete onboarding, and click Check status. Return to the dataset's payment options and fill in Monthly price (USD), Queries per month, and Dataset usage terms, then click Save payment options. Monthly prices range from $0.50 to $10,000; quotas range from 1 to 10,000,000 queries. The quota is shared by each buyer's connected agents. Offer changes apply to new subscribers; existing subscriptions keep their price, quota, and terms.

If monthly payments are not enabled for your quarry environment, Settings shows the options with an availability message and disables saving them.

Publishing requires indexed content and the selected payment setup. The creator API returns 409 when a requirement is unmet:

RequirementError if unmet
Payout wallet ready when x402 is enabledPAYOUT_WALLET_NOT_READY
Dataset ready with at least one indexed chunkDATASET_EMPTY
Active monthly offer and ready Stripe account when x402 is disabledSUBSCRIPTION_NOT_READY

The public query API uses PAYOUT_NOT_CONFIGURED for a missing or invalid payout address. See Error codes.

Set the price to 0 to make questions free: agents then get answers without paying or holding a wallet, within rate limits. Free answers count as answered questions in your usage, never as revenue.

Once published, your dataset has an endpoint at https://quarry.market/{handle}/{slug} with a free GET contract. It appears in Explore and in the MCP server's free search, which ranks every dataset against an agent's question. Agents then ask your dataset, paying per question with x402 (inside MCP or with a POST at that URL) or with their subscription. x402 discovery metadata also supports indexing in Coinbase x402 Bazaar when the CDP facilitator is configured.

When an agent searches quarry, the top results can show a short free preview: up to 200 characters of the passage that best matches the question, with its file name and page. It helps agents choose your dataset; the full passages remain paid. Previews are limited per agent and per dataset.

The setting is under Settings → Pricing → Show a free preview in agent search. New datasets start with previews on, and the publish confirmation tells you which way it is set. You can switch it at any time, including while the dataset is live. Datasets published before previews existed start with them off.

Unpublish or retire

Unpublishing removes the dataset from public discovery and stops public x402 queries. Cached contracts and catalog pages can take longer to update.

A dataset with a subscription offer or protected paid access enters retirement: new sales stop, renewals are canceled, and existing subscribers retain access through the authenticated agent routes until their paid periods end. Its content is protected while subscriptions remain open or paid access remains. Once those periods and subscriptions have ended, use Return to draft to edit, delete, or publish a new offer.

On this page