Skip to main content
POST
/
v1
/
classifications
/
suggest
Suggest Classifications
curl --request POST \
  --url https://api.signa.so/v1/classifications/suggest \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "description": "<string>"
}
'
{
  "object": "classification_suggestion",
  "query": "e-commerce company selling sneakers",
  "classifier_version": "classify-v1.0",
  "classes": [
    {
      "class_number": 25,
      "title": "Clothing, footwear, headwear",
      "confidence": "high",
      "rank": 1,
      "recommendation_type": "core",
      "conditional_on": null,
      "rationale": "Sneakers are athletic footwear, squarely in class 25."
    },
    {
      "class_number": 35,
      "title": "Advertising, business, retail services",
      "confidence": "medium",
      "rank": 2,
      "recommendation_type": "conditional",
      "conditional_on": "brand used for the storefront, not only the products",
      "rationale": "Operating an online store is retail services."
    }
  ],
  "ambiguous": false,
  "clarification_question": null,
  "request_id": "req_abc123"
}

Overview

Turn a description of goods, services, or a business into ranked Nice classification classes with confidence and rationale — ideal when you just need to know which classes apply (for filter UIs, watch setup, clearance pre-screening, or portfolio analysis). Works for company descriptions (“SaaS tool for HR teams”), product listings (“men’s athletic running shoes, cushioned sole”), service offerings (“on-site SEO audits”), and anything in between. Ambiguous inputs like “coffee company” come back with an ambiguous flag, a clarifying question, and classes for every plausible interpretation, so you can surface the question to your user and re-submit.
Need paste-ready goods/services wording per class for a filing? Use Suggest Goods & Services instead — same input, but returns each class with grounded accepted_terms from the pre-approved catalog.
For background on Nice classes and office acceptance, see the Classifications and Goods/Services guide.

Body Parameters

description
string
required
Description of the goods, services, or business (3-500 characters). Natural-language, no special format.
Nice Classification is a WIPO international standard — the 45 classes are the same in every member jurisdiction, so this endpoint deliberately takes no jurisdiction hint. If you need jurisdiction-biased goods/services wording, use Suggest Goods & Services, which accepts an optional jurisdiction_code that influences term selection (not the class list).

Response

object
string
Always classification_suggestion.
query
string
The description you submitted, echoed back.
classifier_version
string
Version tag of the classifier that produced this response.
classes
object[]
Ranked suggested classes. Each class contains the fields below.
classes[].class_number
integer
Nice class number (1-45).
classes[].title
string
Canonical class title.
classes[].confidence
string
One of high, medium, or low.
classes[].rank
integer
1-indexed position in the returned ordering.
classes[].recommendation_type
string
One of core, conditional, or adjacent.
classes[].conditional_on
string
When recommendation_type is conditional, the condition under which this class applies. May be null.
classes[].rationale
string
Short explanation of why this class was suggested.
ambiguous
boolean
true when the description has two or more materially different filing strategies.
clarification_question
string
When ambiguous is true, a question to ask the user. May be null.
{
  "object": "classification_suggestion",
  "query": "e-commerce company selling sneakers",
  "classifier_version": "classify-v1.0",
  "classes": [
    {
      "class_number": 25,
      "title": "Clothing, footwear, headwear",
      "confidence": "high",
      "rank": 1,
      "recommendation_type": "core",
      "conditional_on": null,
      "rationale": "Sneakers are athletic footwear, squarely in class 25."
    },
    {
      "class_number": 35,
      "title": "Advertising, business, retail services",
      "confidence": "medium",
      "rank": 2,
      "recommendation_type": "conditional",
      "conditional_on": "brand used for the storefront, not only the products",
      "rationale": "Operating an online store is retail services."
    }
  ],
  "ambiguous": false,
  "clarification_question": null,
  "request_id": "req_abc123"
}

Billing

Billed as 1 unit (search endpoint type).

Code Examples

curl -X POST "https://api.signa.so/v1/classifications/suggest" \
  -H "Authorization: Bearer sig_YOUR_KEY_HERE" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "e-commerce company selling sneakers"
  }'

Errors

StatusTypeDescription
400validation_errordescription missing, shorter than 3, or longer than 500 chars
401unauthorizedMissing or invalid API key
403forbiddenAPI key lacks trademarks:read scope
502upstream_errorClassification service temporarily unavailable