Bring the truffle counter to your application.

Search Papa Tartufi's published catalog with live regional prices and clear purchasability. The public API is read-only, keyless, and designed for agents as well as conventional apps.

Public API
v1 · keyless

Base URL

https://api.papatartufi.com
No credentials required
Live market context
Exact stock counts withheld

One request to get started

Ask for truffle products in the Italian EUR market. Cursor pagination is available when you need the next page.

Terminal
curl "https://api.papatartufi.com/public/v1/products?q=truffle&locale=en&country=IT&currency=EUR&limit=5"

Test checkout safely

The sandbox uses the production contract but simulates writes. It never creates a real cart, reserves inventory, charges a payment method, or places an order.

Generate a temporary sandbox token without an account. The shared public token is catalog-read only; generated tokens receive the scopes requested for simulated cart and checkout testing and expire after 24 hours.

curl -X POST https://api.papatartufi.com/sandbox/v1/keys

curl -X POST https://api.papatartufi.com/sandbox/v1/carts \
  -H "Authorization: Bearer YOUR_GENERATED_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"currency":"EUR"}'

The shared catalog key is pt_test_public_sandbox_key and can read sandbox catalog tools, but cannot create or modify carts. Simulated checkout returns checkout_url: null; customer payment remains on the Papa Tartufi storefront in the future production flow.

Sandbox responses include environment: "sandbox" and simulated: true. REST and MCP clients use the same cart contract; the MCP endpoint is https://api.papatartufi.com/mcp/sandbox.

Start without an account

The public catalog is a free, self-serve surface for agents and applications. No API key, OAuth consent, or sales contact is required.

Try it now

Send a GET request to the live read-only catalog. It is safe to test because it cannot create carts, orders, payments, or customer records.

Connect with MCP

Use the server card or Streamable HTTP endpoint with any compatible MCP client.

Coming next

Production cart and checkout access will use customer-authorized OAuth scopes and remain separate from this simulated sandbox.

A deliberately small surface

Catalog discovery, simulated cart operations, and machine-readable integration stay on a deliberately small surface. Copy any URL or open the live contract.

GET/public/v1/products

Search the published product catalog.

GET/public/v1/products/{handle}

Read one product with variants, prices, and availability.

GET/openapi.json

Use the complete OpenAPI 3.1 contract.

POST/mcp

Connect through the Streamable HTTP MCP server.

POST/sandbox/v1/keys

Create a short-lived simulated-commerce key.

POST/sandbox/v1/carts

Create a simulated cart with a generated key.

GET/sandbox/v1/carts/{id}

Read an owned simulated cart.

POST/sandbox/v1/carts/{id}/items

Add a live-priced product variant to a simulated cart.

DELETE/sandbox/v1/carts/{id}/items

Remove a variant from a simulated cart.

POST/sandbox/v1/carts/{id}/shipping-address

Set a simulated shipping address.

POST/mcp/sandbox

Use the simulated-commerce MCP tools.

GET/sandbox/v1/carts/{id}/shipping-options

List simulated shipping options.

POST/sandbox/v1/carts/{id}/checkout

Prepare a simulated checkout result.

Market data you can trust

Locale defaults to en, country to IT, and currency to EUR. Every response echoes the resolved market, including region_id.

Each variant carries its own calculated_price for the resolved Medusa region. Option combinations select the variant; the product price_range is a summary only.

Availability describes purchasability: in_stock andbackorder are purchasable, while out_of_stock is not. Exact quantities are never exposed, and weighted products are excluded.

The same catalog, through MCP

The production MCP server exposes read-only product discovery. The separate sandbox MCP endpoint adds simulated cart and checkout tools without production side effects.

Read the MCP connection guideSetup instructions, tools, and example prompts

Discovery files

Use these canonical documents to understand or index the public surface.

Predictable by design

Rate limit
120 requests per IP each minute, with standard RateLimit headers and Retry-After on 429 responses.
Pagination
Preferred opaque cursors, plus compatible offset pagination.
Versioning
Breaking changes ship under /v2, with deprecation notice before removal.
Errors
True HTTP statuses and structured error code, message, hint, and request ID fields.