Suggest Goods & Services
Goods & Services
Suggest Goods & Services
Draft a goods/services specification from a description — ranked Nice classes with filing-ready wording per class
POST
Suggest Goods & Services
Documentation Index
Fetch the complete documentation index at: https://docs.signa.so/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Draft a goods/services specification from a natural-language description. Returns ranked Nice classes with filing-ready wording per class, grounded in the pre-approved catalog (Harmonised Database + USPTO ID Manual). Every term in the response is an actual accepted term — no LLM-invented wording. Use this to power:- Filing wizards that auto-draft the goods/services block of an application
- Attorney drafting tools
- Multi-class application flows where each class is a separate line item
Just need the class numbers (no wording)? Use Suggest Classifications instead — same input, lighter response, billed at 1 unit.
class_number in the body to restrict the response to a single, already-chosen class — useful when you’re refining wording inside a class the user has already picked.
For background on Nice classes and office acceptance, see the Classifications and Goods/Services guide.
Body Parameters
Description of the goods, services, or business (3-500 characters). Natural-language, no special format.
Optional ISO-3166-1 alpha-2 jurisdiction code (e.g.
US, EU, GB). Biases retail-vs-product interpretation toward local practice.Optional Nice class (1-45). When set, scopes the response to that single class — useful for refining wording when the class has already been chosen.
Response
Always
goods_services_suggestion.The description you submitted, echoed back.
Version tag of the classifier that produced this response.
Ranked suggested classes, each with filing-ready accepted terms.
Nice class number (1-45).
Canonical class title.
One of
high, medium, or low.1-indexed position in the returned ordering.
One of
core, conditional, or adjacent.When
recommendation_type is conditional, the condition under which this class applies. May be null.Short explanation of why this class was suggested.
Paste-ready goods/services terms for this class. Each is drawn from the pre-approved catalog — terms the LLM hallucinates never appear here.
true when the description has two or more materially different filing strategies.When
ambiguous is true, a question to ask the user. May be null.accepted_terms has this shape:
| Field | Type | Description |
|---|---|---|
term | string | The canonical term text. |
source | string | Source catalog (tmclass, uspto_idm, manual). |
accepted_offices | string[] | Office codes that accept this term. |
harmonised | boolean | Whether the term is on the TMClass harmonised list. |
Billing
Billed as 2 units (check endpoint type).
Code Examples
Full draft (let the classifier pick the classes)
Refine wording for a known class
Passclass_number when the applicant has already decided which class to file under and only needs the wording.
TypeScript
Errors
| Status | Type | Description |
|---|---|---|
| 400 | validation_error | description missing, shorter than 3, longer than 500 chars, or class_number outside 1-45 |
| 401 | unauthorized | Missing or invalid API key |
| 403 | forbidden | API key lacks trademarks:read scope |
| 502 | upstream_error | Classification service temporarily unavailable |
Related Endpoints
- Suggest Classifications — same input, lighter response, billed at 1 unit
- List Goods & Services — browse/search the pre-approved terms catalog directly
- List Classifications
- Get Classification