https://api.nexscope.ai/ai/designSimilaritySearchRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/ai/designSimilaritySearch |
| Auth | Bearer API key |
| Content-Type | application/json |
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
imageBase64 | string | optional | Pure Base64 image bytes, 16–12582912 characters; omit imageUrl. Pattern: ^[A-Za-z0-9+/]+={0,2}$ Minimum length: 16 Maximum length: 12582912 |
imageUrl | string | optional | Public HTTP(S) image URL, 8–4096 characters; exactly one image source. Format: uri Pattern: ^https?:// Minimum length: 8 Maximum length: 4096 |
jurisdictionCodes | array | optional | Up to 32 distinct source codes of 2–8 letters; intersects regions when both are supplied. Maximum items: 32 |
jurisdictionCodes[] | string | required | Up to 32 distinct source codes of 2–8 letters; intersects regions when both are supplied. Pattern: ^[A-Za-z]{2,8}$ |
locarnoClasses | array | optional | Up to 64 distinct NN-NN Locarno classes. Maximum items: 64 |
locarnoClasses[] | string | required | Up to 64 distinct NN-NN Locarno classes. Pattern: ^[0-9]{2}-[0-9]{2}$ |
patentStatus | array | optional | One or two distinct integers: 0 inactive, 1 active; omit for no status preference. Minimum items: 1 Maximum items: 2 |
patentStatus[] | integer | required | One or two distinct integers: 0 inactive, 1 active; omit for no status preference. Allowed: 0, 1 |
regions | array | optional | Up to 64 distinct two-letter region codes, e.g. US or EM; use EM for EU. Maximum items: 64 |
regions[] | string | required | Up to 64 distinct two-letter region codes, e.g. US or EM; use EM for EU. Pattern: ^[A-Za-z]{2}$ |
title | string | optional | Optional image context, 1–4096 trimmed characters; not a standalone text query. Minimum length: 1 Maximum length: 4096 |
topK | integer | optional | Candidate limit, 1–200; default 20. Default: 20 Minimum: 1 Maximum: 200 |
topLoc | array | optional | Up to 32 distinct two-digit Locarno prefixes; preserve leading zeros. Maximum items: 32 |
topLoc[] | string | required | Up to 32 distinct two-digit Locarno prefixes; preserve leading zeros. Pattern: ^[0-9]{2}$ |
One of option 1 — requires imageUrl
One of option 2 — requires imageBase64
Code example
{
"imageUrl": "https://example.com/product.png",
"title": "Bottle",
"topK": 20
}Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"code": 0,
"cost": "-1",
"data": {
"data": {
"code": "OK",
"data": {
"candidates": [
{
"design_registration_id": "example-design-id",
"holder_names": [
"Example holder"
],
"image_available": true,
"locarno_classes": [
"09-01"
],
"primary_identifier": "example-registration",
"similarity": 85.97,
"simple_legal_status": "inactive",
"title_en": "Bottle"
}
],
"coverage": {
"metadata_unknown": {
"legal_status": 1
}
},
"warnings": [
"metadata_incomplete"
]
},
"request_id": "example-request"
}
},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}Response fields
| Name | Type | Required | Description |
|---|---|---|---|
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
data | any | required | Data value used by this API operation. |
msg | string | null | required | Msg value used by this API operation. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
traceId | string | null | required | Trace id value used by this API operation. |
ts | string | required | Epoch milliseconds. |
Any of option 1 — requires data
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.costTime | any | optional | Cost time value used by this API operation. |
data.costToken | any | optional | Cost token value used by this API operation. |
data.data | object | required | Source envelope retained within the gateway payload. Example: {} |
data.data.code | string | required | Source status; successful retrieval is OK. Example: OK |
data.data.data | object | required | Candidate retrieval result; retain order, coverage and warnings. Example: {} |
data.data.data.candidates | array | required | Design-registration candidates; empty does not establish freedom to operate. Example: [{"design_registration_id":"example-design-id","holder_names":["Example holder"],"image_available":true,"locarno_classes":["09-01"],"primary_identifier":"example-registration","similarity":85.97,"simple_legal_status":"inactive","title_en":"Bottle"}] |
data.data.data.coverage | any | optional | Coverage value used by this API operation. |
data.data.data.warnings | any | optional | Warnings value used by this API operation. |
data.data.request_id | any | optional | Request id value used by this API operation. |
data.dataSnapshotMonth | any | optional | Data snapshot month value used by this API operation. |
data.page | any | optional | Page value used by this API operation. |
data.pageItemCount | any | optional | Page item count value used by this API operation. |
data.pageSize | any | optional | Page size value used by this API operation. |
data.sourceTool | any | optional | Source tool value used by this API operation. |
data.sourceType | any | optional | Source type value used by this API operation. |
data.title | any | optional | Title value used by this API operation. |
data.totalPage | any | optional | Total page value used by this API operation. |
data.type | any | optional | Type value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.costTime | null | optional | Cost time value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.costToken | integer | optional | Token cost reported by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.costToken | null | optional | Cost token value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.data.data.coverage | object | optional | Source coverage metadata; ratios may exceed one and are not guaranteed coverage percentages. Example: {} |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.data.data.coverage | null | optional | Coverage value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.data.data.warnings | array | optional | Source limitations and warnings. Example: ["metadata_incomplete"] |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.data.data.warnings | null | optional | Warnings value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.data.request_id | string | optional | Source request identifier. Example: example-request |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.data.request_id | null | optional | Request id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.dataSnapshotMonth | null | optional | Data snapshot month value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.page | null | optional | Page value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.pageItemCount | null | optional | Page item count value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.pageSize | null | optional | Page size value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.sourceTool | null | optional | Source tool value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.sourceType | string | optional | Provider-specific source platform type. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.sourceType | null | optional | Source type value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.title | string | optional | Provider-specific response title. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.title | null | optional | Title value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.totalPage | null | optional | Total page value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.type | string | optional | Provider-specific render or payload type. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data.type | null | optional | Type value used by this API operation. |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Responses
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API execution or upstream service failed. |
Data source, freshness, and limitations
Source, freshness, coverage, rate limits, and estimation notes are not specified in this API definition unless they appear in the request or response field documentation above. Do not assume official marketplace data or real-time freshness when it is not explicitly documented.