The marketplace for agent-ready data.
Buy and sell packets with rights, provenance, evaluation, and manifests built in.
Sample packet
Graunt Packet Template
The complete guide to building Graunt packets — every content family, with worked examples. Paste it into your assistant and it knows how to build and list packets.
{
"template": "graunt-packet-template/v1",
"name": "Graunt Packet Template",
"summary": "The complete guide to building and listing a Graunt packet — every content family Graunt accepts, the metadata contract, the rights declaration, a worked packet-set example, and the exact endpoints to prepare a listing with or without an account.",
"how_to_use_this": [
"Paste this entire document into your assistant.",
"Your assistant interviews you — what you do, what data you touch, what you have rights to — then proposes packets you could sell (see the ideation section). Already know your source material? Just tell it.",
"It prepares your graunt/packet.json prefill, metadata.csv, and rights declaration from the templates here, then either walks you through the seller flow at graunt.com/sell or drives the draft API itself."
],
"llm_authoring": {
"works_with": "Use this template with ChatGPT, Claude, Grok, or Gemini to build a compliant packet for sale on Graunt. Any assistant that can read a document and write JSON and CSV can author a packet from it.",
"steps": [
"1. Give your assistant this template plus an inventory of your source material (filenames, what each file is, where it came from, what rights you hold).",
"2. Ask it to fill graunt/packet.json — the prefill manifest below — with your packet's name, summary, price, and rights declaration, and to write a metadata.csv row per source file.",
"3. Put graunt/packet.json and metadata.csv in the folder with your source files (or a zip of the same).",
"4. Drag the folder into graunt.com/sell. A complete prefill means the Refinery proposes the whole draft — your remaining work is reviewing it and clicking List it once. That confirm click records your rights attestation.",
"5. No account? Your assistant can drive the anonymous-draft API instead (see 'Building one — with an agent' below) and hand you a claim key."
]
},
"ideation": {
"instruction_to_assistant": [
"Before building anything: interview your human. Ask what they do, what data or documents they produce or touch every week, what they know that others pay for, and what they have clear rights to.",
"From their answers, propose 5-10 CONCRETE packet ideas they could sell on Graunt. For each idea state: a working title, who buys it (the human team or the AI agent that needs it in context), what source material it needs, the rights basis it would declare, and a starting price in dollars (one-time; typical packets sell between $5 and $200 — a focused reference table lower, a maintained professional corpus higher). Use the worked archetypes below as shape references.",
"Rank the ideas by effort-to-value: what they can ship THIS WEEK from material they already have comes first.",
"Every idea is a proposal the human vets — never assume rights they have not confirmed, and never invent provenance.",
"When they pick one, build it with the templates below and take it to graunt.com/sell."
],
"idea_archetypes": [
{
"shape": "Support-ticket or Q&A exports",
"who_buys": "Teams and agents building support automation in the same domain",
"source_material": "Resolved tickets or Q&A threads the seller owns, scrubbed of personal data",
"rights_basis": "Owned original work product; personal data removed and declared",
"example_price_dollars": 49
},
{
"shape": "Maintenance or operations logs",
"who_buys": "Agents doing predictive maintenance, ops copilots, industrial analytics teams",
"source_material": "Equipment/service logs with timestamps, actions, and outcomes",
"rights_basis": "Owned operational records; no third-party confidential content",
"example_price_dollars": 79
},
{
"shape": "Price tables and rate schedules",
"who_buys": "Procurement agents, quoting tools, market researchers",
"source_material": "The seller's own published or maintained price/rate data",
"rights_basis": "Owned original or openly published by the seller",
"example_price_dollars": 19
},
{
"shape": "Niche how-to guides and SOPs",
"who_buys": "Professionals in the niche and the assistants they hand tasks to",
"source_material": "Working procedures, checklists, and rubrics the seller actually uses",
"rights_basis": "Owned original authorship",
"example_price_dollars": 29
},
{
"shape": "Transcripts with consent",
"who_buys": "Researchers, trainers, agents learning a domain's real language",
"source_material": "Interviews, talks, or meetings the seller recorded WITH documented consent to sell",
"rights_basis": "Owned recording + explicit consent covering commercial redistribution",
"example_price_dollars": 59
},
{
"shape": "Synthetic evaluation sets",
"who_buys": "AI teams testing models or agents against known-good answers",
"source_material": "Worked examples with expected outcomes the seller authors (no copied benchmark items)",
"rights_basis": "Owned original synthetic authorship",
"example_price_dollars": 99
},
{
"shape": "Normalization maps",
"who_buys": "Data teams and agents cleaning the same messy vocabulary",
"source_material": "Messy-to-clean mappings (vendor names, product codes, job titles) the seller maintains",
"rights_basis": "Owned original curation",
"example_price_dollars": 39
},
{
"shape": "Refined public-domain or government material",
"who_buys": "Anyone who needs the source citable and machine-readable NOW",
"source_material": "Public-domain/government documents — the machine-optimized, citable packet is the product",
"rights_basis": "Public domain or government work, declared as such",
"example_price_dollars": 15
}
],
"why_graunt": [
"Packets sell with rights, provenance, and manifests built in — buyers and their agents can verify what they bought.",
"Agent-native delivery: the packet is consumable by ChatGPT, Claude, Gemini, and Grok out of the box — buyers hand it to their assistant and it works.",
"Upload source files and the Refinery builds the machine-readable layers — you review the result and click List.",
"Free to list — $0 to start. You keep the seller net on every sale (Graunt's commission comes out of the gross; there are no listing fees).",
"Publication checks run automatically on submission; eligible listings publish through the canonical gate without a waiting room."
]
},
"prefill_manifest": {
"manifest_schema": "graunt/packet-prefill/v1",
"filename": "graunt/packet.json",
"purpose": "One JSON file that carries the whole listing's declarations — name, summary, rights, license flags, and pricing. Include it in your upload next to the source files (an assistant working from the Graunt Packet Template can fill it for you). A complete prefill lets the Refinery propose the entire draft; your remaining work is one review-and-confirm click.",
"fields": [
{
"field": "schema",
"required": true,
"note": "the literal \"graunt/packet-prefill/v1\""
},
{
"field": "name",
"required": true,
"note": "the packet's listing title (1–200 chars)"
},
{
"field": "summary",
"required": true,
"note": "what the packet contains and who it is for (1–2000 chars)"
},
{
"field": "price.amount_cents",
"required": true,
"note": "integer cents; 0 = free, paid must clear the paid order minimum"
},
{
"field": "price.monthly_cents / price.annual_cents",
"required": false,
"note": "subscription plan prices in integer cents; annual without monthly is the annual-only plan"
},
{
"field": "rights.rights_basis",
"required": true,
"note": "OWNED_ORIGINAL | GOVERNMENT_WORK | PUBLIC_DOMAIN | CC0 | LICENSED_REDISTRIBUTABLE | SYNTHETIC_SELF_GENERATED"
},
{
"field": "rights.training_allowed",
"required": true,
"note": "boolean — may buyers train models on this content"
},
{
"field": "rights.redistribution_allowed",
"required": true,
"note": "boolean — may buyers redistribute the content"
},
{
"field": "rights.license_family / rights.citation_required",
"required": false,
"note": "license family label and citation flag when applicable"
},
{
"field": "provenance.source_url / provenance.publisher",
"required": false,
"note": "where the material came from; strengthens the packet, never fabricated"
},
{
"field": "tags / intended_uses",
"required": false,
"note": "topic tags and declared use modes"
}
],
"complete_when": "name, summary, price.amount_cents, rights.rights_basis, rights.training_allowed, and rights.redistribution_allowed are all present and valid. Partial prefills still ingest — the Refinery flags exactly what is missing.",
"confirm_semantics": "Prefilled values are PROPOSED, never final: the seller reviews the draft and clicks List it, and that confirm click is what records the rights attestation. Nothing is attested on the seller's behalf."
},
"price": {
"amount_cents": 0,
"currency": "USD",
"label": "Free"
},
"rights": {
"license": "Public domain (CC0)",
"training_allowed": true,
"citation_required": false
},
"provenance": {
"source": "graunt.com",
"maintained_by": "Graunt"
},
"what_is_a_packet": [
"A packet is source material packaged for buyers AND agents: the original files, machine-readable layers, and a manifest that records what is inside.",
"Every packet carries declared rights (what a buyer may do), provenance (where the material came from), evaluation evidence (what was checked), and known limitations (what a buyer should know).",
"Source originals are preserved byte-for-byte; machine layers point INTO them — they never replace them."
],
"what_a_listing_needs": [
"Source files: the material the packet is built from.",
"A description: what the packet contains and who it is for.",
"Declared rights and provenance: license basis, source, date, version.",
"A price: free ($0) or a paid price in integer cents."
],
"how_to_build_one": {
"on_the_site": [
"1. Gather source files into a folder (optionally with a metadata.csv from the template below).",
"2. Start at graunt.com/sell and upload the folder or a zip to the Refinery.",
"3. The Refinery extracts your files, drafts the listing, and proposes anything missing — you confirm rights and pricing.",
"4. Submit. Publication checks run automatically; eligible listings publish through the canonical publication gate."
],
"with_an_agent_no_account_needed": [
"1. Generate an agent discovery key on graunt.com (one click, no account) or POST /v1/agent-keys/starter. Send it as the Bearer token on every call below.",
"2. POST /v1/anonymous-drafts with an empty JSON body {} to create a private draft owned by that key.",
"3. PATCH /v1/anonymous-drafts/{id} with {\"title\": \"...\", \"priceCents\": 2500, \"state\": {\"description\": \"...\", \"contentType\": \"...\", \"category\": \"...\", \"tags\": [\"...\"]}}. This surface uses camelCase. The anonymous lane is PAID-ONLY: priceCents must be 50-10000 (i.e. $0.50-$100); free packets go through the account Refinery at graunt.com/sell instead.",
"4. POST /v1/anonymous-drafts/{id}/uploads with {\"filename\", \"contentType\", \"sizeBytes\"} to receive a short-lived upload URL; PUT the bytes to it; then POST /v1/anonymous-drafts/{id}/uploads/complete with {\"memberId\", \"sizeBytes\", \"contentSha256\"} where contentSha256 is the bare lowercase 64-hex sha256 of the bytes (no prefix).",
"5. POST /v1/anonymous-drafts/{id}/validate to see what is still missing; POST /v1/anonymous-drafts/{id}/submission-attestation to attest rights; then POST /v1/anonymous-drafts/{id}/submit.",
"6. When the human registers at graunt.com/register and enters the key, the drafts and any held sales move to their account."
]
},
"metadata_csv": {
"header": "filename,display_name,description,rights,citation,packet_category,buy_price",
"recognized_columns": {
"filename": [
"filename",
"file",
"document",
"name",
"path"
],
"source_url": [
"source_url",
"url",
"link",
"source",
"uri"
],
"rights": [
"rights",
"license",
"copyright",
"rights_status"
],
"citation": [
"citation",
"cite",
"cite_as"
],
"title": [
"title",
"subject"
],
"publication_date": [
"publication_date",
"date",
"published",
"pub_date"
],
"sub_packet": [
"sub_packet",
"topic",
"category",
"folder",
"collection"
],
"sha256": [
"sha256",
"sha",
"hash",
"checksum"
],
"author": [
"author"
],
"publisher": [
"publisher"
],
"source_authority": [
"source_authority"
],
"foundation": [
"foundation"
],
"shared_scope": [
"shared_scope"
],
"display_name": [
"display_name"
],
"description": [
"description"
],
"use_when": [
"use_when"
],
"packet_category": [
"packet_category"
],
"buy_price": [
"buy_price"
],
"monthly_sub": [
"monthly_sub"
],
"annual_sub": [
"annual_sub"
]
},
"unknown_columns": "Unknown columns are retained as extra_<column> and never cause a failure.",
"join_order": [
"exact path",
"basename",
"normalized basename",
"sha256"
],
"filled_example": "filename,display_name,description,rights,citation,packet_category,buy_price\nhandbook.md,Field Handbook,Complete maintenance handbook for X,OWNED_ORIGINAL,https://your-site.example/handbook,COMPLETE,1500\nruling-2024.pdf,Agency Ruling 2024-11,Born-digital agency ruling,GOVERNMENT_WORK,https://agency.example.gov/ruling,SUB_PACKET,400\nprices.csv,Regional Price Table,Weekly regional prices with units,OWNED_ORIGINAL,,COMPLETE,900\ninterview-04.mp3,Interview 04,Recorded interview with consent on file,OWNED_ORIGINAL,,SUB_PACKET,700\nchannel-analytics.json,Channel Analytics 2025,My channel analytics export,OWNED_ORIGINAL,,COMPLETE,1200\nvibration-log.csv,Pump Vibration Log,Hourly vibration telemetry with units,OWNED_ORIGINAL,,COMPLETE,2000\napi-reference.md,Payments API Reference,Versioned endpoint reference,LICENSED_REDISTRIBUTABLE,https://vendor.example/docs,COMPLETE,1100\nsnapshot-2026-07.csv,July Snapshot,Current monthly snapshot of the feed,OWNED_ORIGINAL,,COMPLETE,800\nsynthetic-tickets.jsonl,Synthetic Support Tickets,Generated tickets; method declared,SYNTHETIC_SELF_GENERATED,,COMPLETE,600"
},
"rights_declaration": [
"Declare a rights basis for EVERY source file: OWNED_ORIGINAL (you made it), GOVERNMENT_WORK / PUBLIC_DOMAIN / CC0 (public material), LICENSED_REDISTRIBUTABLE (you hold a license that allows resale), or SYNTHETIC_SELF_GENERATED (you generated it — declare the method).",
"Public-domain source still produces a refined, machine-optimized packet you may price.",
"Provide citation / source_url where you have it; provenance strengthens the packet but is never fabricated for you.",
"Absent required metadata is proposed and flagged for your confirmation — never silently invented."
],
"extractor_status_legend": {
"LIVE_LOCAL": "extracts locally in the compile",
"PREVIEW_LOCAL": "extracts in preview (partial machine layers)",
"PLANNED_LOCAL": "preserved as source; no local extractor for this format",
"PROVIDER_ASSISTED": "preserved as source; full extraction requires a configured provider",
"PROVIDER_NOT_CONFIGURED": "preserved as source; full extraction requires a provider that is not configured",
"TASK_PLANNED": "preserved as source; extraction recorded as an explicit task",
"RESERVED_CONTRACT": "contract reserved; preserved as source",
"SOURCE_ONLY": "preserved as source",
"UNSUPPORTED": "not supported for sale"
},
"content_families": [
{
"family": "TEXT_DOC",
"label": "Text and documents",
"guidance": "Plain text, markdown, manuals, guides, corpora. Extracts locally into normalized text + addressable content units with byte-span citations. The strongest starting family.",
"example_metadata_row": "handbook.md,Field Handbook,Complete maintenance handbook for X,OWNED_ORIGINAL,https://your-site.example/handbook,COMPLETE,1500",
"content_types": [
{
"label": "Plain text",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Markdown",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "HTML",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Rich text / DOCX",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Email export",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Chat / message export",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Forum thread",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Social media post/export",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Review export (Yelp/Google/App-store)",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Blog / news article",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Legal document",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Contract",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Policy document",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Book",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Ebook",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Manuscript",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Manual / playbook",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Research paper",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Public filing",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Invoice",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Receipt",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Form",
"extractor_status": "LIVE_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Slide deck",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
},
{
"label": "Notebook",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "content_units.jsonl + normalized.txt"
}
]
},
{
"family": "PDF_SCAN_IMAGE_TEXT",
"label": "PDFs, scans, and images with text",
"guidance": "Born-digital PDFs extract locally. Scans and photos of text are preserved as source with an explicit extraction status; OCR layers require a provider and are never silently claimed.",
"example_metadata_row": "ruling-2024.pdf,Agency Ruling 2024-11,Born-digital agency ruling,GOVERNMENT_WORK,https://agency.example.gov/ruling,SUB_PACKET,400",
"content_types": [
{
"label": "Digital (born-digital) PDF",
"extractor_status": "LIVE_LOCAL",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Scanned PDF",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "OCR-heavy PDF",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Photographed document",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Screenshot",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Map image",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Chart image",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Diagram",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Whiteboard",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Handwritten note",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
},
{
"label": "Form scan",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "embedded/OCR text content_units + page_registry"
}
]
},
{
"family": "STRUCTURED",
"label": "Structured data",
"guidance": "CSV, TSV, JSON, JSONL, spreadsheets, database exports. Extracts locally into structured records plus a schema layer; describe the columns in your description.",
"example_metadata_row": "prices.csv,Regional Price Table,Weekly regional prices with units,OWNED_ORIGINAL,,COMPLETE,900",
"content_types": [
{
"label": "CSV",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "TSV",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Spreadsheet (XLSX)",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "JSON",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "JSONL",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "XML",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "YAML",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "SQL dump",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Parquet-like export",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Log file",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Event stream",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Clickstream",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Time series",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Nested API response",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Data dictionary",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
},
{
"label": "Schema-only artifact",
"extractor_status": "LIVE_LOCAL",
"machine_format": "canonical CSV/JSONL/records + content_units"
}
]
},
{
"family": "MEDIA",
"label": "Media (images, audio, video)",
"guidance": "Images, audio, video. Source is always preserved; transcript and vision layers depend on provider availability and carry explicit status artifacts when not produced.",
"example_metadata_row": "interview-04.mp3,Interview 04,Recorded interview with consent on file,OWNED_ORIGINAL,,SUB_PACKET,700",
"content_types": [
{
"label": "Photo / image",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Illustration / artwork",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Audio speech",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Audio music",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Ambient audio",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Podcast / interview",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Video recording",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Video with audio",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Screen recording",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Lecture",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Webinar",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Surveillance / security camera",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Live window/weather/traffic camera",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Multi-camera feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Timelapse",
"extractor_status": "PROVIDER_NOT_CONFIGURED",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Drone imagery",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Aerial imagery",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
},
{
"label": "Satellite-style imagery",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "media metadata + transcript/visual layers + content_units"
}
]
},
{
"family": "ACCOUNT_PLATFORM_EXPORT",
"label": "Account and platform exports",
"guidance": "Your own platform or account exports (posts, analytics, listings, logs). Declare that the export is yours to sell; personal data raises the review bar.",
"example_metadata_row": "channel-analytics.json,Channel Analytics 2025,My channel analytics export,OWNED_ORIGINAL,,COMPLETE,1200",
"content_types": [
{
"label": "Brokerage positions/holdings",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Brokerage transactions",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Brokerage orders",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Crypto exchange balances",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Crypto wallet activity",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Crypto wallet snapshot",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Bank / finance export",
"extractor_status": "UNSUPPORTED",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Marketplace seller analytics",
"extractor_status": "LIVE_LOCAL",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Creator/social analytics",
"extractor_status": "LIVE_LOCAL",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "App analytics",
"extractor_status": "LIVE_LOCAL",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Ad campaign exports",
"extractor_status": "LIVE_LOCAL",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "CRM / customer export",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Support-ticket export",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Social media archive",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
},
{
"label": "Search/export snapshots",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "normalized snapshot JSONL + content_units"
}
]
},
{
"family": "PHYSICAL_SENSOR",
"label": "Physical sensor data",
"guidance": "Sensor logs, telemetry, measurement series. Include units, capture method, and time range in the description; time-series machine layers are produced where formats allow.",
"example_metadata_row": "vibration-log.csv,Pump Vibration Log,Hourly vibration telemetry with units,OWNED_ORIGINAL,,COMPLETE,2000",
"content_types": [
{
"label": "Weather station",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Window weather camera",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "Road/traffic camera",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "Footfall counter",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "IoT sensor",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "GPS / mobility",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "Geospatial feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "Noise sensor",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Environmental sensor",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Air-quality sensor",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Water sensor",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Energy/utility readings",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Industrial telemetry",
"extractor_status": "PLANNED_LOCAL",
"machine_format": "time-series records + content_units"
},
{
"label": "Inventory/shelf observation",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
},
{
"label": "Construction progress",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "time-series records + content_units"
}
]
},
{
"family": "INTEGRATION_REFERENCE",
"label": "Integration and reference material",
"guidance": "API references, schemas, mappings, lookup tables, documentation sets. High value to agents; keep versions and effective dates explicit.",
"example_metadata_row": "api-reference.md,Payments API Reference,Versioned endpoint reference,LICENSED_REDISTRIBUTABLE,https://vendor.example/docs,COMPLETE,1100",
"content_types": [
{
"label": "API spec",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "OpenAPI spec",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "MCP spec",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "SDK docs",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Repo instructions",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "AGENTS.md",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "CLAUDE.md",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Prompt pack",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Evaluation rubric",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Policy reference",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Workflow recipe",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Model card",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Benchmark / eval report",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Agent run log",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "LLM output / eval trace",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Public-source digest",
"extractor_status": "PREVIEW_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
},
{
"label": "Generated artifact bundle",
"extractor_status": "LIVE_LOCAL",
"machine_format": "structured JSON/MD index + content_units"
}
]
},
{
"family": "LIVE_REFRESHED_POOL",
"label": "Live, refreshed, and pooled sources",
"guidance": "Feeds, refreshed datasets, pooled sources. The packet you list today is the current snapshot; refresh and feed capabilities are governed by the capability registry.",
"example_metadata_row": "snapshot-2026-07.csv,July Snapshot,Current monthly snapshot of the feed,OWNED_ORIGINAL,,COMPLETE,800",
"content_types": [
{
"label": "Live raw stream",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Scrubbed stream",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Machine-only vision feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Daily refreshed dataset",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Next-day account snapshot",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Real-time account snapshot",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Event/delta feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Time-series feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Snapshot-only feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Delayed review feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Polling connector",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Webhook-fed source",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Rolling archive",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "No-retention ephemeral feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Pooled aggregate feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Pool member feed",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
},
{
"label": "Pooled derived dataset",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "feed manifest + machine-only event/snapshot records"
}
]
},
{
"family": "SYNTHETIC_MIXED",
"label": "Synthetic and mixed bundles",
"guidance": "Synthetic datasets and mixed bundles. Declare generation method and any source models or seeds; synthetic origin is a disclosure, never a defect.",
"example_metadata_row": "synthetic-tickets.jsonl,Synthetic Support Tickets,Generated tickets; method declared,SYNTHETIC_SELF_GENERATED,,COMPLETE,600",
"content_types": [
{
"label": "Synthetic data",
"extractor_status": "LIVE_LOCAL",
"machine_format": "component manifest + per-component machine layers"
},
{
"label": "Model output",
"extractor_status": "LIVE_LOCAL",
"machine_format": "component manifest + per-component machine layers"
},
{
"label": "Mixed archive",
"extractor_status": "LIVE_LOCAL",
"machine_format": "component manifest + per-component machine layers"
},
{
"label": "Bundle",
"extractor_status": "LIVE_LOCAL",
"machine_format": "component manifest + per-component machine layers"
},
{
"label": "Evidence bundle",
"extractor_status": "LIVE_LOCAL",
"machine_format": "component manifest + per-component machine layers"
},
{
"label": "Hosted reference",
"extractor_status": "RESERVED_CONTRACT",
"machine_format": "component manifest + per-component machine layers"
}
]
}
],
"packet_sets": {
"manifest_schema": "graunt/packet-set/v1",
"roles": [
"MASTER",
"FOUNDATION",
"MEMBER"
],
"packet_categories": [
"COMPLETE",
"FOUNDATION",
"SUB_PACKET"
],
"agent_ready_rule": "Tier 0 (deterministic, model-free retrieval files) is required ONLY when you claim a packet is agent-ready. Tier 1 (standard navigation) and Tier 2 (premium/semantic) are optional and never required to publish.",
"worked_example": {
"manifest_schema": "graunt/packet-set/v1",
"set_key": "example-regulatory-set",
"title": "Example Regulatory Packet Set",
"created_from": "MANUAL_ASSEMBLY",
"members": [
{
"member_key": "foundation",
"role": "FOUNDATION",
"packet_category": "FOUNDATION",
"listing_title": "Regulatory Foundation",
"price_cents": 10000,
"version_identifier": "1.0",
"delivery": {
"dataset_id": "00000000-0000-4000-8000-000000000001"
},
"rights_block": {
"license": {
"family": "PUBLIC_DOMAIN"
}
},
"provenance_ref": "https://example.gov/source",
"ordering": 0
},
{
"member_key": "topic-fiduciary",
"role": "MEMBER",
"packet_category": "SUB_PACKET",
"listing_title": "Topic: Fiduciary Duty",
"price_cents": 4000,
"delivery": {
"packet_bundle_revision_id": "00000000-0000-4000-8000-000000000002"
},
"foundation_member_ref": "foundation",
"min_foundation_version": "1.0",
"rights_block": {
"license": {
"family": "PUBLIC_DOMAIN"
}
},
"provenance_ref": "https://example.gov/source",
"retrieval_floor": {
"agent_ready_claim": true,
"tier0_status": "PASSED",
"tier0_artifact_refs": [
"machine/retrieval_chunks.jsonl",
"machine/bm25_meta.json"
]
},
"ordering": 1
},
{
"member_key": "topic-advertising",
"role": "MEMBER",
"packet_category": "SUB_PACKET",
"listing_title": "Topic: Advertising Rule",
"price_cents": 4000,
"delivery": {
"dataset_id": "00000000-0000-4000-8000-000000000003"
},
"foundation_member_ref": "foundation",
"rights_block": {
"license": {
"family": "PUBLIC_DOMAIN"
}
},
"provenance_ref": "https://example.gov/source",
"ordering": 2
},
{
"member_key": "master",
"role": "MASTER",
"packet_category": "COMPLETE",
"listing_title": "Complete Regulatory Set",
"price_cents": 15000,
"delivery": {
"dataset_id": "00000000-0000-4000-8000-000000000004"
},
"rights_block": {
"license": {
"family": "PUBLIC_DOMAIN"
}
},
"provenance_ref": "https://example.gov/source",
"ordering": 3
}
],
"shared_assets": []
}
},
"what_the_refinery_produces": [
"source originals (preserved byte-for-byte with content_sha256)",
"normalized content",
"content_units (stable ids + byte offsets)",
"retrieval_chunks",
"chunk_context",
"BM25 postings + meta",
"router.retrieval guidance",
"manifest + checksums"
],
"review_and_publication": [
"Assembled listings enter PENDING_REVIEW.",
"Publication checks run automatically on submission; eligible listings publish through the canonical publication gate, and anything that needs a closer look routes to manual review. Assembly itself never publishes a listing."
],
"machine_endpoints": {
"this_document": "GET https://api.graunt.com/v1/meta/packet-template",
"assembly_contract": "GET https://api.graunt.com/v1/meta/packet-assembly-contract",
"starter_kit": "GET https://api.graunt.com/v1/meta/packet-assembly-starter-kit",
"template_kits_index": "GET https://api.graunt.com/v1/meta/packet-templates",
"search_catalog": "GET https://api.graunt.com/v1/listings?q=<keywords>",
"listing_detail": "GET https://api.graunt.com/v1/listings/{id}",
"agent_discovery_key": "POST https://api.graunt.com/v1/agent-keys/starter",
"anonymous_drafts": "POST https://api.graunt.com/v1/anonymous-drafts",
"pricing": "GET https://api.graunt.com/v1/meta/pricing"
},
"notes": [
"The Refinery runs deterministic, model-free extraction; you bring your own retrieval or model stack to use the agent-ready files.",
"Unsupported or scan-only inputs are recorded with an explicit extraction status — they are never silently dropped or claimed as fully extracted.",
"This template is itself a free Graunt packet, listed on the marketplace as 'Graunt Packet Template'. The listed packet delivers template.md (this document), graunt/packet.json (a filled prefill example), metadata.csv (the file contract with real rows), rights_and_licensing.md, pricing.md, AGENTS.md (assistant instructions), and packet-set.example.json (a worked set manifest)."
]
}
curl https://api.graunt.com/v1/meta/packet-template
Rights
Provenance
Evaluation
Manifest
Agent API
Give your agent a key
One click. Your agent can search and inspect every packet on Graunt — and the key ties to your account when you create one.
From source material to agent-ready packet
- Upload source material. Files, folders, or a zip.
- Graunt builds the packet. The Refinery adds rights, provenance, manifest, and machine-readable layers.
- People and agents use it. Through the catalog, the API, and Access Passes.
Turn source material into a packet.
Graunt proposes the packet — you approve rights and pricing.