@signa-so/sdk 0.7.0 → 0.9.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 +44 -3
- package/dist/_internals/fetch-with-retry.d.ts +0 -2
- package/dist/_internals/fetch-with-retry.d.ts.map +1 -1
- package/dist/_internals/fetch-with-retry.js +1 -6
- package/dist/_internals/fetch-with-retry.js.map +1 -1
- package/dist/generated/api-types.d.ts +502 -662
- package/dist/generated/api-types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/resource.d.ts +0 -2
- package/dist/resource.d.ts.map +1 -1
- package/dist/resource.js +0 -10
- package/dist/resource.js.map +1 -1
- package/dist/resources/references.d.ts +44 -1
- package/dist/resources/references.d.ts.map +1 -1
- package/dist/resources/references.js +52 -0
- package/dist/resources/references.js.map +1 -1
- package/dist/resources/trademarks.d.ts +28 -28
- package/dist/resources/trademarks.d.ts.map +1 -1
- package/dist/resources/trademarks.js +29 -44
- package/dist/resources/trademarks.js.map +1 -1
- package/dist/types.d.ts +20 -26
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -88,6 +88,49 @@ export interface paths {
|
|
|
88
88
|
patch?: never;
|
|
89
89
|
trace?: never;
|
|
90
90
|
};
|
|
91
|
+
"/v1/offices/votes": {
|
|
92
|
+
parameters: {
|
|
93
|
+
query?: never;
|
|
94
|
+
header?: never;
|
|
95
|
+
path?: never;
|
|
96
|
+
cookie?: never;
|
|
97
|
+
};
|
|
98
|
+
/** @description List the authenticated organization's office-coverage votes, alphabetical by office code. The set is bounded by the votable vocabulary, so the list is always a single page: `limit` and `cursor` are accepted for list-client compatibility but do not affect the response, which always returns every vote with `has_more: false`. */
|
|
99
|
+
get: operations["listOfficeVotes"];
|
|
100
|
+
put?: never;
|
|
101
|
+
/**
|
|
102
|
+
* @description Vote for trademark offices your organization wants on Signa. One vote per office per organization — re-votes are no-ops, so the call is safely retryable. Returns the stored votes for every requested code (newly cast or pre-existing).
|
|
103
|
+
*
|
|
104
|
+
* This operation requires an `Idempotency-Key` header (see parameter description for 24h replay and 409-conflict semantics).
|
|
105
|
+
*/
|
|
106
|
+
post: operations["castOfficeVotes"];
|
|
107
|
+
delete?: never;
|
|
108
|
+
options?: never;
|
|
109
|
+
head?: never;
|
|
110
|
+
patch?: never;
|
|
111
|
+
trace?: never;
|
|
112
|
+
};
|
|
113
|
+
"/v1/offices/votes/{code}": {
|
|
114
|
+
parameters: {
|
|
115
|
+
query?: never;
|
|
116
|
+
header?: never;
|
|
117
|
+
path?: never;
|
|
118
|
+
cookie?: never;
|
|
119
|
+
};
|
|
120
|
+
get?: never;
|
|
121
|
+
put?: never;
|
|
122
|
+
post?: never;
|
|
123
|
+
/**
|
|
124
|
+
* @description Retract your organization's vote for an office. Accepts the same code vocabulary as casting; votes for offices that have since gone live can still be retracted.
|
|
125
|
+
*
|
|
126
|
+
* This operation requires an `Idempotency-Key` header (see parameter description for 24h replay and 409-conflict semantics).
|
|
127
|
+
*/
|
|
128
|
+
delete: operations["retractOfficeVote"];
|
|
129
|
+
options?: never;
|
|
130
|
+
head?: never;
|
|
131
|
+
patch?: never;
|
|
132
|
+
trace?: never;
|
|
133
|
+
};
|
|
91
134
|
"/v1/classifications": {
|
|
92
135
|
parameters: {
|
|
93
136
|
query?: never;
|
|
@@ -335,7 +378,7 @@ export interface paths {
|
|
|
335
378
|
};
|
|
336
379
|
get?: never;
|
|
337
380
|
put?: never;
|
|
338
|
-
/** @description INTERNAL/beta — requires the `image-search:read` scope (internal + design-partner keys only until GA). Search trademarks by logo/image similarity. Accepts a multipart `image` upload, an `{image_url}` (https, SSRF-guarded), or a `{media_id}` (reuse an existing mark logo). Returns mark-level hits with named signal channels + thumbnails.
|
|
381
|
+
/** @description INTERNAL/beta — requires the `image-search:read` scope (internal + design-partner keys only until GA). Search trademarks by logo/image similarity. Accepts a multipart `image` upload, an `{image_url}` (https, SSRF-guarded), or a `{media_id}` (reuse an existing mark logo). Returns mark-level hits with named signal channels + thumbnails. Metered as `image_search`: **0 credits by default** while the image index is being built, 5 credits once image-search billing is enabled. Zero-billed calls carry no `X-Credits-*` headers (nothing is debited). Bounded top-K (limit ≤ 100). The query image is never stored. */
|
|
339
382
|
post: operations["searchTrademarksByImage"];
|
|
340
383
|
delete?: never;
|
|
341
384
|
options?: never;
|
|
@@ -467,66 +510,15 @@ export interface paths {
|
|
|
467
510
|
patch?: never;
|
|
468
511
|
trace?: never;
|
|
469
512
|
};
|
|
470
|
-
"/v1/trademarks/{id}/
|
|
471
|
-
parameters: {
|
|
472
|
-
query?: never;
|
|
473
|
-
header?: never;
|
|
474
|
-
path?: never;
|
|
475
|
-
cookie?: never;
|
|
476
|
-
};
|
|
477
|
-
/** @description Paginated prosecution event timeline, reverse chronological. Maps to trademark_event table. */
|
|
478
|
-
get: operations["listTrademarkHistory"];
|
|
479
|
-
put?: never;
|
|
480
|
-
post?: never;
|
|
481
|
-
delete?: never;
|
|
482
|
-
options?: never;
|
|
483
|
-
head?: never;
|
|
484
|
-
patch?: never;
|
|
485
|
-
trace?: never;
|
|
486
|
-
};
|
|
487
|
-
"/v1/trademarks/{id}/changes": {
|
|
488
|
-
parameters: {
|
|
489
|
-
query?: never;
|
|
490
|
-
header?: never;
|
|
491
|
-
path?: never;
|
|
492
|
-
cookie?: never;
|
|
493
|
-
};
|
|
494
|
-
/** @description Version-level change history from the trademark_changes ledger, reverse chronological. This is an OBSERVED-changes feed: each entry records a mutation Signa observed to the record (office re-ingest diffs, Madrid ir_id link/unlink, retractions), not the office's own filing history. Entries are retained for a rolling 12-month window; older changes are pruned. The top-level `observed_since` field is the record's first-observation date (when Signa first ingested it) — the effective start of the visible history is max(observed_since, now − 12 months). */
|
|
495
|
-
get: operations["listTrademarkChanges"];
|
|
496
|
-
put?: never;
|
|
497
|
-
post?: never;
|
|
498
|
-
delete?: never;
|
|
499
|
-
options?: never;
|
|
500
|
-
head?: never;
|
|
501
|
-
patch?: never;
|
|
502
|
-
trace?: never;
|
|
503
|
-
};
|
|
504
|
-
"/v1/trademarks/{id}/related": {
|
|
505
|
-
parameters: {
|
|
506
|
-
query?: never;
|
|
507
|
-
header?: never;
|
|
508
|
-
path?: never;
|
|
509
|
-
cookie?: never;
|
|
510
|
-
};
|
|
511
|
-
/** @description Mark-to-mark relationships: Madrid designations, divisionals, seniority claims. Maps to trademark_relationship table. */
|
|
512
|
-
get: operations["listTrademarkRelated"];
|
|
513
|
-
put?: never;
|
|
514
|
-
post?: never;
|
|
515
|
-
delete?: never;
|
|
516
|
-
options?: never;
|
|
517
|
-
head?: never;
|
|
518
|
-
patch?: never;
|
|
519
|
-
trace?: never;
|
|
520
|
-
};
|
|
521
|
-
"/v1/trademarks/{id}/source": {
|
|
513
|
+
"/v1/trademarks/{id}/events": {
|
|
522
514
|
parameters: {
|
|
523
515
|
query?: never;
|
|
524
516
|
header?: never;
|
|
525
517
|
path?: never;
|
|
526
518
|
cookie?: never;
|
|
527
519
|
};
|
|
528
|
-
/** @description
|
|
529
|
-
get: operations["
|
|
520
|
+
/** @description Paginated prosecution event timeline for THIS mark, reverse chronological (maps to the trademark_event table): filings, publications, registrations, status changes. This is the office-reported history of a single trademark — not the org-level `/v1/events` activity feed. */
|
|
521
|
+
get: operations["listTrademarkEvents"];
|
|
530
522
|
put?: never;
|
|
531
523
|
post?: never;
|
|
532
524
|
delete?: never;
|
|
@@ -586,40 +578,6 @@ export interface paths {
|
|
|
586
578
|
patch?: never;
|
|
587
579
|
trace?: never;
|
|
588
580
|
};
|
|
589
|
-
"/v1/trademarks/{id}/coverage": {
|
|
590
|
-
parameters: {
|
|
591
|
-
query?: never;
|
|
592
|
-
header?: never;
|
|
593
|
-
path?: never;
|
|
594
|
-
cookie?: never;
|
|
595
|
-
};
|
|
596
|
-
/** @description Madrid designation territories. Maps to trademark_coverage table. Meaningful only for marks with filing_route = madrid_ir. */
|
|
597
|
-
get: operations["listTrademarkCoverage"];
|
|
598
|
-
put?: never;
|
|
599
|
-
post?: never;
|
|
600
|
-
delete?: never;
|
|
601
|
-
options?: never;
|
|
602
|
-
head?: never;
|
|
603
|
-
patch?: never;
|
|
604
|
-
trace?: never;
|
|
605
|
-
};
|
|
606
|
-
"/v1/trademarks/{id}/media/{mediaId}": {
|
|
607
|
-
parameters: {
|
|
608
|
-
query?: never;
|
|
609
|
-
header?: never;
|
|
610
|
-
path?: never;
|
|
611
|
-
cookie?: never;
|
|
612
|
-
};
|
|
613
|
-
/** @description Proxy endpoint serving trademark images. Fetches the image server-side from the upstream office or CDN and streams it back. Unauthenticated — suitable for use in <img> tags. */
|
|
614
|
-
get: operations["getTrademarkMedia"];
|
|
615
|
-
put?: never;
|
|
616
|
-
post?: never;
|
|
617
|
-
delete?: never;
|
|
618
|
-
options?: never;
|
|
619
|
-
head?: never;
|
|
620
|
-
patch?: never;
|
|
621
|
-
trace?: never;
|
|
622
|
-
};
|
|
623
581
|
"/v1/owners/{id}/analytics": {
|
|
624
582
|
parameters: {
|
|
625
583
|
query?: never;
|
|
@@ -1504,7 +1462,7 @@ export interface paths {
|
|
|
1504
1462
|
};
|
|
1505
1463
|
/** @description Read the org auto-top-up config. Internal (dashboard BFF); requires organization:manage. */
|
|
1506
1464
|
get: operations["getAutoTopUpConfig"];
|
|
1507
|
-
/** @description Update the org auto-top-up config. Internal (dashboard BFF); requires organization:manage. */
|
|
1465
|
+
/** @description Update the org auto-top-up config. Internal (dashboard BFF); requires organization:manage. Any update whose MERGED result would be enabled is refused with 501 — auto-top-up charges saved cards off-session, which Stripe Managed Payments does not support. Disabling (enabled:false) and editing a stored, disabled config remain allowed. */
|
|
1508
1466
|
put: operations["setAutoTopUpConfig"];
|
|
1509
1467
|
post?: never;
|
|
1510
1468
|
delete?: never;
|
|
@@ -1556,6 +1514,118 @@ export interface paths {
|
|
|
1556
1514
|
export type webhooks = Record<string, never>;
|
|
1557
1515
|
export interface components {
|
|
1558
1516
|
schemas: {
|
|
1517
|
+
SourceRecordRef: {
|
|
1518
|
+
/** @example WO */
|
|
1519
|
+
source_office_code: string | null;
|
|
1520
|
+
/** @example US */
|
|
1521
|
+
territory_code: string | null;
|
|
1522
|
+
trademark?: {
|
|
1523
|
+
id: string;
|
|
1524
|
+
href: string;
|
|
1525
|
+
};
|
|
1526
|
+
};
|
|
1527
|
+
DetailCoverageTerritory: {
|
|
1528
|
+
/** @example US */
|
|
1529
|
+
territory: string;
|
|
1530
|
+
/** @example active */
|
|
1531
|
+
primary: string;
|
|
1532
|
+
/** @example registered */
|
|
1533
|
+
stage: string;
|
|
1534
|
+
/** @example protected */
|
|
1535
|
+
protection_status: string | null;
|
|
1536
|
+
/** @example 2024-06-01 */
|
|
1537
|
+
designation_date: string | null;
|
|
1538
|
+
/** @example 2025-01-20 */
|
|
1539
|
+
protection_date: string | null;
|
|
1540
|
+
/**
|
|
1541
|
+
* @description The designation record covering this territory. Always present.
|
|
1542
|
+
* @example tm_7d4e1f2a-3b8c-4d0e-9f1a-2b3c4d5e6f70
|
|
1543
|
+
*/
|
|
1544
|
+
trademark_id: string;
|
|
1545
|
+
/** @example United States of America */
|
|
1546
|
+
territory_name: string | null;
|
|
1547
|
+
/** @example 2025-03-11 */
|
|
1548
|
+
refusal_date: string | null;
|
|
1549
|
+
/** @example 2025-06-01 */
|
|
1550
|
+
status_effective_date: string | null;
|
|
1551
|
+
/** @example false */
|
|
1552
|
+
is_subsequent_designation: boolean | null;
|
|
1553
|
+
/** @example madrid_protocol */
|
|
1554
|
+
designation_protocol: string | null;
|
|
1555
|
+
/** @description Reconciliation alternates for a dual-feed territory (the WIPO-feed record folded into a winning national-feed record, or vice versa). Empty for a single-feed territory. */
|
|
1556
|
+
source_records: components["schemas"]["SourceRecordRef"][];
|
|
1557
|
+
};
|
|
1558
|
+
DetailCoverage: {
|
|
1559
|
+
/** @example 50 */
|
|
1560
|
+
territory_count: number;
|
|
1561
|
+
/**
|
|
1562
|
+
* @example {
|
|
1563
|
+
* "active": 46,
|
|
1564
|
+
* "pending": 2,
|
|
1565
|
+
* "inactive": 2
|
|
1566
|
+
* }
|
|
1567
|
+
*/
|
|
1568
|
+
by_primary: {
|
|
1569
|
+
[key: string]: number;
|
|
1570
|
+
};
|
|
1571
|
+
/**
|
|
1572
|
+
* @example {
|
|
1573
|
+
* "registered": 46,
|
|
1574
|
+
* "pending": 2,
|
|
1575
|
+
* "refused": 2
|
|
1576
|
+
* }
|
|
1577
|
+
*/
|
|
1578
|
+
by_stage: {
|
|
1579
|
+
[key: string]: number;
|
|
1580
|
+
};
|
|
1581
|
+
territories: components["schemas"]["DetailCoverageTerritory"][];
|
|
1582
|
+
};
|
|
1583
|
+
TrademarkRelationship: {
|
|
1584
|
+
/** @example based_on_basic_registration */
|
|
1585
|
+
type: string;
|
|
1586
|
+
/**
|
|
1587
|
+
* @example child
|
|
1588
|
+
* @enum {string}
|
|
1589
|
+
*/
|
|
1590
|
+
direction: "child" | "parent";
|
|
1591
|
+
/** @example tm_7d4e1f2a-3b8c-4d0e-9f1a-2b3c4d5e6f70 */
|
|
1592
|
+
trademark_id: string | null;
|
|
1593
|
+
/**
|
|
1594
|
+
* @description ST.3 office code of the counterpart as reported by the office. Null on `parent` edges (the counterpart is identified by `trademark_id`).
|
|
1595
|
+
* @example US
|
|
1596
|
+
*/
|
|
1597
|
+
target_office_code: string | null;
|
|
1598
|
+
/**
|
|
1599
|
+
* @description Office-native identifier of the counterpart. Null on `parent` edges (the counterpart is identified by `trademark_id`).
|
|
1600
|
+
* @example 97123456
|
|
1601
|
+
*/
|
|
1602
|
+
target_record_id: string | null;
|
|
1603
|
+
/** @example US */
|
|
1604
|
+
office_code: string | null;
|
|
1605
|
+
/** @example SIGNA */
|
|
1606
|
+
mark_text: string | null;
|
|
1607
|
+
/** @example registered */
|
|
1608
|
+
status_stage: string | null;
|
|
1609
|
+
/** @example 2024-03-15 */
|
|
1610
|
+
effective_date: string | null;
|
|
1611
|
+
};
|
|
1612
|
+
Provenance: {
|
|
1613
|
+
/**
|
|
1614
|
+
* @description Date of the office data file/response this record was built from.
|
|
1615
|
+
* @example 2026-03-18
|
|
1616
|
+
*/
|
|
1617
|
+
source_data_date: string | null;
|
|
1618
|
+
/**
|
|
1619
|
+
* @description The office's own last-modified timestamp for the record, when it publishes one.
|
|
1620
|
+
* @example 2026-03-17T00:00:00Z
|
|
1621
|
+
*/
|
|
1622
|
+
office_updated_at: string | null;
|
|
1623
|
+
/**
|
|
1624
|
+
* @description When Signa last fetched the full detail record from the office.
|
|
1625
|
+
* @example 2026-03-18T04:00:00Z
|
|
1626
|
+
*/
|
|
1627
|
+
retrieved_at: string | null;
|
|
1628
|
+
};
|
|
1559
1629
|
TrademarkDetailV1: {
|
|
1560
1630
|
/** @example tm_7d4e1f2a3b8c9d0e */
|
|
1561
1631
|
id: string;
|
|
@@ -1620,16 +1690,6 @@ export interface components {
|
|
|
1620
1690
|
publication_date: string | null;
|
|
1621
1691
|
priority_date: string | null;
|
|
1622
1692
|
termination_date: string | null;
|
|
1623
|
-
/**
|
|
1624
|
-
* @description Timestamp reported by the source office for the record, when available.
|
|
1625
|
-
* @example 2026-03-18T04:00:00Z
|
|
1626
|
-
*/
|
|
1627
|
-
office_updated_at: string | null;
|
|
1628
|
-
/**
|
|
1629
|
-
* @description Timestamp of the most recent detail enrichment fetch when that office populates it; null otherwise.
|
|
1630
|
-
* @example 2026-03-18T04:30:00Z
|
|
1631
|
-
*/
|
|
1632
|
-
retrieved_at: string | null;
|
|
1633
1693
|
protection_effective_date: string | null;
|
|
1634
1694
|
designation_date: string | null;
|
|
1635
1695
|
dependency_period_end_date: string | null;
|
|
@@ -1899,29 +1959,18 @@ export interface components {
|
|
|
1899
1959
|
} | null;
|
|
1900
1960
|
} | null;
|
|
1901
1961
|
has_media: boolean;
|
|
1962
|
+
/**
|
|
1963
|
+
* @description Media-proxy URL for the primary mark image. Null when the mark has no media.
|
|
1964
|
+
* @example https://api.signa.so/v1/trademarks/tm_abc/media/01234567-89ab-cdef-0123-456789abcdef
|
|
1965
|
+
*/
|
|
1966
|
+
primary_image_url: string | null;
|
|
1967
|
+
/** @description Per-territory coverage for a grouped Madrid IR (the same reconciled rollup the search row carries, plus per-designation detail). Null on designation legs and on direct/regional marks. */
|
|
1968
|
+
coverage: components["schemas"]["DetailCoverage"] | null;
|
|
1969
|
+
/** @description Mark-to-mark relationships. Excludes Madrid designations (see coverage.territories[]) and seniority claims (see seniority_claims[]). Capped at 200 per mark. */
|
|
1970
|
+
relationships: components["schemas"]["TrademarkRelationship"][];
|
|
1902
1971
|
events_count: number;
|
|
1903
1972
|
proceedings_count: number;
|
|
1904
|
-
|
|
1905
|
-
relationships_count: number;
|
|
1906
|
-
data_freshness: {
|
|
1907
|
-
/** @example 2026-03-18 */
|
|
1908
|
-
source_data_date: string | null;
|
|
1909
|
-
/** @example dtd_v2.0 */
|
|
1910
|
-
source_format: string | null;
|
|
1911
|
-
/** @example 2026-03-18T04:00:00Z */
|
|
1912
|
-
last_updated_at: string;
|
|
1913
|
-
};
|
|
1914
|
-
madrid?: {
|
|
1915
|
-
ir_number: string;
|
|
1916
|
-
holder_name: string | null;
|
|
1917
|
-
origin_office: string | null;
|
|
1918
|
-
expiry_date: string | null;
|
|
1919
|
-
designation_count: number;
|
|
1920
|
-
designated_countries: string[];
|
|
1921
|
-
nice_classes: number[];
|
|
1922
|
-
status_stage: string | null;
|
|
1923
|
-
fetched_at: string | null;
|
|
1924
|
-
} | null;
|
|
1973
|
+
provenance: components["schemas"]["Provenance"];
|
|
1925
1974
|
/** @example 2024-03-16T00:00:00Z */
|
|
1926
1975
|
created_at: string;
|
|
1927
1976
|
/** @example 2026-03-18T04:00:00Z */
|
|
@@ -2096,18 +2145,6 @@ export interface components {
|
|
|
2096
2145
|
/** @example 2025-01-20 */
|
|
2097
2146
|
protection_date: string | null;
|
|
2098
2147
|
}[];
|
|
2099
|
-
/** @example /v1/trademarks/tm_IR1293856/coverage */
|
|
2100
|
-
href: string;
|
|
2101
|
-
};
|
|
2102
|
-
SourceRecordRef: {
|
|
2103
|
-
/** @example WO */
|
|
2104
|
-
source_office_code: string | null;
|
|
2105
|
-
/** @example US */
|
|
2106
|
-
territory_code: string | null;
|
|
2107
|
-
trademark?: {
|
|
2108
|
-
id: string;
|
|
2109
|
-
href: string;
|
|
2110
|
-
};
|
|
2111
2148
|
};
|
|
2112
2149
|
TerritoryMatch: {
|
|
2113
2150
|
/**
|
|
@@ -2421,27 +2458,33 @@ export interface components {
|
|
|
2421
2458
|
data: components["schemas"]["ScreeningHitV3"][];
|
|
2422
2459
|
request_id?: string;
|
|
2423
2460
|
};
|
|
2424
|
-
|
|
2425
|
-
/** @example 9 */
|
|
2426
|
-
class_number: number;
|
|
2461
|
+
OfficeVoteResource: {
|
|
2427
2462
|
/** @enum {string} */
|
|
2428
|
-
object: "
|
|
2429
|
-
/**
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2463
|
+
object: "office_vote";
|
|
2464
|
+
/**
|
|
2465
|
+
* @description Canonical WIPO ST.3 office code (uppercase), e.g. BR, MX, BX.
|
|
2466
|
+
* @example BR
|
|
2467
|
+
*/
|
|
2468
|
+
office_code: string;
|
|
2469
|
+
/**
|
|
2470
|
+
* @description Current coverage of the voted office: `live` (now on Signa — your ask landed), `roadmap` (modeled, connector not shipping yet), `not_covered` (not modeled yet).
|
|
2471
|
+
* @enum {string}
|
|
2472
|
+
*/
|
|
2473
|
+
office_status: "live" | "roadmap" | "not_covered";
|
|
2474
|
+
/** @description When this org first voted for the office. */
|
|
2475
|
+
created_at: string;
|
|
2433
2476
|
};
|
|
2434
|
-
|
|
2477
|
+
OfficeVoteList: {
|
|
2435
2478
|
/** @enum {string} */
|
|
2436
2479
|
object: "list";
|
|
2437
|
-
data: components["schemas"]["
|
|
2480
|
+
data: components["schemas"]["OfficeVoteResource"][];
|
|
2438
2481
|
has_more: boolean;
|
|
2439
2482
|
pagination: {
|
|
2440
2483
|
cursor: string | null;
|
|
2441
2484
|
total_count?: number;
|
|
2442
2485
|
total_count_approximate?: boolean;
|
|
2443
2486
|
};
|
|
2444
|
-
request_id
|
|
2487
|
+
request_id: string;
|
|
2445
2488
|
};
|
|
2446
2489
|
Error: {
|
|
2447
2490
|
error: {
|
|
@@ -2477,23 +2520,53 @@ export interface components {
|
|
|
2477
2520
|
/** @example req_abc123 */
|
|
2478
2521
|
request_id: string;
|
|
2479
2522
|
};
|
|
2480
|
-
|
|
2481
|
-
/** @
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2523
|
+
OfficeVoteDeleted: {
|
|
2524
|
+
/** @enum {string} */
|
|
2525
|
+
object: "office_vote";
|
|
2526
|
+
office_code: string;
|
|
2527
|
+
/** @enum {boolean} */
|
|
2528
|
+
deleted: true;
|
|
2529
|
+
request_id: string;
|
|
2530
|
+
};
|
|
2531
|
+
Classification: {
|
|
2485
2532
|
/** @example 9 */
|
|
2486
2533
|
class_number: number;
|
|
2487
|
-
/** @
|
|
2488
|
-
|
|
2489
|
-
/** @example
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2534
|
+
/** @enum {string} */
|
|
2535
|
+
object: "classification";
|
|
2536
|
+
/** @example Electrical and scientific apparatus */
|
|
2537
|
+
title: string;
|
|
2538
|
+
description: string | null;
|
|
2539
|
+
category: string | null;
|
|
2540
|
+
};
|
|
2541
|
+
ClassificationListResponse: {
|
|
2542
|
+
/** @enum {string} */
|
|
2543
|
+
object: "list";
|
|
2544
|
+
data: components["schemas"]["Classification"][];
|
|
2545
|
+
has_more: boolean;
|
|
2546
|
+
pagination: {
|
|
2547
|
+
cursor: string | null;
|
|
2548
|
+
total_count?: number;
|
|
2549
|
+
total_count_approximate?: boolean;
|
|
2550
|
+
};
|
|
2551
|
+
request_id?: string;
|
|
2552
|
+
};
|
|
2553
|
+
GoodsServicesTerm: {
|
|
2554
|
+
/** @example Computer software for data processing */
|
|
2555
|
+
term: string;
|
|
2556
|
+
/** @example computer-software-for-data-processing */
|
|
2557
|
+
term_key: string;
|
|
2558
|
+
/** @example 9 */
|
|
2559
|
+
class_number: number;
|
|
2560
|
+
/** @example Software > Data Processing */
|
|
2561
|
+
taxonomy_path: string | null;
|
|
2562
|
+
/** @example true */
|
|
2563
|
+
is_harmonised: boolean;
|
|
2564
|
+
/**
|
|
2565
|
+
* @description Offices whose goods & services catalogs accept this term, as identified by the upstream sources (TMclass/HDB, USPTO ID Manual). This is a catalog-acceptance vocabulary passed through verbatim — NOT the ST.3 `office_code` vocabulary used elsewhere in the API.
|
|
2566
|
+
* @example [
|
|
2567
|
+
* "USPTO",
|
|
2568
|
+
* "EUIPO",
|
|
2569
|
+
* "UKIPO",
|
|
2497
2570
|
* "CIPO"
|
|
2498
2571
|
* ]
|
|
2499
2572
|
*/
|
|
@@ -3511,7 +3584,7 @@ export interface components {
|
|
|
3511
3584
|
international_registrations: "grouped" | "expanded";
|
|
3512
3585
|
/**
|
|
3513
3586
|
* @description Present when a grouped request falls back to expanded because a filter, sort, or option cannot be served by the grouped index.
|
|
3514
|
-
* @example filter:
|
|
3587
|
+
* @example filter:filing_date forced expanded
|
|
3515
3588
|
*/
|
|
3516
3589
|
fallback_reason?: string;
|
|
3517
3590
|
/**
|
|
@@ -3575,7 +3648,11 @@ export interface components {
|
|
|
3575
3648
|
aggregation_metadata?: components["schemas"]["AggregationMetadata"];
|
|
3576
3649
|
request_id: string;
|
|
3577
3650
|
};
|
|
3578
|
-
|
|
3651
|
+
TrademarkEvent: {
|
|
3652
|
+
/** @example evt_7d4e1f2a-3b8c-4d0e-9f1a-2b3c4d5e6f70 */
|
|
3653
|
+
id: string;
|
|
3654
|
+
/** @enum {string} */
|
|
3655
|
+
object: "event";
|
|
3579
3656
|
/** @example 2025-01-20 */
|
|
3580
3657
|
event_date: string | null;
|
|
3581
3658
|
/** @example registration */
|
|
@@ -3599,108 +3676,10 @@ export interface components {
|
|
|
3599
3676
|
/** @example 12 */
|
|
3600
3677
|
sequence_no: number | null;
|
|
3601
3678
|
};
|
|
3602
|
-
|
|
3603
|
-
/** @enum {string} */
|
|
3604
|
-
object: "list";
|
|
3605
|
-
data: components["schemas"]["TrademarkHistoryEvent"][];
|
|
3606
|
-
has_more: boolean;
|
|
3607
|
-
pagination: {
|
|
3608
|
-
cursor: string | null;
|
|
3609
|
-
total_count?: number;
|
|
3610
|
-
total_count_approximate?: boolean;
|
|
3611
|
-
};
|
|
3612
|
-
request_id: string;
|
|
3613
|
-
};
|
|
3614
|
-
TrademarkChange: {
|
|
3615
|
-
/** @example evt_019d2141-6ce9-771b-872e-bc8b20e49fcf */
|
|
3616
|
-
id: string;
|
|
3617
|
-
/** @enum {string} */
|
|
3618
|
-
object: "trademark_change";
|
|
3619
|
-
/** @example 12 */
|
|
3620
|
-
version: number;
|
|
3621
|
-
/** @example updated */
|
|
3622
|
-
change_type: string;
|
|
3623
|
-
/**
|
|
3624
|
-
* @example [
|
|
3625
|
-
* "status_stage",
|
|
3626
|
-
* "registration_date"
|
|
3627
|
-
* ]
|
|
3628
|
-
*/
|
|
3629
|
-
changed_fields: string[];
|
|
3630
|
-
/**
|
|
3631
|
-
* @example {
|
|
3632
|
-
* "status_stage": "examining",
|
|
3633
|
-
* "registration_date": null
|
|
3634
|
-
* }
|
|
3635
|
-
*/
|
|
3636
|
-
old_values: {
|
|
3637
|
-
[key: string]: string | number | boolean | unknown[] | {
|
|
3638
|
-
[key: string]: unknown;
|
|
3639
|
-
} | null;
|
|
3640
|
-
} | null;
|
|
3641
|
-
/**
|
|
3642
|
-
* @example {
|
|
3643
|
-
* "status_stage": "registered",
|
|
3644
|
-
* "registration_date": "2026-03-15"
|
|
3645
|
-
* }
|
|
3646
|
-
*/
|
|
3647
|
-
new_values: {
|
|
3648
|
-
[key: string]: string | number | boolean | unknown[] | {
|
|
3649
|
-
[key: string]: unknown;
|
|
3650
|
-
} | null;
|
|
3651
|
-
};
|
|
3652
|
-
/** @example 2026-03-15 */
|
|
3653
|
-
source_data_date: string | null;
|
|
3654
|
-
/** @example US */
|
|
3655
|
-
office_code: string | null;
|
|
3656
|
-
/** @example 2026-03-15T12:00:00Z */
|
|
3657
|
-
created_at: string;
|
|
3658
|
-
};
|
|
3659
|
-
TrademarkChangesResponse: {
|
|
3660
|
-
/** @enum {string} */
|
|
3661
|
-
object: "list";
|
|
3662
|
-
data: components["schemas"]["TrademarkChange"][];
|
|
3663
|
-
has_more: boolean;
|
|
3664
|
-
pagination: {
|
|
3665
|
-
cursor: string | null;
|
|
3666
|
-
total_count?: number;
|
|
3667
|
-
total_count_approximate?: boolean;
|
|
3668
|
-
};
|
|
3669
|
-
/**
|
|
3670
|
-
* Format: date-time
|
|
3671
|
-
* @description ISO 8601 date-time the trademark was first observed by Signa (first ingest). Changes older than the rolling 12-month retention window are pruned.
|
|
3672
|
-
*/
|
|
3673
|
-
observed_since: string | null;
|
|
3674
|
-
request_id: string;
|
|
3675
|
-
};
|
|
3676
|
-
TrademarkRelated: {
|
|
3677
|
-
/** @example tm_xyz */
|
|
3678
|
-
related_trademark_id: string | null;
|
|
3679
|
-
/** @example madrid_designation_of */
|
|
3680
|
-
relationship_type: string;
|
|
3681
|
-
/** @example 2024-06-01 */
|
|
3682
|
-
effective_date: string | null;
|
|
3683
|
-
/** @example SIGNA */
|
|
3684
|
-
mark_text: string | null;
|
|
3685
|
-
/** @example EM */
|
|
3686
|
-
office_code: string | null;
|
|
3687
|
-
/** @example registered */
|
|
3688
|
-
status_stage: string | null;
|
|
3689
|
-
/** @example child */
|
|
3690
|
-
direction: string;
|
|
3691
|
-
/** @example null */
|
|
3692
|
-
target_office_code: string | null;
|
|
3693
|
-
/** @example null */
|
|
3694
|
-
target_record_id: string | null;
|
|
3695
|
-
/** @example null */
|
|
3696
|
-
metadata: string | number | boolean | unknown[] | {
|
|
3697
|
-
[key: string]: unknown;
|
|
3698
|
-
} | null;
|
|
3699
|
-
};
|
|
3700
|
-
TrademarkRelatedResponse: {
|
|
3679
|
+
TrademarkEventsResponse: {
|
|
3701
3680
|
/** @enum {string} */
|
|
3702
3681
|
object: "list";
|
|
3703
|
-
data: components["schemas"]["
|
|
3682
|
+
data: components["schemas"]["TrademarkEvent"][];
|
|
3704
3683
|
has_more: boolean;
|
|
3705
3684
|
pagination: {
|
|
3706
3685
|
cursor: string | null;
|
|
@@ -3709,27 +3688,6 @@ export interface components {
|
|
|
3709
3688
|
};
|
|
3710
3689
|
request_id: string;
|
|
3711
3690
|
};
|
|
3712
|
-
TrademarkSource: {
|
|
3713
|
-
/** @enum {string} */
|
|
3714
|
-
object: "trademark_source";
|
|
3715
|
-
/** @example tm_abc */
|
|
3716
|
-
trademark_id: string;
|
|
3717
|
-
/** @example US */
|
|
3718
|
-
office_code: string | null;
|
|
3719
|
-
/** @example 2026-03-18T04:00:00Z */
|
|
3720
|
-
observed_at: string;
|
|
3721
|
-
/** @example dtd_v2.0 */
|
|
3722
|
-
source_format: string;
|
|
3723
|
-
/** @example daily_bulk_xml */
|
|
3724
|
-
source_response_type: string | null;
|
|
3725
|
-
/** @example apc18840407-20251231-01.zip/entry-1234.xml */
|
|
3726
|
-
source_locator: string | null;
|
|
3727
|
-
/** @example sha256:a1b2c3d4... */
|
|
3728
|
-
payload_hash: string;
|
|
3729
|
-
};
|
|
3730
|
-
TrademarkSourceResponse: components["schemas"]["TrademarkSource"] & {
|
|
3731
|
-
request_id: string;
|
|
3732
|
-
};
|
|
3733
3691
|
TrademarkProceedingParty: {
|
|
3734
3692
|
/** @example own_xyz */
|
|
3735
3693
|
owner_id: string | null;
|
|
@@ -3930,57 +3888,6 @@ export interface components {
|
|
|
3930
3888
|
source_sync: components["schemas"]["TrademarkDocumentSourceSync"];
|
|
3931
3889
|
request_id: string;
|
|
3932
3890
|
};
|
|
3933
|
-
TrademarkCoverage: {
|
|
3934
|
-
/** @example GB */
|
|
3935
|
-
territory_code: string | null;
|
|
3936
|
-
/** @example United Kingdom */
|
|
3937
|
-
territory_name: string | null;
|
|
3938
|
-
/** @example active */
|
|
3939
|
-
primary: string | null;
|
|
3940
|
-
/** @example registered */
|
|
3941
|
-
stage: string | null;
|
|
3942
|
-
/** @example protected */
|
|
3943
|
-
protection_status: string | null;
|
|
3944
|
-
/** @example 2024-06-01 */
|
|
3945
|
-
designation_date: string | null;
|
|
3946
|
-
/** @example 2025-02-15 */
|
|
3947
|
-
protection_date: string | null;
|
|
3948
|
-
/** @example null */
|
|
3949
|
-
refusal_date: string | null;
|
|
3950
|
-
/** @example 2025-02-15 */
|
|
3951
|
-
status_effective_date: string | null;
|
|
3952
|
-
/** @example false */
|
|
3953
|
-
is_subsequent_designation: boolean | null;
|
|
3954
|
-
/** @example madrid */
|
|
3955
|
-
designation_protocol: string | null;
|
|
3956
|
-
/** @example null */
|
|
3957
|
-
goods_limitations: string | number | boolean | unknown[] | {
|
|
3958
|
-
[key: string]: unknown;
|
|
3959
|
-
} | null;
|
|
3960
|
-
/** @example null */
|
|
3961
|
-
status_detail: string | number | boolean | unknown[] | {
|
|
3962
|
-
[key: string]: unknown;
|
|
3963
|
-
} | null;
|
|
3964
|
-
/** @description WIPO/national reconciliation alternates for this territory (§12.1) on grouped IR-parent rows — additive, never a duplicate row. Empty/absent for single-feed territories and non-IR marks. */
|
|
3965
|
-
source_records?: {
|
|
3966
|
-
/** @example WO */
|
|
3967
|
-
source_office_code: string | null;
|
|
3968
|
-
/** @example US */
|
|
3969
|
-
territory_code: string | null;
|
|
3970
|
-
}[];
|
|
3971
|
-
};
|
|
3972
|
-
TrademarkCoverageResponse: {
|
|
3973
|
-
/** @enum {string} */
|
|
3974
|
-
object: "list";
|
|
3975
|
-
data: components["schemas"]["TrademarkCoverage"][];
|
|
3976
|
-
has_more: boolean;
|
|
3977
|
-
pagination: {
|
|
3978
|
-
cursor: string | null;
|
|
3979
|
-
total_count?: number;
|
|
3980
|
-
total_count_approximate?: boolean;
|
|
3981
|
-
};
|
|
3982
|
-
request_id: string;
|
|
3983
|
-
};
|
|
3984
3891
|
AnalyticsPortfolioBlock: {
|
|
3985
3892
|
mark_count: number;
|
|
3986
3893
|
active_count: number;
|
|
@@ -4395,7 +4302,7 @@ export interface components {
|
|
|
4395
4302
|
international_registrations: "grouped" | "expanded";
|
|
4396
4303
|
/**
|
|
4397
4304
|
* @description Present when a grouped request falls back to expanded because a filter, sort, or option cannot be served by the grouped index.
|
|
4398
|
-
* @example filter:
|
|
4305
|
+
* @example filter:filing_date forced expanded
|
|
4399
4306
|
*/
|
|
4400
4307
|
fallback_reason?: string;
|
|
4401
4308
|
/**
|
|
@@ -4633,7 +4540,7 @@ export interface components {
|
|
|
4633
4540
|
international_registrations: "grouped" | "expanded";
|
|
4634
4541
|
/**
|
|
4635
4542
|
* @description Present when a grouped request falls back to expanded because a filter, sort, or option cannot be served by the grouped index.
|
|
4636
|
-
* @example filter:
|
|
4543
|
+
* @example filter:filing_date forced expanded
|
|
4637
4544
|
*/
|
|
4638
4545
|
fallback_reason?: string;
|
|
4639
4546
|
/**
|
|
@@ -4872,7 +4779,7 @@ export interface components {
|
|
|
4872
4779
|
international_registrations: "grouped" | "expanded";
|
|
4873
4780
|
/**
|
|
4874
4781
|
* @description Present when a grouped request falls back to expanded because a filter, sort, or option cannot be served by the grouped index.
|
|
4875
|
-
* @example filter:
|
|
4782
|
+
* @example filter:filing_date forced expanded
|
|
4876
4783
|
*/
|
|
4877
4784
|
fallback_reason?: string;
|
|
4878
4785
|
/**
|
|
@@ -5167,7 +5074,7 @@ export interface components {
|
|
|
5167
5074
|
international_registrations: "grouped" | "expanded";
|
|
5168
5075
|
/**
|
|
5169
5076
|
* @description Present when a grouped request falls back to expanded because a filter, sort, or option cannot be served by the grouped index.
|
|
5170
|
-
* @example filter:
|
|
5077
|
+
* @example filter:filing_date forced expanded
|
|
5171
5078
|
*/
|
|
5172
5079
|
fallback_reason?: string;
|
|
5173
5080
|
/**
|
|
@@ -6396,6 +6303,8 @@ export interface components {
|
|
|
6396
6303
|
*/
|
|
6397
6304
|
status: "active" | "revoked" | "expired";
|
|
6398
6305
|
expires_at: string | null;
|
|
6306
|
+
/** @description When this key was rotated (superseded). Non-null means expires_at is a rotation grace deadline, not a customer-set expiry. */
|
|
6307
|
+
rotated_at: string | null;
|
|
6399
6308
|
last_used_at: string | null;
|
|
6400
6309
|
metadata: {
|
|
6401
6310
|
[key: string]: string;
|
|
@@ -6427,6 +6336,8 @@ export interface components {
|
|
|
6427
6336
|
*/
|
|
6428
6337
|
status: "active" | "revoked" | "expired";
|
|
6429
6338
|
expires_at: string | null;
|
|
6339
|
+
/** @description When this key was rotated (superseded). Non-null means expires_at is a rotation grace deadline, not a customer-set expiry. */
|
|
6340
|
+
rotated_at: string | null;
|
|
6430
6341
|
last_used_at: string | null;
|
|
6431
6342
|
metadata: {
|
|
6432
6343
|
[key: string]: string;
|
|
@@ -6577,16 +6488,19 @@ export interface components {
|
|
|
6577
6488
|
StripeCheckoutSessionResponse: {
|
|
6578
6489
|
checkout_url: string | null;
|
|
6579
6490
|
session_id: string;
|
|
6491
|
+
request_id: string;
|
|
6580
6492
|
};
|
|
6581
6493
|
StripeBillingPortalResponse: {
|
|
6582
6494
|
portal_url: string;
|
|
6583
6495
|
session_id: string;
|
|
6496
|
+
request_id: string;
|
|
6584
6497
|
};
|
|
6585
6498
|
StripeCreditPackCheckoutResponse: {
|
|
6586
6499
|
checkout_url: string | null;
|
|
6587
6500
|
session_id: string;
|
|
6588
6501
|
credits: number;
|
|
6589
6502
|
plan: string;
|
|
6503
|
+
request_id: string;
|
|
6590
6504
|
};
|
|
6591
6505
|
AutoTopUpConfigResponse: {
|
|
6592
6506
|
enabled: boolean;
|
|
@@ -6597,6 +6511,9 @@ export interface components {
|
|
|
6597
6511
|
saved_payment_method: string | null;
|
|
6598
6512
|
month_to_date_spend_usd: number;
|
|
6599
6513
|
last_failure_reason: string | null;
|
|
6514
|
+
/** @description True while auto-top-up charging is suspended fleet-wide (all Signa payments run through Stripe Managed Payments, which cannot make automatic off-session charges). While true, any update whose merged result would be enabled is refused with 501. */
|
|
6515
|
+
suspended: boolean;
|
|
6516
|
+
request_id: string;
|
|
6600
6517
|
};
|
|
6601
6518
|
NotificationCategory: {
|
|
6602
6519
|
key: string;
|
|
@@ -6833,6 +6750,153 @@ export interface operations {
|
|
|
6833
6750
|
};
|
|
6834
6751
|
};
|
|
6835
6752
|
};
|
|
6753
|
+
listOfficeVotes: {
|
|
6754
|
+
parameters: {
|
|
6755
|
+
query?: {
|
|
6756
|
+
limit?: number;
|
|
6757
|
+
cursor?: string;
|
|
6758
|
+
};
|
|
6759
|
+
header?: never;
|
|
6760
|
+
path?: never;
|
|
6761
|
+
cookie?: never;
|
|
6762
|
+
};
|
|
6763
|
+
requestBody?: never;
|
|
6764
|
+
responses: {
|
|
6765
|
+
/** @description List of office votes */
|
|
6766
|
+
200: {
|
|
6767
|
+
headers: {
|
|
6768
|
+
[name: string]: unknown;
|
|
6769
|
+
};
|
|
6770
|
+
content: {
|
|
6771
|
+
"application/json": components["schemas"]["OfficeVoteList"];
|
|
6772
|
+
};
|
|
6773
|
+
};
|
|
6774
|
+
/** @description Invalid query parameter */
|
|
6775
|
+
400: {
|
|
6776
|
+
headers: {
|
|
6777
|
+
[name: string]: unknown;
|
|
6778
|
+
};
|
|
6779
|
+
content: {
|
|
6780
|
+
"application/json": components["schemas"]["Error"];
|
|
6781
|
+
};
|
|
6782
|
+
};
|
|
6783
|
+
/** @description Missing or invalid API key */
|
|
6784
|
+
401: {
|
|
6785
|
+
headers: {
|
|
6786
|
+
[name: string]: unknown;
|
|
6787
|
+
};
|
|
6788
|
+
content: {
|
|
6789
|
+
"application/json": components["schemas"]["Error"];
|
|
6790
|
+
};
|
|
6791
|
+
};
|
|
6792
|
+
};
|
|
6793
|
+
};
|
|
6794
|
+
castOfficeVotes: {
|
|
6795
|
+
parameters: {
|
|
6796
|
+
query?: never;
|
|
6797
|
+
header: {
|
|
6798
|
+
/** @description Unique key for safe retries. Responses to a given key are cached for 24h; retrying the same key with the same body replays the original response (with an Idempotent-Replayed: true header); the same key with a different body returns 409 conflict. */
|
|
6799
|
+
"Idempotency-Key": string;
|
|
6800
|
+
};
|
|
6801
|
+
path?: never;
|
|
6802
|
+
cookie?: never;
|
|
6803
|
+
};
|
|
6804
|
+
requestBody?: {
|
|
6805
|
+
content: {
|
|
6806
|
+
"application/json": {
|
|
6807
|
+
/**
|
|
6808
|
+
* @description Office codes to vote for (1–50). ST.3 / ISO country codes, any case (surrounding whitespace is trimmed); legacy internal codes and reserved aliases like UK are canonicalized. Offices Signa already covers are rejected — vote for what you want added. Codes your organization already voted for are no-ops, never double counts.
|
|
6809
|
+
* @example [
|
|
6810
|
+
* "BR",
|
|
6811
|
+
* "MX"
|
|
6812
|
+
* ]
|
|
6813
|
+
*/
|
|
6814
|
+
office_codes: string[];
|
|
6815
|
+
};
|
|
6816
|
+
};
|
|
6817
|
+
};
|
|
6818
|
+
responses: {
|
|
6819
|
+
/** @description Stored votes for the requested codes */
|
|
6820
|
+
200: {
|
|
6821
|
+
headers: {
|
|
6822
|
+
[name: string]: unknown;
|
|
6823
|
+
};
|
|
6824
|
+
content: {
|
|
6825
|
+
"application/json": components["schemas"]["OfficeVoteList"];
|
|
6826
|
+
};
|
|
6827
|
+
};
|
|
6828
|
+
/** @description Unknown, already-covered, or register-less office code (unknown_office_code / office_already_live / no_trademark_register) */
|
|
6829
|
+
400: {
|
|
6830
|
+
headers: {
|
|
6831
|
+
[name: string]: unknown;
|
|
6832
|
+
};
|
|
6833
|
+
content: {
|
|
6834
|
+
"application/json": components["schemas"]["Error"];
|
|
6835
|
+
};
|
|
6836
|
+
};
|
|
6837
|
+
/** @description Missing or invalid API key */
|
|
6838
|
+
401: {
|
|
6839
|
+
headers: {
|
|
6840
|
+
[name: string]: unknown;
|
|
6841
|
+
};
|
|
6842
|
+
content: {
|
|
6843
|
+
"application/json": components["schemas"]["Error"];
|
|
6844
|
+
};
|
|
6845
|
+
};
|
|
6846
|
+
};
|
|
6847
|
+
};
|
|
6848
|
+
retractOfficeVote: {
|
|
6849
|
+
parameters: {
|
|
6850
|
+
query?: never;
|
|
6851
|
+
header: {
|
|
6852
|
+
/** @description Unique key for safe retries. Responses to a given key are cached for 24h; retrying the same key with the same body replays the original response (with an Idempotent-Replayed: true header); the same key with a different body returns 409 conflict. */
|
|
6853
|
+
"Idempotency-Key": string;
|
|
6854
|
+
};
|
|
6855
|
+
path: {
|
|
6856
|
+
code: string;
|
|
6857
|
+
};
|
|
6858
|
+
cookie?: never;
|
|
6859
|
+
};
|
|
6860
|
+
requestBody?: never;
|
|
6861
|
+
responses: {
|
|
6862
|
+
/** @description Vote deleted */
|
|
6863
|
+
200: {
|
|
6864
|
+
headers: {
|
|
6865
|
+
[name: string]: unknown;
|
|
6866
|
+
};
|
|
6867
|
+
content: {
|
|
6868
|
+
"application/json": components["schemas"]["OfficeVoteDeleted"];
|
|
6869
|
+
};
|
|
6870
|
+
};
|
|
6871
|
+
/** @description Unknown office code */
|
|
6872
|
+
400: {
|
|
6873
|
+
headers: {
|
|
6874
|
+
[name: string]: unknown;
|
|
6875
|
+
};
|
|
6876
|
+
content: {
|
|
6877
|
+
"application/json": components["schemas"]["Error"];
|
|
6878
|
+
};
|
|
6879
|
+
};
|
|
6880
|
+
/** @description Missing or invalid API key */
|
|
6881
|
+
401: {
|
|
6882
|
+
headers: {
|
|
6883
|
+
[name: string]: unknown;
|
|
6884
|
+
};
|
|
6885
|
+
content: {
|
|
6886
|
+
"application/json": components["schemas"]["Error"];
|
|
6887
|
+
};
|
|
6888
|
+
};
|
|
6889
|
+
/** @description No vote for this office */
|
|
6890
|
+
404: {
|
|
6891
|
+
headers: {
|
|
6892
|
+
[name: string]: unknown;
|
|
6893
|
+
};
|
|
6894
|
+
content: {
|
|
6895
|
+
"application/json": components["schemas"]["Error"];
|
|
6896
|
+
};
|
|
6897
|
+
};
|
|
6898
|
+
};
|
|
6899
|
+
};
|
|
6836
6900
|
listClassifications: {
|
|
6837
6901
|
parameters: {
|
|
6838
6902
|
query?: {
|
|
@@ -8328,167 +8392,39 @@ export interface operations {
|
|
|
8328
8392
|
* @description International registration presentation. Default grouped → one row per mark/IR, with coverage on IR rows. Use expanded for one row per Madrid designation.
|
|
8329
8393
|
* @example grouped
|
|
8330
8394
|
* @enum {string}
|
|
8331
|
-
*/
|
|
8332
|
-
international_registrations?: "grouped" | "expanded";
|
|
8333
|
-
/**
|
|
8334
|
-
* @description Optional row projections. `full_goods_services` returns full classifications[].goods_services_text; default rows truncate long G&S text to about 280 characters.
|
|
8335
|
-
* @example [
|
|
8336
|
-
* "full_goods_services"
|
|
8337
|
-
* ]
|
|
8338
|
-
*/
|
|
8339
|
-
include?: "full_goods_services"[];
|
|
8340
|
-
/**
|
|
8341
|
-
* @description Sparse top-level field projection. id and object are always retained.
|
|
8342
|
-
* @example [
|
|
8343
|
-
* "mark_text",
|
|
8344
|
-
* "status",
|
|
8345
|
-
* "nice_classes",
|
|
8346
|
-
* "owners"
|
|
8347
|
-
* ]
|
|
8348
|
-
*/
|
|
8349
|
-
fields?: string[];
|
|
8350
|
-
};
|
|
8351
|
-
};
|
|
8352
|
-
};
|
|
8353
|
-
responses: {
|
|
8354
|
-
/** @description Search results */
|
|
8355
|
-
200: {
|
|
8356
|
-
headers: {
|
|
8357
|
-
[name: string]: unknown;
|
|
8358
|
-
};
|
|
8359
|
-
content: {
|
|
8360
|
-
"application/json": components["schemas"]["SearchResponseV2"];
|
|
8361
|
-
};
|
|
8362
|
-
};
|
|
8363
|
-
/** @description Validation error */
|
|
8364
|
-
400: {
|
|
8365
|
-
headers: {
|
|
8366
|
-
[name: string]: unknown;
|
|
8367
|
-
};
|
|
8368
|
-
content: {
|
|
8369
|
-
"application/json": components["schemas"]["Error"];
|
|
8370
|
-
};
|
|
8371
|
-
};
|
|
8372
|
-
/** @description Missing or invalid API key */
|
|
8373
|
-
401: {
|
|
8374
|
-
headers: {
|
|
8375
|
-
[name: string]: unknown;
|
|
8376
|
-
};
|
|
8377
|
-
content: {
|
|
8378
|
-
"application/json": components["schemas"]["Error"];
|
|
8379
|
-
};
|
|
8380
|
-
};
|
|
8381
|
-
/** @description Missing required scope */
|
|
8382
|
-
403: {
|
|
8383
|
-
headers: {
|
|
8384
|
-
[name: string]: unknown;
|
|
8385
|
-
};
|
|
8386
|
-
content: {
|
|
8387
|
-
"application/json": components["schemas"]["Error"];
|
|
8388
|
-
};
|
|
8389
|
-
};
|
|
8390
|
-
/** @description Entity too large (member cap exceeded) */
|
|
8391
|
-
422: {
|
|
8392
|
-
headers: {
|
|
8393
|
-
[name: string]: unknown;
|
|
8394
|
-
};
|
|
8395
|
-
content: {
|
|
8396
|
-
"application/json": components["schemas"]["Error"];
|
|
8397
|
-
};
|
|
8398
|
-
};
|
|
8399
|
-
};
|
|
8400
|
-
};
|
|
8401
|
-
listTrademarkHistory: {
|
|
8402
|
-
parameters: {
|
|
8403
|
-
query?: {
|
|
8404
|
-
event_type?: string[] | null;
|
|
8405
|
-
event_scope?: string;
|
|
8406
|
-
event_date_gte?: string;
|
|
8407
|
-
event_date_lt?: string;
|
|
8408
|
-
limit?: number;
|
|
8409
|
-
cursor?: string;
|
|
8410
|
-
};
|
|
8411
|
-
header?: never;
|
|
8412
|
-
path: {
|
|
8413
|
-
id: string;
|
|
8414
|
-
};
|
|
8415
|
-
cookie?: never;
|
|
8416
|
-
};
|
|
8417
|
-
requestBody?: never;
|
|
8418
|
-
responses: {
|
|
8419
|
-
/** @description Trademark event history */
|
|
8420
|
-
200: {
|
|
8421
|
-
headers: {
|
|
8422
|
-
[name: string]: unknown;
|
|
8423
|
-
};
|
|
8424
|
-
content: {
|
|
8425
|
-
"application/json": components["schemas"]["TrademarkHistoryResponse"];
|
|
8426
|
-
};
|
|
8427
|
-
};
|
|
8428
|
-
/** @description Invalid ID */
|
|
8429
|
-
400: {
|
|
8430
|
-
headers: {
|
|
8431
|
-
[name: string]: unknown;
|
|
8432
|
-
};
|
|
8433
|
-
content: {
|
|
8434
|
-
"application/json": components["schemas"]["Error"];
|
|
8435
|
-
};
|
|
8436
|
-
};
|
|
8437
|
-
/** @description Missing or invalid API key */
|
|
8438
|
-
401: {
|
|
8439
|
-
headers: {
|
|
8440
|
-
[name: string]: unknown;
|
|
8441
|
-
};
|
|
8442
|
-
content: {
|
|
8443
|
-
"application/json": components["schemas"]["Error"];
|
|
8444
|
-
};
|
|
8445
|
-
};
|
|
8446
|
-
/** @description Missing required scope */
|
|
8447
|
-
403: {
|
|
8448
|
-
headers: {
|
|
8449
|
-
[name: string]: unknown;
|
|
8450
|
-
};
|
|
8451
|
-
content: {
|
|
8452
|
-
"application/json": components["schemas"]["Error"];
|
|
8453
|
-
};
|
|
8454
|
-
};
|
|
8455
|
-
/** @description Trademark not found */
|
|
8456
|
-
404: {
|
|
8457
|
-
headers: {
|
|
8458
|
-
[name: string]: unknown;
|
|
8459
|
-
};
|
|
8460
|
-
content: {
|
|
8461
|
-
"application/json": components["schemas"]["Error"];
|
|
8395
|
+
*/
|
|
8396
|
+
international_registrations?: "grouped" | "expanded";
|
|
8397
|
+
/**
|
|
8398
|
+
* @description Optional row projections. `full_goods_services` returns full classifications[].goods_services_text; default rows truncate long G&S text to about 280 characters.
|
|
8399
|
+
* @example [
|
|
8400
|
+
* "full_goods_services"
|
|
8401
|
+
* ]
|
|
8402
|
+
*/
|
|
8403
|
+
include?: "full_goods_services"[];
|
|
8404
|
+
/**
|
|
8405
|
+
* @description Sparse top-level field projection. id and object are always retained.
|
|
8406
|
+
* @example [
|
|
8407
|
+
* "mark_text",
|
|
8408
|
+
* "status",
|
|
8409
|
+
* "nice_classes",
|
|
8410
|
+
* "owners"
|
|
8411
|
+
* ]
|
|
8412
|
+
*/
|
|
8413
|
+
fields?: string[];
|
|
8462
8414
|
};
|
|
8463
8415
|
};
|
|
8464
8416
|
};
|
|
8465
|
-
};
|
|
8466
|
-
listTrademarkChanges: {
|
|
8467
|
-
parameters: {
|
|
8468
|
-
query?: {
|
|
8469
|
-
changed_field?: string;
|
|
8470
|
-
sort?: "-changed_at" | "changed_at";
|
|
8471
|
-
limit?: number;
|
|
8472
|
-
cursor?: string;
|
|
8473
|
-
};
|
|
8474
|
-
header?: never;
|
|
8475
|
-
path: {
|
|
8476
|
-
id: string;
|
|
8477
|
-
};
|
|
8478
|
-
cookie?: never;
|
|
8479
|
-
};
|
|
8480
|
-
requestBody?: never;
|
|
8481
8417
|
responses: {
|
|
8482
|
-
/** @description
|
|
8418
|
+
/** @description Search results */
|
|
8483
8419
|
200: {
|
|
8484
8420
|
headers: {
|
|
8485
8421
|
[name: string]: unknown;
|
|
8486
8422
|
};
|
|
8487
8423
|
content: {
|
|
8488
|
-
"application/json": components["schemas"]["
|
|
8424
|
+
"application/json": components["schemas"]["SearchResponseV2"];
|
|
8489
8425
|
};
|
|
8490
8426
|
};
|
|
8491
|
-
/** @description
|
|
8427
|
+
/** @description Validation error */
|
|
8492
8428
|
400: {
|
|
8493
8429
|
headers: {
|
|
8494
8430
|
[name: string]: unknown;
|
|
@@ -8515,8 +8451,8 @@ export interface operations {
|
|
|
8515
8451
|
"application/json": components["schemas"]["Error"];
|
|
8516
8452
|
};
|
|
8517
8453
|
};
|
|
8518
|
-
/** @description
|
|
8519
|
-
|
|
8454
|
+
/** @description Entity too large (member cap exceeded) */
|
|
8455
|
+
422: {
|
|
8520
8456
|
headers: {
|
|
8521
8457
|
[name: string]: unknown;
|
|
8522
8458
|
};
|
|
@@ -8526,10 +8462,13 @@ export interface operations {
|
|
|
8526
8462
|
};
|
|
8527
8463
|
};
|
|
8528
8464
|
};
|
|
8529
|
-
|
|
8465
|
+
listTrademarkEvents: {
|
|
8530
8466
|
parameters: {
|
|
8531
8467
|
query?: {
|
|
8532
|
-
|
|
8468
|
+
event_type?: string[] | null;
|
|
8469
|
+
event_scope?: string;
|
|
8470
|
+
event_date_gte?: string;
|
|
8471
|
+
event_date_lt?: string;
|
|
8533
8472
|
limit?: number;
|
|
8534
8473
|
cursor?: string;
|
|
8535
8474
|
};
|
|
@@ -8541,71 +8480,13 @@ export interface operations {
|
|
|
8541
8480
|
};
|
|
8542
8481
|
requestBody?: never;
|
|
8543
8482
|
responses: {
|
|
8544
|
-
/** @description Trademark
|
|
8545
|
-
200: {
|
|
8546
|
-
headers: {
|
|
8547
|
-
[name: string]: unknown;
|
|
8548
|
-
};
|
|
8549
|
-
content: {
|
|
8550
|
-
"application/json": components["schemas"]["TrademarkRelatedResponse"];
|
|
8551
|
-
};
|
|
8552
|
-
};
|
|
8553
|
-
/** @description Invalid ID */
|
|
8554
|
-
400: {
|
|
8555
|
-
headers: {
|
|
8556
|
-
[name: string]: unknown;
|
|
8557
|
-
};
|
|
8558
|
-
content: {
|
|
8559
|
-
"application/json": components["schemas"]["Error"];
|
|
8560
|
-
};
|
|
8561
|
-
};
|
|
8562
|
-
/** @description Missing or invalid API key */
|
|
8563
|
-
401: {
|
|
8564
|
-
headers: {
|
|
8565
|
-
[name: string]: unknown;
|
|
8566
|
-
};
|
|
8567
|
-
content: {
|
|
8568
|
-
"application/json": components["schemas"]["Error"];
|
|
8569
|
-
};
|
|
8570
|
-
};
|
|
8571
|
-
/** @description Missing required scope */
|
|
8572
|
-
403: {
|
|
8573
|
-
headers: {
|
|
8574
|
-
[name: string]: unknown;
|
|
8575
|
-
};
|
|
8576
|
-
content: {
|
|
8577
|
-
"application/json": components["schemas"]["Error"];
|
|
8578
|
-
};
|
|
8579
|
-
};
|
|
8580
|
-
/** @description Trademark not found */
|
|
8581
|
-
404: {
|
|
8582
|
-
headers: {
|
|
8583
|
-
[name: string]: unknown;
|
|
8584
|
-
};
|
|
8585
|
-
content: {
|
|
8586
|
-
"application/json": components["schemas"]["Error"];
|
|
8587
|
-
};
|
|
8588
|
-
};
|
|
8589
|
-
};
|
|
8590
|
-
};
|
|
8591
|
-
getTrademarkSource: {
|
|
8592
|
-
parameters: {
|
|
8593
|
-
query?: never;
|
|
8594
|
-
header?: never;
|
|
8595
|
-
path: {
|
|
8596
|
-
id: string;
|
|
8597
|
-
};
|
|
8598
|
-
cookie?: never;
|
|
8599
|
-
};
|
|
8600
|
-
requestBody?: never;
|
|
8601
|
-
responses: {
|
|
8602
|
-
/** @description Source provenance (synthesized from trademark-record metadata when no raw-record version exists — reduced field set) */
|
|
8483
|
+
/** @description Trademark prosecution events */
|
|
8603
8484
|
200: {
|
|
8604
8485
|
headers: {
|
|
8605
8486
|
[name: string]: unknown;
|
|
8606
8487
|
};
|
|
8607
8488
|
content: {
|
|
8608
|
-
"application/json": components["schemas"]["
|
|
8489
|
+
"application/json": components["schemas"]["TrademarkEventsResponse"];
|
|
8609
8490
|
};
|
|
8610
8491
|
};
|
|
8611
8492
|
/** @description Invalid ID */
|
|
@@ -8836,116 +8717,6 @@ export interface operations {
|
|
|
8836
8717
|
};
|
|
8837
8718
|
};
|
|
8838
8719
|
};
|
|
8839
|
-
listTrademarkCoverage: {
|
|
8840
|
-
parameters: {
|
|
8841
|
-
query?: {
|
|
8842
|
-
protection_status?: string;
|
|
8843
|
-
limit?: number;
|
|
8844
|
-
cursor?: string;
|
|
8845
|
-
};
|
|
8846
|
-
header?: never;
|
|
8847
|
-
path: {
|
|
8848
|
-
id: string;
|
|
8849
|
-
};
|
|
8850
|
-
cookie?: never;
|
|
8851
|
-
};
|
|
8852
|
-
requestBody?: never;
|
|
8853
|
-
responses: {
|
|
8854
|
-
/** @description Trademark coverage territories */
|
|
8855
|
-
200: {
|
|
8856
|
-
headers: {
|
|
8857
|
-
[name: string]: unknown;
|
|
8858
|
-
};
|
|
8859
|
-
content: {
|
|
8860
|
-
"application/json": components["schemas"]["TrademarkCoverageResponse"];
|
|
8861
|
-
};
|
|
8862
|
-
};
|
|
8863
|
-
/** @description Invalid ID */
|
|
8864
|
-
400: {
|
|
8865
|
-
headers: {
|
|
8866
|
-
[name: string]: unknown;
|
|
8867
|
-
};
|
|
8868
|
-
content: {
|
|
8869
|
-
"application/json": components["schemas"]["Error"];
|
|
8870
|
-
};
|
|
8871
|
-
};
|
|
8872
|
-
/** @description Missing or invalid API key */
|
|
8873
|
-
401: {
|
|
8874
|
-
headers: {
|
|
8875
|
-
[name: string]: unknown;
|
|
8876
|
-
};
|
|
8877
|
-
content: {
|
|
8878
|
-
"application/json": components["schemas"]["Error"];
|
|
8879
|
-
};
|
|
8880
|
-
};
|
|
8881
|
-
/** @description Missing required scope */
|
|
8882
|
-
403: {
|
|
8883
|
-
headers: {
|
|
8884
|
-
[name: string]: unknown;
|
|
8885
|
-
};
|
|
8886
|
-
content: {
|
|
8887
|
-
"application/json": components["schemas"]["Error"];
|
|
8888
|
-
};
|
|
8889
|
-
};
|
|
8890
|
-
/** @description Trademark not found */
|
|
8891
|
-
404: {
|
|
8892
|
-
headers: {
|
|
8893
|
-
[name: string]: unknown;
|
|
8894
|
-
};
|
|
8895
|
-
content: {
|
|
8896
|
-
"application/json": components["schemas"]["Error"];
|
|
8897
|
-
};
|
|
8898
|
-
};
|
|
8899
|
-
};
|
|
8900
|
-
};
|
|
8901
|
-
getTrademarkMedia: {
|
|
8902
|
-
parameters: {
|
|
8903
|
-
query?: never;
|
|
8904
|
-
header?: never;
|
|
8905
|
-
path: {
|
|
8906
|
-
id: string;
|
|
8907
|
-
mediaId: string;
|
|
8908
|
-
};
|
|
8909
|
-
cookie?: never;
|
|
8910
|
-
};
|
|
8911
|
-
requestBody?: never;
|
|
8912
|
-
responses: {
|
|
8913
|
-
/** @description Image content */
|
|
8914
|
-
200: {
|
|
8915
|
-
headers: {
|
|
8916
|
-
[name: string]: unknown;
|
|
8917
|
-
};
|
|
8918
|
-
content?: never;
|
|
8919
|
-
};
|
|
8920
|
-
/** @description Invalid ID */
|
|
8921
|
-
400: {
|
|
8922
|
-
headers: {
|
|
8923
|
-
[name: string]: unknown;
|
|
8924
|
-
};
|
|
8925
|
-
content: {
|
|
8926
|
-
"application/json": components["schemas"]["Error"];
|
|
8927
|
-
};
|
|
8928
|
-
};
|
|
8929
|
-
/** @description Media not found */
|
|
8930
|
-
404: {
|
|
8931
|
-
headers: {
|
|
8932
|
-
[name: string]: unknown;
|
|
8933
|
-
};
|
|
8934
|
-
content: {
|
|
8935
|
-
"application/json": components["schemas"]["Error"];
|
|
8936
|
-
};
|
|
8937
|
-
};
|
|
8938
|
-
/** @description Upstream image unavailable */
|
|
8939
|
-
502: {
|
|
8940
|
-
headers: {
|
|
8941
|
-
[name: string]: unknown;
|
|
8942
|
-
};
|
|
8943
|
-
content: {
|
|
8944
|
-
"application/json": components["schemas"]["Error"];
|
|
8945
|
-
};
|
|
8946
|
-
};
|
|
8947
|
-
};
|
|
8948
|
-
};
|
|
8949
8720
|
retrieveOwnerAnalytics: {
|
|
8950
8721
|
parameters: {
|
|
8951
8722
|
query?: never;
|
|
@@ -12554,6 +12325,11 @@ export interface operations {
|
|
|
12554
12325
|
* @description Redirect on cancel.
|
|
12555
12326
|
*/
|
|
12556
12327
|
cancel_url?: string;
|
|
12328
|
+
/**
|
|
12329
|
+
* Format: email
|
|
12330
|
+
* @description Billing email for the Stripe customer (receipts, invoices, failed-payment mail). The dashboard BFF passes the signed-in user's address. Write-once seed: ignored when the organization already has a billing email (later changes flow from the Stripe customer via the customer.updated webhook).
|
|
12331
|
+
*/
|
|
12332
|
+
billing_email?: string;
|
|
12557
12333
|
};
|
|
12558
12334
|
};
|
|
12559
12335
|
};
|
|
@@ -12603,6 +12379,24 @@ export interface operations {
|
|
|
12603
12379
|
"application/json": components["schemas"]["Error"];
|
|
12604
12380
|
};
|
|
12605
12381
|
};
|
|
12382
|
+
/** @description Organization already has an active subscription */
|
|
12383
|
+
409: {
|
|
12384
|
+
headers: {
|
|
12385
|
+
[name: string]: unknown;
|
|
12386
|
+
};
|
|
12387
|
+
content: {
|
|
12388
|
+
"application/json": components["schemas"]["Error"];
|
|
12389
|
+
};
|
|
12390
|
+
};
|
|
12391
|
+
/** @description Billing is not configured on this deployment (Stripe key absent) */
|
|
12392
|
+
503: {
|
|
12393
|
+
headers: {
|
|
12394
|
+
[name: string]: unknown;
|
|
12395
|
+
};
|
|
12396
|
+
content: {
|
|
12397
|
+
"application/json": components["schemas"]["Error"];
|
|
12398
|
+
};
|
|
12399
|
+
};
|
|
12606
12400
|
};
|
|
12607
12401
|
};
|
|
12608
12402
|
createBillingPortal: {
|
|
@@ -12623,6 +12417,11 @@ export interface operations {
|
|
|
12623
12417
|
* @description Return URL after the portal.
|
|
12624
12418
|
*/
|
|
12625
12419
|
return_url?: string;
|
|
12420
|
+
/**
|
|
12421
|
+
* Format: email
|
|
12422
|
+
* @description Billing email for the Stripe customer (receipts, invoices, failed-payment mail). The dashboard BFF passes the signed-in user's address. Write-once seed: ignored when the organization already has a billing email (later changes flow from the Stripe customer via the customer.updated webhook).
|
|
12423
|
+
*/
|
|
12424
|
+
billing_email?: string;
|
|
12626
12425
|
};
|
|
12627
12426
|
};
|
|
12628
12427
|
};
|
|
@@ -12636,6 +12435,15 @@ export interface operations {
|
|
|
12636
12435
|
"application/json": components["schemas"]["StripeBillingPortalResponse"];
|
|
12637
12436
|
};
|
|
12638
12437
|
};
|
|
12438
|
+
/** @description Validation error */
|
|
12439
|
+
400: {
|
|
12440
|
+
headers: {
|
|
12441
|
+
[name: string]: unknown;
|
|
12442
|
+
};
|
|
12443
|
+
content: {
|
|
12444
|
+
"application/json": components["schemas"]["Error"];
|
|
12445
|
+
};
|
|
12446
|
+
};
|
|
12639
12447
|
/** @description Missing or invalid API key */
|
|
12640
12448
|
401: {
|
|
12641
12449
|
headers: {
|
|
@@ -12663,6 +12471,15 @@ export interface operations {
|
|
|
12663
12471
|
"application/json": components["schemas"]["Error"];
|
|
12664
12472
|
};
|
|
12665
12473
|
};
|
|
12474
|
+
/** @description Billing is not configured on this deployment (Stripe key absent) */
|
|
12475
|
+
503: {
|
|
12476
|
+
headers: {
|
|
12477
|
+
[name: string]: unknown;
|
|
12478
|
+
};
|
|
12479
|
+
content: {
|
|
12480
|
+
"application/json": components["schemas"]["Error"];
|
|
12481
|
+
};
|
|
12482
|
+
};
|
|
12666
12483
|
};
|
|
12667
12484
|
};
|
|
12668
12485
|
createCreditPackCheckout: {
|
|
@@ -12693,6 +12510,11 @@ export interface operations {
|
|
|
12693
12510
|
* @description Redirect on cancel.
|
|
12694
12511
|
*/
|
|
12695
12512
|
cancel_url?: string;
|
|
12513
|
+
/**
|
|
12514
|
+
* Format: email
|
|
12515
|
+
* @description Billing email for the Stripe customer (receipts, invoices, failed-payment mail). The dashboard BFF passes the signed-in user's address. Write-once seed: ignored when the organization already has a billing email (later changes flow from the Stripe customer via the customer.updated webhook).
|
|
12516
|
+
*/
|
|
12517
|
+
billing_email?: string;
|
|
12696
12518
|
};
|
|
12697
12519
|
};
|
|
12698
12520
|
};
|
|
@@ -12742,6 +12564,15 @@ export interface operations {
|
|
|
12742
12564
|
"application/json": components["schemas"]["Error"];
|
|
12743
12565
|
};
|
|
12744
12566
|
};
|
|
12567
|
+
/** @description Billing is not configured on this deployment (Stripe key absent) */
|
|
12568
|
+
503: {
|
|
12569
|
+
headers: {
|
|
12570
|
+
[name: string]: unknown;
|
|
12571
|
+
};
|
|
12572
|
+
content: {
|
|
12573
|
+
"application/json": components["schemas"]["Error"];
|
|
12574
|
+
};
|
|
12575
|
+
};
|
|
12745
12576
|
};
|
|
12746
12577
|
};
|
|
12747
12578
|
getAutoTopUpConfig: {
|
|
@@ -12829,7 +12660,7 @@ export interface operations {
|
|
|
12829
12660
|
"application/json": components["schemas"]["Error"];
|
|
12830
12661
|
};
|
|
12831
12662
|
};
|
|
12832
|
-
/** @description Missing scope
|
|
12663
|
+
/** @description Missing organization:manage scope */
|
|
12833
12664
|
403: {
|
|
12834
12665
|
headers: {
|
|
12835
12666
|
[name: string]: unknown;
|
|
@@ -12838,6 +12669,15 @@ export interface operations {
|
|
|
12838
12669
|
"application/json": components["schemas"]["Error"];
|
|
12839
12670
|
};
|
|
12840
12671
|
};
|
|
12672
|
+
/** @description Auto-top-up cannot be enabled: all Signa payments run through Stripe Managed Payments, which does not support automatic off-session charges. */
|
|
12673
|
+
501: {
|
|
12674
|
+
headers: {
|
|
12675
|
+
[name: string]: unknown;
|
|
12676
|
+
};
|
|
12677
|
+
content: {
|
|
12678
|
+
"application/json": components["schemas"]["Error"];
|
|
12679
|
+
};
|
|
12680
|
+
};
|
|
12841
12681
|
};
|
|
12842
12682
|
};
|
|
12843
12683
|
getNotificationPreferences: {
|