Skip to main content
POST
Estimate Fees
Submit one transaction per request. The response is a fee_estimate object at the top level, with no data wrapper. Requires trademarks:read, costs one check unit per request, and does not require an Idempotency-Key. The endpoint does not persist a filing or take payment.
classes accepts an integer count from 1 to 45 or a unique list of Nice class numbers from 1 to 45. Duplicate classes, unknown fields, invalid calendar dates, and batch envelopes are rejected. All amounts are native currency minor units, without currency conversion. subtotal_minor sums included components. total_minor is null unless the estimate is complete. Read lines[], omissions[], and assumptions[] before using the amount. A successful HTTP response can contain unsupported offices, unsupported actions, missing inputs, unsupported dates, or unverified components; these are explicit line statuses rather than guessed charges or zeros. Each included line identifies its fee rule and schedule, effective and verification dates, and source citations with snapshot paths and SHA-256 checksums. dataset_version identifies the compiled dataset, and as_of is the selected payment_date, defaulting to the server’s UTC calculation date. The response uses private, no-store caching.

Madrid requests

Use office: 'WO' (or the WIPO alias) and identify designated offices separately:
The verified dataset does not currently include individual designation fee amounts. This example therefore returns a partial subtotal for verified components, unresolved designation lines, and a null total. Do not treat the Madrid basic fee as the full application cost. designations is valid only for WO Madrid filing, renewal, or subsequent designation requests. colour and applicant are valid only for WO Madrid filing. Set applicant.ldc_eligible: true only when the caller attests that all predicates in the WIPO least-developed-country reduction footnote hold for every applicant. This is an eligibility attestation, not a country-code shortcut.

Dates and transition rules

Use payment_date to supply the payment date; omission uses the server calculation date. GB renewal requests can supply renewal_due_date. GB filing requests can supply application_date and application_in_payment_grace. Missing facts needed to select a schedule are reported explicitly. Dates older than verified applicability coverage return unsupported components rather than extrapolated fees. late requests a supported late-payment calculation where the dataset contains verified rules.