@signa-so/sdk 0.2.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -13
- package/dist/_internals/fetch-with-retry.js +1 -1
- package/dist/_internals/fetch-with-retry.js.map +1 -1
- package/dist/_internals/query-string.d.ts +5 -4
- package/dist/_internals/query-string.d.ts.map +1 -1
- package/dist/_internals/query-string.js +6 -14
- package/dist/_internals/query-string.js.map +1 -1
- package/dist/client.d.ts +54 -10
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +76 -13
- package/dist/client.js.map +1 -1
- package/dist/errors.d.ts +7 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +10 -1
- package/dist/errors.js.map +1 -1
- package/dist/generated/api-types.d.ts +3608 -2393
- package/dist/generated/api-types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/pagination.d.ts +1 -1
- package/dist/pagination.js +1 -1
- package/dist/resources/alerts.d.ts +18 -13
- package/dist/resources/alerts.d.ts.map +1 -1
- package/dist/resources/alerts.js +28 -20
- package/dist/resources/alerts.js.map +1 -1
- package/dist/resources/attorneys.d.ts +5 -2
- package/dist/resources/attorneys.d.ts.map +1 -1
- package/dist/resources/attorneys.js +6 -5
- package/dist/resources/attorneys.js.map +1 -1
- package/dist/resources/entities.d.ts +52 -0
- package/dist/resources/entities.d.ts.map +1 -0
- package/dist/resources/entities.js +70 -0
- package/dist/resources/entities.js.map +1 -0
- package/dist/resources/firms.d.ts +5 -5
- package/dist/resources/firms.js +5 -5
- package/dist/resources/goods-services.d.ts +56 -0
- package/dist/resources/goods-services.d.ts.map +1 -0
- package/dist/resources/goods-services.js +60 -0
- package/dist/resources/goods-services.js.map +1 -0
- package/dist/resources/{platform.d.ts → organization.d.ts} +24 -3
- package/dist/resources/organization.d.ts.map +1 -0
- package/dist/resources/organization.js +81 -0
- package/dist/resources/organization.js.map +1 -0
- package/dist/resources/owners.d.ts +5 -2
- package/dist/resources/owners.d.ts.map +1 -1
- package/dist/resources/owners.js +6 -5
- package/dist/resources/owners.js.map +1 -1
- package/dist/resources/portfolios.d.ts +3 -3
- package/dist/resources/portfolios.d.ts.map +1 -1
- package/dist/resources/portfolios.js +4 -4
- package/dist/resources/portfolios.js.map +1 -1
- package/dist/resources/proceedings.d.ts +1 -1
- package/dist/resources/proceedings.js +1 -1
- package/dist/resources/references.d.ts +51 -12
- package/dist/resources/references.d.ts.map +1 -1
- package/dist/resources/references.js +33 -15
- package/dist/resources/references.js.map +1 -1
- package/dist/resources/suggest.d.ts +16 -0
- package/dist/resources/suggest.d.ts.map +1 -0
- package/dist/resources/suggest.js +18 -0
- package/dist/resources/suggest.js.map +1 -0
- package/dist/resources/trademarks.d.ts +47 -5
- package/dist/resources/trademarks.d.ts.map +1 -1
- package/dist/resources/trademarks.js +53 -5
- package/dist/resources/trademarks.js.map +1 -1
- package/dist/resources/watches.d.ts +56 -9
- package/dist/resources/watches.d.ts.map +1 -1
- package/dist/resources/watches.js +91 -12
- package/dist/resources/watches.js.map +1 -1
- package/dist/resources/webhooks.d.ts +57 -0
- package/dist/resources/webhooks.d.ts.map +1 -0
- package/dist/resources/webhooks.js +86 -0
- package/dist/resources/webhooks.js.map +1 -0
- package/dist/types.d.ts +1163 -213
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/webhooks.d.ts +57 -0
- package/dist/webhooks.d.ts.map +1 -0
- package/dist/webhooks.js +76 -0
- package/dist/webhooks.js.map +1 -0
- package/package.json +7 -2
- package/dist/resources/platform.d.ts.map +0 -1
- package/dist/resources/platform.js +0 -50
- package/dist/resources/platform.js.map +0 -1
- package/dist/resources/search.d.ts +0 -27
- package/dist/resources/search.d.ts.map +0 -1
- package/dist/resources/search.js +0 -36
- package/dist/resources/search.js.map +0 -1
package/README.md
CHANGED
|
@@ -13,13 +13,16 @@ npm install @signa-so/sdk
|
|
|
13
13
|
```ts
|
|
14
14
|
import Signa from '@signa-so/sdk';
|
|
15
15
|
|
|
16
|
-
const signa = new Signa({ api_key: '
|
|
16
|
+
const signa = new Signa({ api_key: 'sig_xxx' });
|
|
17
17
|
|
|
18
18
|
// Retrieve a trademark
|
|
19
19
|
const tm = await signa.trademarks.retrieve('tm_abc123');
|
|
20
20
|
|
|
21
|
-
// Search trademarks
|
|
22
|
-
const results = await signa.search
|
|
21
|
+
// Search trademarks (POST with structured filters)
|
|
22
|
+
const results = await signa.trademarks.search({ query: 'nike', filters: { offices: ['uspto'] } });
|
|
23
|
+
|
|
24
|
+
// Text search via GET
|
|
25
|
+
const searched = await signa.trademarks.list({ q: 'nike', offices: 'uspto' });
|
|
23
26
|
|
|
24
27
|
// List with auto-pagination
|
|
25
28
|
const page = await signa.trademarks.list({ limit: 50 });
|
|
@@ -32,7 +35,7 @@ for (const tm of page.data) {
|
|
|
32
35
|
|
|
33
36
|
```ts
|
|
34
37
|
const signa = new Signa({
|
|
35
|
-
api_key: '
|
|
38
|
+
api_key: 'sig_xxx', // Required (or set SIGNA_API_KEY env var)
|
|
36
39
|
base_url: 'https://api.signa.so', // Default
|
|
37
40
|
timeout: 30_000, // 30s default
|
|
38
41
|
max_retries: 2, // Automatic retry with backoff
|
|
@@ -86,19 +89,25 @@ await signa.proceedings.retrieve('prc_xxx');
|
|
|
86
89
|
await signa.proceedings.list({ trademark_id: 'tm_xxx' });
|
|
87
90
|
```
|
|
88
91
|
|
|
89
|
-
### `signa.search`
|
|
92
|
+
### `signa.trademarks.search()` (POST)
|
|
93
|
+
|
|
94
|
+
For complex queries with structured filters, aggregations, and strategies:
|
|
90
95
|
|
|
91
96
|
```ts
|
|
92
|
-
await signa.search
|
|
97
|
+
await signa.trademarks.search({
|
|
93
98
|
query: 'nike',
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
+
strategies: ['exact', 'phonetic'],
|
|
100
|
+
filters: { offices: ['uspto'], status_primary: 'active', nice_classes: [25, 35] },
|
|
101
|
+
options: { aggregations: ['status_stage', 'office_code'], include_total: true },
|
|
102
|
+
sort: '-filing_date',
|
|
103
|
+
limit: 20,
|
|
99
104
|
});
|
|
105
|
+
```
|
|
100
106
|
|
|
101
|
-
|
|
107
|
+
### `signa.suggest`
|
|
108
|
+
|
|
109
|
+
```ts
|
|
110
|
+
await signa.suggest.crossEntity({ q: 'nik' });
|
|
102
111
|
```
|
|
103
112
|
|
|
104
113
|
### `signa.references`
|
|
@@ -107,7 +116,6 @@ await signa.search.suggest({ query: 'nik', size: 5 });
|
|
|
107
116
|
await signa.references.classifications(); // Nice classes
|
|
108
117
|
await signa.references.offices(); // Trademark offices
|
|
109
118
|
await signa.references.jurisdictions(); // Jurisdictions
|
|
110
|
-
await signa.references.statuses(); // Status codes
|
|
111
119
|
await signa.references.eventTypes(); // Event types
|
|
112
120
|
```
|
|
113
121
|
|
|
@@ -95,7 +95,7 @@ export async function fetchWithRetry(config, request) {
|
|
|
95
95
|
catch {
|
|
96
96
|
errorBody = {
|
|
97
97
|
error: {
|
|
98
|
-
type: '
|
|
98
|
+
type: 'unknown',
|
|
99
99
|
title: 'Unknown Error',
|
|
100
100
|
status: response.status,
|
|
101
101
|
detail: `HTTP ${response.status} ${response.statusText}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-with-retry.js","sourceRoot":"","sources":["../../src/_internals/fetch-with-retry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fetch-with-retry.js","sourceRoot":"","sources":["../../src/_internals/fetch-with-retry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Build a URL query string from a params object.
|
|
3
|
+
*
|
|
4
|
+
* Conventions (see `.signa/docs/decisions/query-parameter-conventions.md`):
|
|
5
|
+
* - Arrays serialize as comma-separated: `?offices=uspto,euipo`
|
|
6
|
+
* - Date ranges live on flat underscore keys: `?filing_date_gte=2020-01-01`
|
|
3
7
|
* - Undefined/null values are omitted
|
|
4
|
-
* -
|
|
5
|
-
* - Other arrays are serialized as comma-separated (e.g., `include`)
|
|
6
|
-
* - Numbers are stringified
|
|
7
|
-
* - Bracket-notation keys like 'filing_date[gte]' pass through as-is
|
|
8
|
+
* - Numbers and booleans are stringified
|
|
8
9
|
*/
|
|
9
10
|
export declare function buildQueryString(params: Record<string, unknown>): string;
|
|
10
11
|
//# sourceMappingURL=query-string.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-string.d.ts","sourceRoot":"","sources":["../../src/_internals/query-string.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"query-string.d.ts","sourceRoot":"","sources":["../../src/_internals/query-string.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAkBxE"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Build a URL query string from a params object.
|
|
3
|
+
*
|
|
4
|
+
* Conventions (see `.signa/docs/decisions/query-parameter-conventions.md`):
|
|
5
|
+
* - Arrays serialize as comma-separated: `?offices=uspto,euipo`
|
|
6
|
+
* - Date ranges live on flat underscore keys: `?filing_date_gte=2020-01-01`
|
|
3
7
|
* - Undefined/null values are omitted
|
|
4
|
-
* -
|
|
5
|
-
* - Other arrays are serialized as comma-separated (e.g., `include`)
|
|
6
|
-
* - Numbers are stringified
|
|
7
|
-
* - Bracket-notation keys like 'filing_date[gte]' pass through as-is
|
|
8
|
+
* - Numbers and booleans are stringified
|
|
8
9
|
*/
|
|
9
10
|
export function buildQueryString(params) {
|
|
10
11
|
const parts = [];
|
|
@@ -13,16 +14,7 @@ export function buildQueryString(params) {
|
|
|
13
14
|
continue;
|
|
14
15
|
if (Array.isArray(value)) {
|
|
15
16
|
if (value.length > 0) {
|
|
16
|
-
|
|
17
|
-
// Repeated params for bracket-notation array keys
|
|
18
|
-
for (const item of value) {
|
|
19
|
-
parts.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(item))}`);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
// Comma-separated for non-bracket keys (e.g., include)
|
|
24
|
-
parts.push(`${encodeURIComponent(key)}=${encodeURIComponent(value.join(','))}`);
|
|
25
|
-
}
|
|
17
|
+
parts.push(`${encodeURIComponent(key)}=${encodeURIComponent(value.map(String).join(','))}`);
|
|
26
18
|
}
|
|
27
19
|
}
|
|
28
20
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-string.js","sourceRoot":"","sources":["../../src/_internals/query-string.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"query-string.js","sourceRoot":"","sources":["../../src/_internals/query-string.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA+B;IAC9D,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAEpD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,KAAK,CAAC,IAAI,CACR,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAChF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC"}
|
package/dist/client.d.ts
CHANGED
|
@@ -2,26 +2,45 @@ import type { ClientOptions } from './types.js';
|
|
|
2
2
|
import { SignaError, SignaAPIError, BadRequestError, AuthenticationError, PermissionError, NotFoundError, ConflictError, RateLimitError, InternalServerError, ConnectionError, TimeoutError } from './errors.js';
|
|
3
3
|
import { Trademarks } from './resources/trademarks.js';
|
|
4
4
|
import { Owners } from './resources/owners.js';
|
|
5
|
+
import { Entities } from './resources/entities.js';
|
|
5
6
|
import { Attorneys } from './resources/attorneys.js';
|
|
6
7
|
import { Firms } from './resources/firms.js';
|
|
7
8
|
import { Proceedings } from './resources/proceedings.js';
|
|
8
|
-
import {
|
|
9
|
+
import { Suggest } from './resources/suggest.js';
|
|
9
10
|
import { References } from './resources/references.js';
|
|
11
|
+
import { GoodsServices } from './resources/goods-services.js';
|
|
10
12
|
import { Portfolios } from './resources/portfolios.js';
|
|
11
13
|
import { SavedSearches } from './resources/saved-searches.js';
|
|
12
14
|
import { Watches } from './resources/watches.js';
|
|
13
15
|
import { Alerts } from './resources/alerts.js';
|
|
16
|
+
import { Webhooks } from './resources/webhooks.js';
|
|
14
17
|
import { Events } from './resources/events.js';
|
|
15
|
-
import {
|
|
18
|
+
import { Organization } from './resources/organization.js';
|
|
16
19
|
/**
|
|
17
20
|
* Signa API client.
|
|
18
21
|
*
|
|
19
22
|
* ```typescript
|
|
20
23
|
* import Signa from '@signa-so/sdk';
|
|
21
24
|
*
|
|
22
|
-
* const signa = new Signa({ api_key: '
|
|
25
|
+
* const signa = new Signa({ api_key: 'sig_xxx' });
|
|
23
26
|
* const tm = await signa.trademarks.retrieve('tm_abc123');
|
|
24
27
|
* ```
|
|
28
|
+
*
|
|
29
|
+
* ## Browser usage
|
|
30
|
+
*
|
|
31
|
+
* The Signa SDK is designed for **server-side use**. A Signa API key grants
|
|
32
|
+
* full access to the org's trademark data and usage — putting one in browser
|
|
33
|
+
* code exposes it to every visitor (including hostile ones) via the page
|
|
34
|
+
* source, the Network tab, and any third-party script running on the page.
|
|
35
|
+
* The correct architecture is to proxy Signa requests through your own
|
|
36
|
+
* backend and authenticate end-users with your own session layer.
|
|
37
|
+
*
|
|
38
|
+
* If the SDK is instantiated in an environment where `window` is defined it
|
|
39
|
+
* emits a single `console.warn` on construction. You can silence this warning
|
|
40
|
+
* in two ways (both signal you understand the risk and have accepted it):
|
|
41
|
+
*
|
|
42
|
+
* - pass `{ allowBrowser: true }` to the constructor, or
|
|
43
|
+
* - set the `SIGNA_ALLOW_BROWSER=1` environment variable at build time.
|
|
25
44
|
*/
|
|
26
45
|
export declare class Signa {
|
|
27
46
|
static readonly SignaError: typeof SignaError;
|
|
@@ -39,28 +58,53 @@ export declare class Signa {
|
|
|
39
58
|
readonly trademarks: Trademarks;
|
|
40
59
|
/** Owner operations: retrieve, list, trademarks. */
|
|
41
60
|
readonly owners: Owners;
|
|
61
|
+
/** Entity operations: retrieve, list, trademarks, family (PLN-118). */
|
|
62
|
+
readonly entities: Entities;
|
|
42
63
|
/** Attorney operations: retrieve, list, trademarks. */
|
|
43
64
|
readonly attorneys: Attorneys;
|
|
44
65
|
/** Firm operations: retrieve, list, attorneys, trademarks. */
|
|
45
66
|
readonly firms: Firms;
|
|
46
67
|
/** Proceeding operations: retrieve, list. */
|
|
47
68
|
readonly proceedings: Proceedings;
|
|
48
|
-
/**
|
|
49
|
-
readonly
|
|
50
|
-
/** Reference data: classifications, offices, jurisdictions,
|
|
69
|
+
/** Suggest operations: cross-entity typeahead. */
|
|
70
|
+
readonly suggest: Suggest;
|
|
71
|
+
/** Reference data: classifications, offices, jurisdictions, event types, design codes. */
|
|
51
72
|
readonly references: References;
|
|
73
|
+
/**
|
|
74
|
+
* Goods & services: accepted-terms catalog (browse/search) and AI-assisted
|
|
75
|
+
* G&S specification drafting.
|
|
76
|
+
*/
|
|
77
|
+
readonly goodsServices: GoodsServices;
|
|
52
78
|
/** Portfolio management: CRUD, marks, deadlines. */
|
|
53
79
|
readonly portfolios: Portfolios;
|
|
54
80
|
/** Saved search management: CRUD, re-execute. */
|
|
55
81
|
readonly savedSearches: SavedSearches;
|
|
56
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* Watch management — monitoring v1 (TSK-111).
|
|
84
|
+
*
|
|
85
|
+
* Five watch types (mark / portfolio / owner / class / similarity)
|
|
86
|
+
* compile to a single query DSL. Lifecycle: create, list, retrieve,
|
|
87
|
+
* update, pause/resume, replay, preview, bulk, soft-delete, plus
|
|
88
|
+
* per-watch alert listing.
|
|
89
|
+
*/
|
|
57
90
|
readonly watches: Watches;
|
|
58
|
-
/**
|
|
91
|
+
/**
|
|
92
|
+
* Alerts — read-only. Alerts are immutable in monitoring v1
|
|
93
|
+
* (VAL-API-018b). Use `list`, `retrieve`, or `lookup(ids)` for
|
|
94
|
+
* polling. Track open work in your own systems.
|
|
95
|
+
*/
|
|
59
96
|
readonly alerts: Alerts;
|
|
97
|
+
/**
|
|
98
|
+
* Webhook endpoints — monitoring v1 push delivery. Standard Webhooks
|
|
99
|
+
* signed POSTs with rotation overlap and per-endpoint auto-disable on
|
|
100
|
+
* sustained 4xx/5xx. Verify deliveries with `verifyWebhookSignature`
|
|
101
|
+
* exported from the SDK root.
|
|
102
|
+
*/
|
|
103
|
+
readonly webhooks: Webhooks;
|
|
60
104
|
/** Event stream: list, retrieve with diffs. */
|
|
61
105
|
readonly events: Events;
|
|
62
|
-
/**
|
|
63
|
-
readonly
|
|
106
|
+
/** Organization: identity, usage, API key management. */
|
|
107
|
+
readonly organization: Organization;
|
|
64
108
|
/** @internal */
|
|
65
109
|
private readonly _config;
|
|
66
110
|
constructor(opts?: ClientOptions);
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import { SignaError, SignaAPIError, BadRequestError, AuthenticationError, PermissionError, NotFoundError, ConflictError, RateLimitError, InternalServerError, ConnectionError, TimeoutError, } from './errors.js';
|
|
2
2
|
import { Trademarks } from './resources/trademarks.js';
|
|
3
3
|
import { Owners } from './resources/owners.js';
|
|
4
|
+
import { Entities } from './resources/entities.js';
|
|
4
5
|
import { Attorneys } from './resources/attorneys.js';
|
|
5
6
|
import { Firms } from './resources/firms.js';
|
|
6
7
|
import { Proceedings } from './resources/proceedings.js';
|
|
7
|
-
import {
|
|
8
|
+
import { Suggest } from './resources/suggest.js';
|
|
8
9
|
import { References } from './resources/references.js';
|
|
10
|
+
import { GoodsServices } from './resources/goods-services.js';
|
|
9
11
|
import { Portfolios } from './resources/portfolios.js';
|
|
10
12
|
import { SavedSearches } from './resources/saved-searches.js';
|
|
11
13
|
import { Watches } from './resources/watches.js';
|
|
12
14
|
import { Alerts } from './resources/alerts.js';
|
|
15
|
+
import { Webhooks } from './resources/webhooks.js';
|
|
13
16
|
import { Events } from './resources/events.js';
|
|
14
|
-
import {
|
|
17
|
+
import { Organization } from './resources/organization.js';
|
|
15
18
|
const DEFAULT_BASE_URL = 'https://api.signa.so';
|
|
16
19
|
const DEFAULT_TIMEOUT = 30_000;
|
|
17
20
|
const DEFAULT_MAX_RETRIES = 2;
|
|
@@ -21,9 +24,25 @@ const DEFAULT_MAX_RETRIES = 2;
|
|
|
21
24
|
* ```typescript
|
|
22
25
|
* import Signa from '@signa-so/sdk';
|
|
23
26
|
*
|
|
24
|
-
* const signa = new Signa({ api_key: '
|
|
27
|
+
* const signa = new Signa({ api_key: 'sig_xxx' });
|
|
25
28
|
* const tm = await signa.trademarks.retrieve('tm_abc123');
|
|
26
29
|
* ```
|
|
30
|
+
*
|
|
31
|
+
* ## Browser usage
|
|
32
|
+
*
|
|
33
|
+
* The Signa SDK is designed for **server-side use**. A Signa API key grants
|
|
34
|
+
* full access to the org's trademark data and usage — putting one in browser
|
|
35
|
+
* code exposes it to every visitor (including hostile ones) via the page
|
|
36
|
+
* source, the Network tab, and any third-party script running on the page.
|
|
37
|
+
* The correct architecture is to proxy Signa requests through your own
|
|
38
|
+
* backend and authenticate end-users with your own session layer.
|
|
39
|
+
*
|
|
40
|
+
* If the SDK is instantiated in an environment where `window` is defined it
|
|
41
|
+
* emits a single `console.warn` on construction. You can silence this warning
|
|
42
|
+
* in two ways (both signal you understand the risk and have accepted it):
|
|
43
|
+
*
|
|
44
|
+
* - pass `{ allowBrowser: true }` to the constructor, or
|
|
45
|
+
* - set the `SIGNA_ALLOW_BROWSER=1` environment variable at build time.
|
|
27
46
|
*/
|
|
28
47
|
export class Signa {
|
|
29
48
|
// ── Static error classes (enables Signa.NotFoundError pattern) ────
|
|
@@ -42,34 +61,75 @@ export class Signa {
|
|
|
42
61
|
trademarks;
|
|
43
62
|
/** Owner operations: retrieve, list, trademarks. */
|
|
44
63
|
owners;
|
|
64
|
+
/** Entity operations: retrieve, list, trademarks, family (PLN-118). */
|
|
65
|
+
entities;
|
|
45
66
|
/** Attorney operations: retrieve, list, trademarks. */
|
|
46
67
|
attorneys;
|
|
47
68
|
/** Firm operations: retrieve, list, attorneys, trademarks. */
|
|
48
69
|
firms;
|
|
49
70
|
/** Proceeding operations: retrieve, list. */
|
|
50
71
|
proceedings;
|
|
51
|
-
/**
|
|
52
|
-
|
|
53
|
-
/** Reference data: classifications, offices, jurisdictions,
|
|
72
|
+
/** Suggest operations: cross-entity typeahead. */
|
|
73
|
+
suggest;
|
|
74
|
+
/** Reference data: classifications, offices, jurisdictions, event types, design codes. */
|
|
54
75
|
references;
|
|
76
|
+
/**
|
|
77
|
+
* Goods & services: accepted-terms catalog (browse/search) and AI-assisted
|
|
78
|
+
* G&S specification drafting.
|
|
79
|
+
*/
|
|
80
|
+
goodsServices;
|
|
55
81
|
/** Portfolio management: CRUD, marks, deadlines. */
|
|
56
82
|
portfolios;
|
|
57
83
|
/** Saved search management: CRUD, re-execute. */
|
|
58
84
|
savedSearches;
|
|
59
|
-
/**
|
|
85
|
+
/**
|
|
86
|
+
* Watch management — monitoring v1 (TSK-111).
|
|
87
|
+
*
|
|
88
|
+
* Five watch types (mark / portfolio / owner / class / similarity)
|
|
89
|
+
* compile to a single query DSL. Lifecycle: create, list, retrieve,
|
|
90
|
+
* update, pause/resume, replay, preview, bulk, soft-delete, plus
|
|
91
|
+
* per-watch alert listing.
|
|
92
|
+
*/
|
|
60
93
|
watches;
|
|
61
|
-
/**
|
|
94
|
+
/**
|
|
95
|
+
* Alerts — read-only. Alerts are immutable in monitoring v1
|
|
96
|
+
* (VAL-API-018b). Use `list`, `retrieve`, or `lookup(ids)` for
|
|
97
|
+
* polling. Track open work in your own systems.
|
|
98
|
+
*/
|
|
62
99
|
alerts;
|
|
100
|
+
/**
|
|
101
|
+
* Webhook endpoints — monitoring v1 push delivery. Standard Webhooks
|
|
102
|
+
* signed POSTs with rotation overlap and per-endpoint auto-disable on
|
|
103
|
+
* sustained 4xx/5xx. Verify deliveries with `verifyWebhookSignature`
|
|
104
|
+
* exported from the SDK root.
|
|
105
|
+
*/
|
|
106
|
+
webhooks;
|
|
63
107
|
/** Event stream: list, retrieve with diffs. */
|
|
64
108
|
events;
|
|
65
|
-
/**
|
|
66
|
-
|
|
109
|
+
/** Organization: identity, usage, API key management. */
|
|
110
|
+
organization;
|
|
67
111
|
/** @internal */
|
|
68
112
|
_config;
|
|
69
113
|
constructor(opts = {}) {
|
|
70
114
|
const apiKey = opts.api_key ?? readEnv('SIGNA_API_KEY');
|
|
71
115
|
if (!apiKey) {
|
|
72
|
-
throw new SignaError('API key is required. Pass { api_key: "
|
|
116
|
+
throw new SignaError('API key is required. Pass { api_key: "sig_..." } or set the SIGNA_API_KEY environment variable.');
|
|
117
|
+
}
|
|
118
|
+
// Browser-use warning. Signa API keys are long-lived secrets; using
|
|
119
|
+
// them in a browser exposes the key to every page visitor. The
|
|
120
|
+
// correct architecture is a server-side proxy. Opt out with
|
|
121
|
+
// `{ allowBrowser: true }` or SIGNA_ALLOW_BROWSER=1 if you know what
|
|
122
|
+
// you're doing (e.g. a trusted internal dashboard behind SSO where
|
|
123
|
+
// the "key" is really a scoped session token).
|
|
124
|
+
//
|
|
125
|
+
// We probe `globalThis.window` rather than the bare `window`
|
|
126
|
+
// identifier so the SDK's tsconfig can stay on a node-only `lib`
|
|
127
|
+
// without needing DOM types just for this check.
|
|
128
|
+
if (typeof globalThis.window !== 'undefined') {
|
|
129
|
+
const allowBrowser = opts.allowBrowser === true || readEnv('SIGNA_ALLOW_BROWSER') === '1';
|
|
130
|
+
if (!allowBrowser) {
|
|
131
|
+
console.warn('[signa] The Signa SDK is designed for server-side use. Using a secret API key in the browser exposes it to any visitor. Proxy requests through your backend.');
|
|
132
|
+
}
|
|
73
133
|
}
|
|
74
134
|
// Validate max_retries
|
|
75
135
|
const maxRetries = opts.max_retries ?? DEFAULT_MAX_RETRIES;
|
|
@@ -91,17 +151,20 @@ export class Signa {
|
|
|
91
151
|
};
|
|
92
152
|
this.trademarks = new Trademarks(this._config);
|
|
93
153
|
this.owners = new Owners(this._config);
|
|
154
|
+
this.entities = new Entities(this._config);
|
|
94
155
|
this.attorneys = new Attorneys(this._config);
|
|
95
156
|
this.firms = new Firms(this._config);
|
|
96
157
|
this.proceedings = new Proceedings(this._config);
|
|
97
|
-
this.
|
|
158
|
+
this.suggest = new Suggest(this._config);
|
|
98
159
|
this.references = new References(this._config);
|
|
160
|
+
this.goodsServices = new GoodsServices(this._config);
|
|
99
161
|
this.portfolios = new Portfolios(this._config);
|
|
100
162
|
this.savedSearches = new SavedSearches(this._config);
|
|
101
163
|
this.watches = new Watches(this._config);
|
|
102
164
|
this.alerts = new Alerts(this._config);
|
|
165
|
+
this.webhooks = new Webhooks(this._config);
|
|
103
166
|
this.events = new Events(this._config);
|
|
104
|
-
this.
|
|
167
|
+
this.organization = new Organization(this._config);
|
|
105
168
|
}
|
|
106
169
|
}
|
|
107
170
|
/** Safely read an env var (works in Node, Bun, Deno; no-op in browsers/edge). */
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -61,6 +61,13 @@ export declare function createAPIError(status: number, body: {
|
|
|
61
61
|
}, headers: Headers): SignaAPIError;
|
|
62
62
|
/**
|
|
63
63
|
* Returns true if this error is retryable (connection, timeout, 429, 5xx).
|
|
64
|
+
*
|
|
65
|
+
* PLN-119 C6b: the server's parsed error envelope is nested at
|
|
66
|
+
* `error.error` (see {@link createAPIError}) and may carry an explicit
|
|
67
|
+
* `retryable: false` verdict (e.g. the preview `504 preview_timeout`
|
|
68
|
+
* envelope — a blind retry re-runs the exact same over-budget work). That
|
|
69
|
+
* verdict is honored BEFORE the status-based heuristic, so the SDK no
|
|
70
|
+
* longer re-hammers deterministic failures just because they are 5xx.
|
|
64
71
|
*/
|
|
65
72
|
export declare function isRetryable(error: unknown): boolean;
|
|
66
73
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAGxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO;CASnB;AAID,qBAAa,eAAgB,SAAQ,aAAa;gBACpC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,eAAgB,SAAQ,aAAa;gBACpC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,aAAc,SAAQ,aAAa;gBAClC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,uEAAuE;AACvE,qBAAa,aAAc,SAAQ,aAAa;gBAClC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,cAAe,SAAQ,aAAa;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAKrE;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrF;AAED,6DAA6D;AAC7D,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,SAAkB,KAAK,CAAC,EAAE,KAAK,CAAC;gBAEpB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAK3C;AAED,yCAAyC;AACzC,qBAAa,YAAa,SAAQ,UAAU;gBAC9B,SAAS,EAAE,MAAM;CAI9B;AAgBD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EACjD,OAAO,EAAE,OAAO,GACf,aAAa,CAoBf;AAgBD
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAGxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO;CASnB;AAID,qBAAa,eAAgB,SAAQ,aAAa;gBACpC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,eAAgB,SAAQ,aAAa;gBACpC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,aAAc,SAAQ,aAAa;gBAClC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,uEAAuE;AACvE,qBAAa,aAAc,SAAQ,aAAa;gBAClC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrE;AAED,qBAAa,cAAe,SAAQ,aAAa;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAKrE;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrF;AAED,6DAA6D;AAC7D,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,SAAkB,KAAK,CAAC,EAAE,KAAK,CAAC;gBAEpB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAK3C;AAED,yCAAyC;AACzC,qBAAa,YAAa,SAAQ,UAAU;gBAC9B,SAAS,EAAE,MAAM;CAI9B;AAgBD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EACjD,OAAO,EAAE,OAAO,GACf,aAAa,CAoBf;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOnD"}
|
package/dist/errors.js
CHANGED
|
@@ -108,7 +108,7 @@ export function createAPIError(status, body, headers) {
|
|
|
108
108
|
const error = (body?.error && typeof body.error.type === 'string')
|
|
109
109
|
? body.error
|
|
110
110
|
: {
|
|
111
|
-
type:
|
|
111
|
+
type: 'unknown',
|
|
112
112
|
title: 'Error',
|
|
113
113
|
status,
|
|
114
114
|
detail: body?.error?.message ?? body?.error?.detail ?? body?.message ?? body?.detail ?? `HTTP ${status}`,
|
|
@@ -139,11 +139,20 @@ function parseRetryAfter(headers) {
|
|
|
139
139
|
}
|
|
140
140
|
/**
|
|
141
141
|
* Returns true if this error is retryable (connection, timeout, 429, 5xx).
|
|
142
|
+
*
|
|
143
|
+
* PLN-119 C6b: the server's parsed error envelope is nested at
|
|
144
|
+
* `error.error` (see {@link createAPIError}) and may carry an explicit
|
|
145
|
+
* `retryable: false` verdict (e.g. the preview `504 preview_timeout`
|
|
146
|
+
* envelope — a blind retry re-runs the exact same over-budget work). That
|
|
147
|
+
* verdict is honored BEFORE the status-based heuristic, so the SDK no
|
|
148
|
+
* longer re-hammers deterministic failures just because they are 5xx.
|
|
142
149
|
*/
|
|
143
150
|
export function isRetryable(error) {
|
|
144
151
|
if (error instanceof ConnectionError || error instanceof TimeoutError)
|
|
145
152
|
return true;
|
|
146
153
|
if (error instanceof SignaAPIError) {
|
|
154
|
+
if (error.error?.retryable === false)
|
|
155
|
+
return false;
|
|
147
156
|
return error.status === 429 || error.status >= 500;
|
|
148
157
|
}
|
|
149
158
|
return false;
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|