Developers

Abandonware runs on Shopify, so the catalog and cart are reachable over plain HTTP, GraphQL and MCP. This page covers what's available, how to authenticate when you need to, and a quickstart. Everything below works on https://abandonware.online.

API reference

Quickstart

No key is needed for any of these.

1. Search the catalog

curl "https://abandonware.online/search/suggest.json?q=clippy&resources[type]=product"

2. Get a product and its variant ids (prices are in cents, USD)

curl "https://abandonware.online/products/PRODUCT-HANDLE.js"

3. Add a variant to a cart and read it back (the cart lives in the cart cookie, so keep a cookie jar)

curl -c jar -b jar -X POST "https://abandonware.online/cart/add.js" \
  -H "Content-Type: application/json" \
  -d '{"items":[{"id":VARIANT_ID,"quantity":1}]}'
curl -b jar "https://abandonware.online/cart.js"

4. Hand off to checkout. Send the shopper to https://abandonware.online/checkout with the same cart. A person completes shipping and payment; no endpoint here places an order.

Or use GraphQL without a token:

curl -X POST "https://abandonware.online/api/2026-10/graphql.json" \
  -H "Content-Type: application/json" \
  -d '{"query":"{ products(first: 5) { nodes { handle title } } }"}'

For AI agents

  • MCP, catalog and cart: POST /api/ucp/mcp implements the Universal Commerce Protocol (search_catalog, lookup_catalog, get_product, plus cart tools). Each request has to carry your agent's UCP profile URL. See Shopify's Storefront Catalog MCP docs.
  • MCP, policies and FAQs: POST /api/mcp exposes search_shop_policies_and_faqs for shipping and returns questions.
  • WebMCP (in the browser): pages on this site register search_products, get_product, get_cart, add_to_cart and update_cart_line with document.modelContext, so a browser agent can shop for the person using it. The tools return the checkout URL but never pay.

Authentication and scopes

What Auth Scopes
Catalog, search, cart endpoints, MCP None None. Everything here is public.
Storefront GraphQL None, or an optional X-Shopify-Storefront-Access-Token for higher limits Storefront access scopes on the token, such as unauthenticated_read_product_listings
Customer Account API (a shopper's own orders, profile and addresses) OAuth 2.0 authorization code with PKCE, granted by the shopper openid, email, customer-account-api:full

API keys and OAuth clients: there's no self-serve key signup. Storefront tokens and Customer Account API clients are issued by the store. Email support@abandonware.online with what you're building and the redirect URIs you need. Request only the scopes you use.

Testing

There's no separate sandbox store. Catalog and search calls are read-only. Carts are per session and expire on their own, and nothing is charged unless a person finishes checkout. Experimenting against the live store is fine as long as you don't place real orders.

Limits and etiquette

  • Shopify rate-limits storefront traffic. On 429, wait for Retry-After before retrying.
  • Identify your client with a descriptive User-Agent.
  • Crawling rules are in /robots.txt, and the full list of URLs is in /sitemap.xml.

Contact

Questions, bugs or access requests: support@abandonware.online or the contact form.

E-mail us!