API documentation JSON requests

Use these pages as copy/paste references for the supported API request bodies.

Agents and MCP

API v2 + MCP

Catalog, proposals and contacts for AI models and integrations

Products, categories, attributes, tags and images; proposals (templates, lines, sub-lines, Hanna CRM links) and client contacts — as a simple JSON API and as MCP tools. Scoped keys, dry-run previews, live OpenAPI spec, guides for agents.

Connect an agent

Connect Claude, ChatGPT, Cursor

claude.ai / ChatGPT connectors with Wantly sign-in (no API key), Claude Code, Cursor and SDK configs with an API key. Share this page with customers.

openapi-agent.yaml

Older agent spec (v1)

OpenAPI 3 for the original eight agent operations. For new setups use the live API v2 spec (/api/v2/openapi.json).

wantly-mcp.js

Older local MCP script

Node 18+ stdio script over the v1 API. New setups should use the remote MCP server at /api/mcp.

API key

Authenticate every tenant API request with one of:

To generate or view it, log in as an administrator and open the app's API integration settings. In the API tab, click Generate API key if no key exists. After it is generated, the key is shown in the read-only API key field.

The Generate API key button is available only when API access is enabled for the current plan.

AI apps (claude.ai, ChatGPT) do not need this key: add https://YOUR-TENANT.wantly.eu/api/mcp as a connector and sign in with your Wantly account (how).

Agents and MCP (public pages, no repository): Connect an agent, openapi-agent.yaml, wantly-mcp.js.

Available API request docs

POST /api/createproduct

Create or update products

Creates single or bulk products, or updates an existing product when id is provided or sku already exists. Includes attributes, variations, included products, and related products.

POST /api/updateprices

Update prices by SKU

Bulk-updates prices for simple products and variations matched by SKU (case-insensitive). Accepts a full price object or a single number for a simple tier.

POST /api/getproducts

Get products

Lists, filters, or fetches one product by id or sku. Optional expansions include images, attributes, and variations.

POST /api/createcontact

Create or update contacts

Creates single or bulk contacts. When code matches an existing contact, the existing contact is updated instead of duplicated.

POST /api/getcontacts

Get contacts

Lists, filters, searches, or fetches one contact. Contact meta is returned both as rows and as a merged meta object.

POST /api/createproposal experimental

Create proposals

Beta/experimental endpoint for creating proposals with entries, groups, settings, optional contact objects, and optional product references or embedded product payloads.

POST /api/getproposals

Get proposals and templates

Lists, filters, or fetches one proposal. Supports templates_only for proposal templates where type == 4.

GET /api/hanna/proposals

Hanna CRM opportunities

Link proposals to a Hanna CRM opportunity (pardavimo galimybė) when creating or editing them, and list or filter proposals by opportunity.

POST /api/createproposalfromcatalog

Create proposals from catalog lines

Agent-oriented create: client plus product id/SKU and quantity. Catalog prices and VAT are resolved on the server. Optional template copies settings and custom fields, not line items.

POST /api/createproposalfromtemplate

Create proposals from templates

Clones an existing proposal template, copies its entries and settings, and replaces the customer-facing proposal details.

POST /api/openaddproposal

Open add proposal with prefill

Authenticated browser/admin flow. Posts client details into session flash and redirects to /addproposal with those fields prefilled.

Basic request shape

{
  "key": "YOUR_API_KEY"
}