@outlit/cli 3.2.3 → 3.2.5
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/dist/cli.js +2087 -517
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -104,7 +104,7 @@ var package_default;
|
|
|
104
104
|
var init_package = __esm(() => {
|
|
105
105
|
package_default = {
|
|
106
106
|
name: "@outlit/cli",
|
|
107
|
-
version: "3.2.
|
|
107
|
+
version: "3.2.5",
|
|
108
108
|
description: "CLI for querying Outlit customer context and installing agent skills",
|
|
109
109
|
license: "Apache-2.0",
|
|
110
110
|
repository: {
|
|
@@ -147,7 +147,7 @@ var init_package = __esm(() => {
|
|
|
147
147
|
},
|
|
148
148
|
dependencies: {
|
|
149
149
|
"@clack/prompts": "^1.0.1",
|
|
150
|
-
"@outlit/tools": "^2.2.
|
|
150
|
+
"@outlit/tools": "^2.2.4",
|
|
151
151
|
citty: "^0.2.1"
|
|
152
152
|
},
|
|
153
153
|
devDependencies: {
|
|
@@ -1715,7 +1715,7 @@ function matchesNumberBounds(value, schema, integer) {
|
|
|
1715
1715
|
return false;
|
|
1716
1716
|
return true;
|
|
1717
1717
|
}
|
|
1718
|
-
var publicToolNames, publicToolContracts, consumerToolPolicies, toolGatewayTransport, apiKeyValidationTransport, apiKeyValidationSuccessSchema, apiKeyValidationFailureSchema, toolGatewayErrorSchema, customerBillingStatuses, customerFactStatuses, customerFactTypes, unsupportedCustomerFactTypes, customerFactCategories, customerIncludeSections, customerSourceTypes, customerSourceTypeAliasMap, customerSourceTypeAliases, customerSourceTypeInputs, customerTimeframes, timelineChannels, timelineTimeframes, userJourneyStages, workspaceUserListOrderFields, publicToolNameSet, customerSourceTypeSet, iso8601UtcDateTimeRegex, DEFAULT_OUTLIT_API_URL = "https://app.outlit.ai", OutlitToolsApiError, defaultToolNames, analyticalToolNames, piToolNames, cliToolNames, defaultToolNameSet, sqlToolNames;
|
|
1718
|
+
var publicToolNames, publicToolContracts, consumerToolPolicies, toolGatewayTransport, apiKeyValidationTransport, apiKeyValidationSuccessSchema, apiKeyValidationFailureSchema, apiKeyContractHeader = "Outlit-Api-Key-Contract", apiKeyValidationSuccessSchemaV2, toolGatewayErrorSchema, customerBillingStatuses, customerFactStatuses, customerFactTypes, unsupportedCustomerFactTypes, customerFactCategories, customerIncludeSections, customerSourceTypes, customerSourceTypeAliasMap, customerSourceTypeAliases, customerSourceTypeInputs, customerTimeframes, timelineChannels, timelineTimeframes, userJourneyStages, workspaceUserListOrderFields, publicToolNameSet, customerSourceTypeSet, iso8601UtcDateTimeRegex, DEFAULT_OUTLIT_API_URL = "https://app.outlit.ai", OutlitToolsApiError, defaultToolNames, analyticalToolNames, piToolNames, cliToolNames, defaultToolNameSet, sqlToolNames;
|
|
1719
1719
|
var init_dist4 = __esm(() => {
|
|
1720
1720
|
publicToolNames = [
|
|
1721
1721
|
"outlit_list_customers",
|
|
@@ -1764,7 +1764,11 @@ var init_dist4 = __esm(() => {
|
|
|
1764
1764
|
"outlit_list_identity_merge_suggestions",
|
|
1765
1765
|
"outlit_reject_identity_merge_suggestion",
|
|
1766
1766
|
"outlit_merge_customers",
|
|
1767
|
-
"outlit_get_customer_merge_status"
|
|
1767
|
+
"outlit_get_customer_merge_status",
|
|
1768
|
+
"outlit_list_scoped_repairs",
|
|
1769
|
+
"outlit_preview_scoped_repair",
|
|
1770
|
+
"outlit_execute_scoped_repair",
|
|
1771
|
+
"outlit_verify_scoped_repair"
|
|
1768
1772
|
];
|
|
1769
1773
|
publicToolContracts = {
|
|
1770
1774
|
outlit_list_customers: {
|
|
@@ -1773,7 +1777,7 @@ var init_dist4 = __esm(() => {
|
|
|
1773
1777
|
commandVersion: 1,
|
|
1774
1778
|
ownerDomain: "customers",
|
|
1775
1779
|
title: "List Customers",
|
|
1776
|
-
description: "Browse and filter customers. Use this to find customers by billing status, activity recency, revenue, or name. Returns a paginated list with summary info (MRR, last activity, status).",
|
|
1780
|
+
description: "Browse and filter customers. Use this to find customers by billing status, activity recency, revenue, or name. Returns a paginated list with summary info (MRR, last activity, status). currentMrr is in the billing provider's units for the customer's currency, which the result doesn't name. For USD, EUR, GBP and CAD this is cents: divide by 100 (e.g. 1234500 is $12,345 MRR, USD). Other currencies follow the provider's amount rules. ARR is 12 × currentMrr in the same units.",
|
|
1777
1781
|
annotations: {
|
|
1778
1782
|
readOnlyHint: true,
|
|
1779
1783
|
destructiveHint: false
|
|
@@ -1820,12 +1824,12 @@ var init_dist4 = __esm(() => {
|
|
|
1820
1824
|
]
|
|
1821
1825
|
},
|
|
1822
1826
|
mrrAbove: {
|
|
1823
|
-
description: "Minimum MRR in
|
|
1827
|
+
description: "Minimum MRR, in currentMrr's units (10000 is $100 for a customer billed in USD)",
|
|
1824
1828
|
type: "number",
|
|
1825
1829
|
minimum: 0
|
|
1826
1830
|
},
|
|
1827
1831
|
mrrBelow: {
|
|
1828
|
-
description: "Maximum MRR in
|
|
1832
|
+
description: "Maximum MRR, in currentMrr's units",
|
|
1829
1833
|
type: "number",
|
|
1830
1834
|
minimum: 0
|
|
1831
1835
|
},
|
|
@@ -1988,7 +1992,8 @@ var init_dist4 = __esm(() => {
|
|
|
1988
1992
|
{
|
|
1989
1993
|
type: "null"
|
|
1990
1994
|
}
|
|
1991
|
-
]
|
|
1995
|
+
],
|
|
1996
|
+
description: "Monthly recurring revenue as an integer amount in the billing provider's units for the customer's currency, which this result doesn't name. For USD, EUR, GBP and CAD this is cents: divide by 100 (e.g. 1234500 is $12,345, USD). Other currencies follow the provider's amount rules (Stripe's currency docs), so don't assume a divisor for them. ARR is 12 × this value in the same units. Null unless mrrCalculationStatus is calculated."
|
|
1992
1997
|
},
|
|
1993
1998
|
mrrCalculationStatus: {
|
|
1994
1999
|
type: "string",
|
|
@@ -2573,7 +2578,7 @@ var init_dist4 = __esm(() => {
|
|
|
2573
2578
|
commandVersion: 1,
|
|
2574
2579
|
ownerDomain: "customers",
|
|
2575
2580
|
title: "Get Customer",
|
|
2576
|
-
description: "Get full details for a single customer. Optionally include users, revenue, recent activity, engagement metrics, or company enrichment.",
|
|
2581
|
+
description: "Get full details for a single customer. Optionally include users, revenue, recent activity, engagement metrics, or company enrichment. Revenue amounts (currentMrr, lifetimeRevenue) are in the billing provider's units for the customer's currency, which the result doesn't name. For USD, EUR, GBP and CAD these are cents: divide by 100 (e.g. 1234500 is $12,345, USD). Other currencies follow the provider's amount rules. ARR is 12 × currentMrr in the same units.",
|
|
2577
2582
|
annotations: {
|
|
2578
2583
|
readOnlyHint: true,
|
|
2579
2584
|
destructiveHint: false
|
|
@@ -2843,7 +2848,8 @@ var init_dist4 = __esm(() => {
|
|
|
2843
2848
|
{
|
|
2844
2849
|
type: "null"
|
|
2845
2850
|
}
|
|
2846
|
-
]
|
|
2851
|
+
],
|
|
2852
|
+
description: "Monthly recurring revenue as an integer amount in the billing provider's units for the customer's currency, which this result doesn't name. For USD, EUR, GBP and CAD this is cents: divide by 100 (e.g. 1234500 is $12,345, USD). Other currencies follow the provider's amount rules (Stripe's currency docs), so don't assume a divisor for them. ARR is 12 × this value in the same units. Null unless mrrCalculationStatus is calculated."
|
|
2847
2853
|
},
|
|
2848
2854
|
mrrCalculationStatus: {
|
|
2849
2855
|
type: "string",
|
|
@@ -2854,7 +2860,8 @@ var init_dist4 = __esm(() => {
|
|
|
2854
2860
|
]
|
|
2855
2861
|
},
|
|
2856
2862
|
lifetimeRevenue: {
|
|
2857
|
-
type: "number"
|
|
2863
|
+
type: "number",
|
|
2864
|
+
description: "Lifetime revenue in the billing provider's units for the currency it was billed in, like currentMrr: cents for USD, EUR, GBP and CAD, so divide by 100. Other currencies follow the provider's amount rules, so don't assume a divisor for them."
|
|
2858
2865
|
},
|
|
2859
2866
|
activeSubscriptions: {
|
|
2860
2867
|
type: "integer",
|
|
@@ -6338,6 +6345,48 @@ CHAMPION_RISK: Historical broad relationship-risk fact retained for existing row
|
|
|
6338
6345
|
score: {
|
|
6339
6346
|
type: "number"
|
|
6340
6347
|
},
|
|
6348
|
+
customer: {
|
|
6349
|
+
description: "The customer this result belongs to. Null when it can't be attributed to exactly one customer the caller can read.",
|
|
6350
|
+
anyOf: [
|
|
6351
|
+
{
|
|
6352
|
+
type: "object",
|
|
6353
|
+
properties: {
|
|
6354
|
+
id: {
|
|
6355
|
+
type: "string"
|
|
6356
|
+
},
|
|
6357
|
+
name: {
|
|
6358
|
+
anyOf: [
|
|
6359
|
+
{
|
|
6360
|
+
type: "string"
|
|
6361
|
+
},
|
|
6362
|
+
{
|
|
6363
|
+
type: "null"
|
|
6364
|
+
}
|
|
6365
|
+
]
|
|
6366
|
+
},
|
|
6367
|
+
domain: {
|
|
6368
|
+
anyOf: [
|
|
6369
|
+
{
|
|
6370
|
+
type: "string"
|
|
6371
|
+
},
|
|
6372
|
+
{
|
|
6373
|
+
type: "null"
|
|
6374
|
+
}
|
|
6375
|
+
]
|
|
6376
|
+
}
|
|
6377
|
+
},
|
|
6378
|
+
required: [
|
|
6379
|
+
"id",
|
|
6380
|
+
"name",
|
|
6381
|
+
"domain"
|
|
6382
|
+
],
|
|
6383
|
+
additionalProperties: false
|
|
6384
|
+
},
|
|
6385
|
+
{
|
|
6386
|
+
type: "null"
|
|
6387
|
+
}
|
|
6388
|
+
]
|
|
6389
|
+
},
|
|
6341
6390
|
matchCount: {
|
|
6342
6391
|
type: "integer",
|
|
6343
6392
|
minimum: 0,
|
|
@@ -6868,6 +6917,48 @@ CHAMPION_RISK: Historical broad relationship-risk fact retained for existing row
|
|
|
6868
6917
|
sourceId: {
|
|
6869
6918
|
type: "string"
|
|
6870
6919
|
},
|
|
6920
|
+
customer: {
|
|
6921
|
+
description: "The customer this result belongs to. Null when it can't be attributed to exactly one customer the caller can read.",
|
|
6922
|
+
anyOf: [
|
|
6923
|
+
{
|
|
6924
|
+
type: "object",
|
|
6925
|
+
properties: {
|
|
6926
|
+
id: {
|
|
6927
|
+
type: "string"
|
|
6928
|
+
},
|
|
6929
|
+
name: {
|
|
6930
|
+
anyOf: [
|
|
6931
|
+
{
|
|
6932
|
+
type: "string"
|
|
6933
|
+
},
|
|
6934
|
+
{
|
|
6935
|
+
type: "null"
|
|
6936
|
+
}
|
|
6937
|
+
]
|
|
6938
|
+
},
|
|
6939
|
+
domain: {
|
|
6940
|
+
anyOf: [
|
|
6941
|
+
{
|
|
6942
|
+
type: "string"
|
|
6943
|
+
},
|
|
6944
|
+
{
|
|
6945
|
+
type: "null"
|
|
6946
|
+
}
|
|
6947
|
+
]
|
|
6948
|
+
}
|
|
6949
|
+
},
|
|
6950
|
+
required: [
|
|
6951
|
+
"id",
|
|
6952
|
+
"name",
|
|
6953
|
+
"domain"
|
|
6954
|
+
],
|
|
6955
|
+
additionalProperties: false
|
|
6956
|
+
},
|
|
6957
|
+
{
|
|
6958
|
+
type: "null"
|
|
6959
|
+
}
|
|
6960
|
+
]
|
|
6961
|
+
},
|
|
6871
6962
|
occurredAt: {
|
|
6872
6963
|
anyOf: [
|
|
6873
6964
|
{
|
|
@@ -14223,7 +14314,8 @@ Returns column definitions and example queries for each view.`,
|
|
|
14223
14314
|
{
|
|
14224
14315
|
type: "null"
|
|
14225
14316
|
}
|
|
14226
|
-
]
|
|
14317
|
+
],
|
|
14318
|
+
description: "Annual recurring revenue (12 × billing MRR) in the billing provider's units for the currency field. For USD, EUR, GBP and CAD this is cents: divide by 100 (e.g. 1234500 is $12,345, USD). For other currencies, use the provider's amount rules for that currency (Stripe's currency docs) rather than assuming a divisor."
|
|
14227
14319
|
},
|
|
14228
14320
|
currency: {
|
|
14229
14321
|
anyOf: [
|
|
@@ -14523,7 +14615,8 @@ Returns column definitions and example queries for each view.`,
|
|
|
14523
14615
|
{
|
|
14524
14616
|
type: "null"
|
|
14525
14617
|
}
|
|
14526
|
-
]
|
|
14618
|
+
],
|
|
14619
|
+
description: "Annual recurring revenue (12 × billing MRR) in the billing provider's units for the currency field. For USD, EUR, GBP and CAD this is cents: divide by 100 (e.g. 1234500 is $12,345, USD). For other currencies, use the provider's amount rules for that currency (Stripe's currency docs) rather than assuming a divisor."
|
|
14527
14620
|
},
|
|
14528
14621
|
currency: {
|
|
14529
14622
|
anyOf: [
|
|
@@ -15135,6 +15228,16 @@ Returns column definitions and example queries for each view.`,
|
|
|
15135
15228
|
}
|
|
15136
15229
|
]
|
|
15137
15230
|
},
|
|
15231
|
+
billingStatus: {
|
|
15232
|
+
anyOf: [
|
|
15233
|
+
{
|
|
15234
|
+
type: "string"
|
|
15235
|
+
},
|
|
15236
|
+
{
|
|
15237
|
+
type: "null"
|
|
15238
|
+
}
|
|
15239
|
+
]
|
|
15240
|
+
},
|
|
15138
15241
|
identifierCount: {
|
|
15139
15242
|
type: "integer",
|
|
15140
15243
|
minimum: 0,
|
|
@@ -15205,6 +15308,16 @@ Returns column definitions and example queries for each view.`,
|
|
|
15205
15308
|
}
|
|
15206
15309
|
]
|
|
15207
15310
|
},
|
|
15311
|
+
billingStatus: {
|
|
15312
|
+
anyOf: [
|
|
15313
|
+
{
|
|
15314
|
+
type: "string"
|
|
15315
|
+
},
|
|
15316
|
+
{
|
|
15317
|
+
type: "null"
|
|
15318
|
+
}
|
|
15319
|
+
]
|
|
15320
|
+
},
|
|
15208
15321
|
identifierCount: {
|
|
15209
15322
|
type: "integer",
|
|
15210
15323
|
minimum: 0,
|
|
@@ -15356,6 +15469,19 @@ Returns column definitions and example queries for each view.`,
|
|
|
15356
15469
|
type: "integer",
|
|
15357
15470
|
minimum: 0,
|
|
15358
15471
|
maximum: 9007199254740991
|
|
15472
|
+
},
|
|
15473
|
+
analyticsAvailable: {
|
|
15474
|
+
type: "boolean"
|
|
15475
|
+
},
|
|
15476
|
+
opportunities: {
|
|
15477
|
+
type: "integer",
|
|
15478
|
+
minimum: 0,
|
|
15479
|
+
maximum: 9007199254740991
|
|
15480
|
+
},
|
|
15481
|
+
revenueSnapshots: {
|
|
15482
|
+
type: "integer",
|
|
15483
|
+
minimum: 0,
|
|
15484
|
+
maximum: 9007199254740991
|
|
15359
15485
|
}
|
|
15360
15486
|
},
|
|
15361
15487
|
required: [
|
|
@@ -15373,321 +15499,1271 @@ Returns column definitions and example queries for each view.`,
|
|
|
15373
15499
|
],
|
|
15374
15500
|
additionalProperties: false
|
|
15375
15501
|
},
|
|
15376
|
-
|
|
15377
|
-
|
|
15378
|
-
|
|
15502
|
+
scope: {
|
|
15503
|
+
type: "object",
|
|
15504
|
+
properties: {
|
|
15505
|
+
survivor: {
|
|
15379
15506
|
type: "object",
|
|
15380
15507
|
properties: {
|
|
15381
|
-
|
|
15508
|
+
shape: {
|
|
15382
15509
|
type: "string",
|
|
15383
|
-
|
|
15384
|
-
|
|
15510
|
+
enum: [
|
|
15511
|
+
"provisional",
|
|
15512
|
+
"established",
|
|
15513
|
+
"unknown"
|
|
15514
|
+
]
|
|
15385
15515
|
},
|
|
15386
|
-
|
|
15516
|
+
billingStatus: {
|
|
15387
15517
|
anyOf: [
|
|
15388
15518
|
{
|
|
15389
|
-
type: "string"
|
|
15390
|
-
minLength: 1,
|
|
15391
|
-
maxLength: 191
|
|
15519
|
+
type: "string"
|
|
15392
15520
|
},
|
|
15393
15521
|
{
|
|
15394
15522
|
type: "null"
|
|
15395
15523
|
}
|
|
15396
|
-
]
|
|
15397
|
-
description: "Pass to outlit_get_customer_merge_status. Null when this job has no matching tracked operation."
|
|
15524
|
+
]
|
|
15398
15525
|
},
|
|
15399
|
-
|
|
15526
|
+
hasIndependentCrmIdentity: {
|
|
15527
|
+
type: "boolean"
|
|
15528
|
+
},
|
|
15529
|
+
hasIndependentStripeIdentity: {
|
|
15530
|
+
type: "boolean"
|
|
15531
|
+
}
|
|
15532
|
+
},
|
|
15533
|
+
required: [
|
|
15534
|
+
"shape",
|
|
15535
|
+
"billingStatus",
|
|
15536
|
+
"hasIndependentCrmIdentity",
|
|
15537
|
+
"hasIndependentStripeIdentity"
|
|
15538
|
+
],
|
|
15539
|
+
additionalProperties: false
|
|
15540
|
+
},
|
|
15541
|
+
duplicate: {
|
|
15542
|
+
type: "object",
|
|
15543
|
+
properties: {
|
|
15544
|
+
shape: {
|
|
15400
15545
|
type: "string",
|
|
15401
15546
|
enum: [
|
|
15402
|
-
"
|
|
15403
|
-
"
|
|
15404
|
-
"
|
|
15405
|
-
"FAILED"
|
|
15547
|
+
"provisional",
|
|
15548
|
+
"established",
|
|
15549
|
+
"unknown"
|
|
15406
15550
|
]
|
|
15407
15551
|
},
|
|
15408
|
-
|
|
15409
|
-
|
|
15410
|
-
|
|
15411
|
-
|
|
15552
|
+
billingStatus: {
|
|
15553
|
+
anyOf: [
|
|
15554
|
+
{
|
|
15555
|
+
type: "string"
|
|
15556
|
+
},
|
|
15557
|
+
{
|
|
15558
|
+
type: "null"
|
|
15559
|
+
}
|
|
15560
|
+
]
|
|
15412
15561
|
},
|
|
15413
|
-
|
|
15414
|
-
type: "
|
|
15415
|
-
|
|
15416
|
-
|
|
15562
|
+
hasIndependentCrmIdentity: {
|
|
15563
|
+
type: "boolean"
|
|
15564
|
+
},
|
|
15565
|
+
hasIndependentStripeIdentity: {
|
|
15566
|
+
type: "boolean"
|
|
15417
15567
|
}
|
|
15418
15568
|
},
|
|
15419
15569
|
required: [
|
|
15420
|
-
"
|
|
15421
|
-
"
|
|
15422
|
-
"
|
|
15423
|
-
"
|
|
15424
|
-
"updatedAt"
|
|
15570
|
+
"shape",
|
|
15571
|
+
"billingStatus",
|
|
15572
|
+
"hasIndependentCrmIdentity",
|
|
15573
|
+
"hasIndependentStripeIdentity"
|
|
15425
15574
|
],
|
|
15426
15575
|
additionalProperties: false
|
|
15427
15576
|
},
|
|
15428
|
-
{
|
|
15429
|
-
|
|
15430
|
-
|
|
15431
|
-
|
|
15432
|
-
|
|
15433
|
-
|
|
15434
|
-
|
|
15435
|
-
|
|
15436
|
-
|
|
15577
|
+
payingAccountsAffected: {
|
|
15578
|
+
anyOf: [
|
|
15579
|
+
{
|
|
15580
|
+
type: "integer",
|
|
15581
|
+
minimum: 0,
|
|
15582
|
+
maximum: 9007199254740991
|
|
15583
|
+
},
|
|
15584
|
+
{
|
|
15585
|
+
type: "null"
|
|
15586
|
+
}
|
|
15587
|
+
]
|
|
15588
|
+
},
|
|
15589
|
+
availability: {
|
|
15437
15590
|
type: "object",
|
|
15438
15591
|
properties: {
|
|
15439
|
-
|
|
15440
|
-
type: "
|
|
15441
|
-
format: "date-time",
|
|
15442
|
-
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15443
|
-
},
|
|
15444
|
-
expiresAt: {
|
|
15445
|
-
type: "string",
|
|
15446
|
-
format: "date-time",
|
|
15447
|
-
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15592
|
+
currentCounts: {
|
|
15593
|
+
type: "boolean"
|
|
15448
15594
|
},
|
|
15449
|
-
|
|
15595
|
+
analytics: {
|
|
15450
15596
|
type: "boolean"
|
|
15597
|
+
}
|
|
15598
|
+
},
|
|
15599
|
+
required: [
|
|
15600
|
+
"currentCounts",
|
|
15601
|
+
"analytics"
|
|
15602
|
+
],
|
|
15603
|
+
additionalProperties: false
|
|
15604
|
+
},
|
|
15605
|
+
moves: {
|
|
15606
|
+
type: "object",
|
|
15607
|
+
properties: {
|
|
15608
|
+
contacts: {
|
|
15609
|
+
type: "integer",
|
|
15610
|
+
minimum: 0,
|
|
15611
|
+
maximum: 9007199254740991
|
|
15451
15612
|
},
|
|
15452
|
-
|
|
15453
|
-
|
|
15454
|
-
|
|
15455
|
-
|
|
15456
|
-
|
|
15457
|
-
|
|
15458
|
-
incoming: {
|
|
15459
|
-
type: "object",
|
|
15460
|
-
properties: {
|
|
15461
|
-
id: {
|
|
15462
|
-
type: "string",
|
|
15463
|
-
minLength: 1,
|
|
15464
|
-
maxLength: 191
|
|
15465
|
-
},
|
|
15466
|
-
name: {
|
|
15467
|
-
type: "string",
|
|
15468
|
-
minLength: 1,
|
|
15469
|
-
maxLength: 500
|
|
15470
|
-
},
|
|
15471
|
-
domain: {
|
|
15472
|
-
anyOf: [
|
|
15473
|
-
{
|
|
15474
|
-
type: "string",
|
|
15475
|
-
minLength: 1,
|
|
15476
|
-
maxLength: 500
|
|
15477
|
-
},
|
|
15478
|
-
{
|
|
15479
|
-
type: "null"
|
|
15480
|
-
}
|
|
15481
|
-
]
|
|
15482
|
-
},
|
|
15483
|
-
type: {
|
|
15484
|
-
type: "string",
|
|
15485
|
-
enum: [
|
|
15486
|
-
"COMPANY",
|
|
15487
|
-
"INDIVIDUAL"
|
|
15488
|
-
]
|
|
15489
|
-
},
|
|
15490
|
-
status: {
|
|
15491
|
-
anyOf: [
|
|
15492
|
-
{
|
|
15493
|
-
type: "string",
|
|
15494
|
-
enum: [
|
|
15495
|
-
"PROVISIONAL",
|
|
15496
|
-
"ACTIVE",
|
|
15497
|
-
"CHURNED",
|
|
15498
|
-
"MERGED"
|
|
15499
|
-
]
|
|
15500
|
-
},
|
|
15501
|
-
{
|
|
15502
|
-
type: "null"
|
|
15503
|
-
}
|
|
15504
|
-
]
|
|
15505
|
-
},
|
|
15506
|
-
identifierCount: {
|
|
15507
|
-
type: "integer",
|
|
15508
|
-
minimum: 0,
|
|
15509
|
-
maximum: 9007199254740991
|
|
15510
|
-
},
|
|
15511
|
-
contactCount: {
|
|
15512
|
-
type: "integer",
|
|
15513
|
-
minimum: 0,
|
|
15514
|
-
maximum: 9007199254740991
|
|
15515
|
-
}
|
|
15516
|
-
},
|
|
15517
|
-
required: [
|
|
15518
|
-
"id",
|
|
15519
|
-
"name",
|
|
15520
|
-
"domain",
|
|
15521
|
-
"type",
|
|
15522
|
-
"status",
|
|
15523
|
-
"identifierCount",
|
|
15524
|
-
"contactCount"
|
|
15525
|
-
],
|
|
15526
|
-
additionalProperties: false
|
|
15527
|
-
},
|
|
15528
|
-
candidate: {
|
|
15529
|
-
type: "object",
|
|
15530
|
-
properties: {
|
|
15531
|
-
id: {
|
|
15532
|
-
type: "string",
|
|
15533
|
-
minLength: 1,
|
|
15534
|
-
maxLength: 191
|
|
15535
|
-
},
|
|
15536
|
-
name: {
|
|
15537
|
-
type: "string",
|
|
15538
|
-
minLength: 1,
|
|
15539
|
-
maxLength: 500
|
|
15540
|
-
},
|
|
15541
|
-
domain: {
|
|
15542
|
-
anyOf: [
|
|
15543
|
-
{
|
|
15544
|
-
type: "string",
|
|
15545
|
-
minLength: 1,
|
|
15546
|
-
maxLength: 500
|
|
15547
|
-
},
|
|
15548
|
-
{
|
|
15549
|
-
type: "null"
|
|
15550
|
-
}
|
|
15551
|
-
]
|
|
15552
|
-
},
|
|
15553
|
-
type: {
|
|
15554
|
-
type: "string",
|
|
15555
|
-
enum: [
|
|
15556
|
-
"COMPANY",
|
|
15557
|
-
"INDIVIDUAL"
|
|
15558
|
-
]
|
|
15559
|
-
},
|
|
15560
|
-
status: {
|
|
15561
|
-
anyOf: [
|
|
15562
|
-
{
|
|
15563
|
-
type: "string",
|
|
15564
|
-
enum: [
|
|
15565
|
-
"PROVISIONAL",
|
|
15566
|
-
"ACTIVE",
|
|
15567
|
-
"CHURNED",
|
|
15568
|
-
"MERGED"
|
|
15569
|
-
]
|
|
15570
|
-
},
|
|
15571
|
-
{
|
|
15572
|
-
type: "null"
|
|
15573
|
-
}
|
|
15574
|
-
]
|
|
15575
|
-
},
|
|
15576
|
-
identifierCount: {
|
|
15577
|
-
type: "integer",
|
|
15578
|
-
minimum: 0,
|
|
15579
|
-
maximum: 9007199254740991
|
|
15580
|
-
},
|
|
15581
|
-
contactCount: {
|
|
15582
|
-
type: "integer",
|
|
15583
|
-
minimum: 0,
|
|
15584
|
-
maximum: 9007199254740991
|
|
15585
|
-
}
|
|
15586
|
-
},
|
|
15587
|
-
required: [
|
|
15588
|
-
"id",
|
|
15589
|
-
"name",
|
|
15590
|
-
"domain",
|
|
15591
|
-
"type",
|
|
15592
|
-
"status",
|
|
15593
|
-
"identifierCount",
|
|
15594
|
-
"contactCount"
|
|
15595
|
-
],
|
|
15596
|
-
additionalProperties: false
|
|
15597
|
-
},
|
|
15598
|
-
pSameEntity: {
|
|
15599
|
-
type: "number",
|
|
15600
|
-
minimum: 0,
|
|
15601
|
-
maximum: 1
|
|
15602
|
-
},
|
|
15603
|
-
relation: {
|
|
15604
|
-
anyOf: [
|
|
15605
|
-
{
|
|
15606
|
-
type: "string",
|
|
15607
|
-
minLength: 1,
|
|
15608
|
-
maxLength: 100
|
|
15609
|
-
},
|
|
15610
|
-
{
|
|
15611
|
-
type: "null"
|
|
15612
|
-
}
|
|
15613
|
-
]
|
|
15614
|
-
},
|
|
15615
|
-
relationProbability: {
|
|
15616
|
-
anyOf: [
|
|
15617
|
-
{
|
|
15618
|
-
type: "number",
|
|
15619
|
-
minimum: 0,
|
|
15620
|
-
maximum: 1
|
|
15621
|
-
},
|
|
15622
|
-
{
|
|
15623
|
-
type: "null"
|
|
15624
|
-
}
|
|
15625
|
-
]
|
|
15626
|
-
}
|
|
15613
|
+
analyticsEvents: {
|
|
15614
|
+
anyOf: [
|
|
15615
|
+
{
|
|
15616
|
+
type: "integer",
|
|
15617
|
+
minimum: 0,
|
|
15618
|
+
maximum: 9007199254740991
|
|
15627
15619
|
},
|
|
15628
|
-
|
|
15629
|
-
"
|
|
15630
|
-
|
|
15631
|
-
|
|
15632
|
-
|
|
15633
|
-
|
|
15634
|
-
|
|
15635
|
-
|
|
15636
|
-
|
|
15620
|
+
{
|
|
15621
|
+
type: "null"
|
|
15622
|
+
}
|
|
15623
|
+
]
|
|
15624
|
+
},
|
|
15625
|
+
analyticsDimensions: {
|
|
15626
|
+
anyOf: [
|
|
15627
|
+
{
|
|
15628
|
+
type: "integer",
|
|
15629
|
+
minimum: 0,
|
|
15630
|
+
maximum: 9007199254740991
|
|
15631
|
+
},
|
|
15632
|
+
{
|
|
15633
|
+
type: "null"
|
|
15634
|
+
}
|
|
15635
|
+
]
|
|
15636
|
+
},
|
|
15637
|
+
billingEvents: {
|
|
15638
|
+
type: "integer",
|
|
15639
|
+
minimum: 0,
|
|
15640
|
+
maximum: 9007199254740991
|
|
15641
|
+
},
|
|
15642
|
+
revenueSnapshots: {
|
|
15643
|
+
anyOf: [
|
|
15644
|
+
{
|
|
15645
|
+
type: "integer",
|
|
15646
|
+
minimum: 0,
|
|
15647
|
+
maximum: 9007199254740991
|
|
15648
|
+
},
|
|
15649
|
+
{
|
|
15650
|
+
type: "null"
|
|
15651
|
+
}
|
|
15652
|
+
]
|
|
15653
|
+
},
|
|
15654
|
+
calls: {
|
|
15655
|
+
type: "integer",
|
|
15656
|
+
minimum: 0,
|
|
15657
|
+
maximum: 9007199254740991
|
|
15658
|
+
},
|
|
15659
|
+
facts: {
|
|
15660
|
+
type: "integer",
|
|
15661
|
+
minimum: 0,
|
|
15662
|
+
maximum: 9007199254740991
|
|
15663
|
+
},
|
|
15664
|
+
opportunities: {
|
|
15665
|
+
anyOf: [
|
|
15666
|
+
{
|
|
15667
|
+
type: "integer",
|
|
15668
|
+
minimum: 0,
|
|
15669
|
+
maximum: 9007199254740991
|
|
15670
|
+
},
|
|
15671
|
+
{
|
|
15672
|
+
type: "null"
|
|
15673
|
+
}
|
|
15674
|
+
]
|
|
15675
|
+
},
|
|
15676
|
+
tickets: {
|
|
15677
|
+
type: "integer",
|
|
15678
|
+
minimum: 0,
|
|
15679
|
+
maximum: 9007199254740991
|
|
15637
15680
|
}
|
|
15638
15681
|
},
|
|
15639
15682
|
required: [
|
|
15640
|
-
"
|
|
15641
|
-
"
|
|
15642
|
-
"
|
|
15643
|
-
"
|
|
15683
|
+
"contacts",
|
|
15684
|
+
"analyticsEvents",
|
|
15685
|
+
"analyticsDimensions",
|
|
15686
|
+
"billingEvents",
|
|
15687
|
+
"revenueSnapshots",
|
|
15688
|
+
"calls",
|
|
15689
|
+
"facts",
|
|
15690
|
+
"opportunities",
|
|
15691
|
+
"tickets"
|
|
15644
15692
|
],
|
|
15645
15693
|
additionalProperties: false
|
|
15646
15694
|
},
|
|
15695
|
+
conflicts: {
|
|
15696
|
+
type: "array",
|
|
15697
|
+
items: {
|
|
15698
|
+
type: "object",
|
|
15699
|
+
properties: {
|
|
15700
|
+
code: {
|
|
15701
|
+
type: "string"
|
|
15702
|
+
},
|
|
15703
|
+
message: {
|
|
15704
|
+
type: "string"
|
|
15705
|
+
},
|
|
15706
|
+
scope: {
|
|
15707
|
+
type: "string"
|
|
15708
|
+
},
|
|
15709
|
+
sourceIdentities: {
|
|
15710
|
+
type: "array",
|
|
15711
|
+
items: {
|
|
15712
|
+
type: "string"
|
|
15713
|
+
}
|
|
15714
|
+
},
|
|
15715
|
+
survivorIdentities: {
|
|
15716
|
+
type: "array",
|
|
15717
|
+
items: {
|
|
15718
|
+
type: "string"
|
|
15719
|
+
}
|
|
15720
|
+
}
|
|
15721
|
+
},
|
|
15722
|
+
required: [
|
|
15723
|
+
"code",
|
|
15724
|
+
"message",
|
|
15725
|
+
"scope",
|
|
15726
|
+
"sourceIdentities",
|
|
15727
|
+
"survivorIdentities"
|
|
15728
|
+
],
|
|
15729
|
+
additionalProperties: false
|
|
15730
|
+
}
|
|
15731
|
+
},
|
|
15732
|
+
supportingEvidence: {
|
|
15733
|
+
type: "array",
|
|
15734
|
+
items: {
|
|
15735
|
+
type: "string"
|
|
15736
|
+
}
|
|
15737
|
+
}
|
|
15738
|
+
},
|
|
15739
|
+
required: [
|
|
15740
|
+
"survivor",
|
|
15741
|
+
"duplicate",
|
|
15742
|
+
"payingAccountsAffected",
|
|
15743
|
+
"availability",
|
|
15744
|
+
"moves",
|
|
15745
|
+
"conflicts",
|
|
15746
|
+
"supportingEvidence"
|
|
15747
|
+
],
|
|
15748
|
+
additionalProperties: false
|
|
15749
|
+
},
|
|
15750
|
+
mergeBlockedReason: {
|
|
15751
|
+
anyOf: [
|
|
15752
|
+
{
|
|
15753
|
+
type: "string"
|
|
15754
|
+
},
|
|
15755
|
+
{
|
|
15756
|
+
type: "null"
|
|
15757
|
+
}
|
|
15758
|
+
]
|
|
15759
|
+
},
|
|
15760
|
+
reviewedPairOptions: {
|
|
15761
|
+
type: "array",
|
|
15762
|
+
items: {
|
|
15763
|
+
type: "array",
|
|
15764
|
+
prefixItems: [
|
|
15765
|
+
{
|
|
15766
|
+
type: "string"
|
|
15767
|
+
},
|
|
15768
|
+
{
|
|
15769
|
+
type: "string"
|
|
15770
|
+
}
|
|
15771
|
+
]
|
|
15772
|
+
}
|
|
15773
|
+
},
|
|
15774
|
+
candidateCustomers: {
|
|
15775
|
+
type: "array",
|
|
15776
|
+
items: {
|
|
15777
|
+
type: "object",
|
|
15778
|
+
properties: {
|
|
15779
|
+
id: {
|
|
15780
|
+
type: "string",
|
|
15781
|
+
minLength: 1,
|
|
15782
|
+
maxLength: 191
|
|
15783
|
+
},
|
|
15784
|
+
name: {
|
|
15785
|
+
type: "string",
|
|
15786
|
+
minLength: 1,
|
|
15787
|
+
maxLength: 500
|
|
15788
|
+
},
|
|
15789
|
+
domain: {
|
|
15790
|
+
anyOf: [
|
|
15791
|
+
{
|
|
15792
|
+
type: "string",
|
|
15793
|
+
minLength: 1,
|
|
15794
|
+
maxLength: 500
|
|
15795
|
+
},
|
|
15796
|
+
{
|
|
15797
|
+
type: "null"
|
|
15798
|
+
}
|
|
15799
|
+
]
|
|
15800
|
+
},
|
|
15801
|
+
type: {
|
|
15802
|
+
type: "string",
|
|
15803
|
+
enum: [
|
|
15804
|
+
"COMPANY",
|
|
15805
|
+
"INDIVIDUAL"
|
|
15806
|
+
]
|
|
15807
|
+
},
|
|
15808
|
+
status: {
|
|
15809
|
+
anyOf: [
|
|
15810
|
+
{
|
|
15811
|
+
type: "string",
|
|
15812
|
+
enum: [
|
|
15813
|
+
"PROVISIONAL",
|
|
15814
|
+
"ACTIVE",
|
|
15815
|
+
"CHURNED",
|
|
15816
|
+
"MERGED"
|
|
15817
|
+
]
|
|
15818
|
+
},
|
|
15819
|
+
{
|
|
15820
|
+
type: "null"
|
|
15821
|
+
}
|
|
15822
|
+
]
|
|
15823
|
+
},
|
|
15824
|
+
billingStatus: {
|
|
15825
|
+
anyOf: [
|
|
15826
|
+
{
|
|
15827
|
+
type: "string"
|
|
15828
|
+
},
|
|
15829
|
+
{
|
|
15830
|
+
type: "null"
|
|
15831
|
+
}
|
|
15832
|
+
]
|
|
15833
|
+
},
|
|
15834
|
+
identifierCount: {
|
|
15835
|
+
type: "integer",
|
|
15836
|
+
minimum: 0,
|
|
15837
|
+
maximum: 9007199254740991
|
|
15838
|
+
},
|
|
15839
|
+
contactCount: {
|
|
15840
|
+
type: "integer",
|
|
15841
|
+
minimum: 0,
|
|
15842
|
+
maximum: 9007199254740991
|
|
15843
|
+
}
|
|
15844
|
+
},
|
|
15845
|
+
required: [
|
|
15846
|
+
"id",
|
|
15847
|
+
"name",
|
|
15848
|
+
"domain",
|
|
15849
|
+
"type",
|
|
15850
|
+
"status",
|
|
15851
|
+
"identifierCount",
|
|
15852
|
+
"contactCount"
|
|
15853
|
+
],
|
|
15854
|
+
additionalProperties: false
|
|
15855
|
+
}
|
|
15856
|
+
},
|
|
15857
|
+
impactScope: {
|
|
15858
|
+
type: "string",
|
|
15859
|
+
enum: [
|
|
15860
|
+
"single_source",
|
|
15861
|
+
"cluster_sources"
|
|
15862
|
+
]
|
|
15863
|
+
},
|
|
15864
|
+
latestJob: {
|
|
15865
|
+
anyOf: [
|
|
15866
|
+
{
|
|
15867
|
+
type: "object",
|
|
15868
|
+
properties: {
|
|
15869
|
+
id: {
|
|
15870
|
+
type: "string",
|
|
15871
|
+
minLength: 1,
|
|
15872
|
+
maxLength: 191
|
|
15873
|
+
},
|
|
15874
|
+
operationId: {
|
|
15875
|
+
anyOf: [
|
|
15876
|
+
{
|
|
15877
|
+
type: "string",
|
|
15878
|
+
minLength: 1,
|
|
15879
|
+
maxLength: 191
|
|
15880
|
+
},
|
|
15881
|
+
{
|
|
15882
|
+
type: "null"
|
|
15883
|
+
}
|
|
15884
|
+
],
|
|
15885
|
+
description: "Pass to outlit_get_customer_merge_status. Null when this job has no matching tracked operation."
|
|
15886
|
+
},
|
|
15887
|
+
status: {
|
|
15888
|
+
type: "string",
|
|
15889
|
+
enum: [
|
|
15890
|
+
"QUEUED",
|
|
15891
|
+
"RUNNING",
|
|
15892
|
+
"COMPLETED",
|
|
15893
|
+
"FAILED"
|
|
15894
|
+
]
|
|
15895
|
+
},
|
|
15896
|
+
createdAt: {
|
|
15897
|
+
type: "string",
|
|
15898
|
+
format: "date-time",
|
|
15899
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15900
|
+
},
|
|
15901
|
+
updatedAt: {
|
|
15902
|
+
type: "string",
|
|
15903
|
+
format: "date-time",
|
|
15904
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15905
|
+
}
|
|
15906
|
+
},
|
|
15907
|
+
required: [
|
|
15908
|
+
"id",
|
|
15909
|
+
"operationId",
|
|
15910
|
+
"status",
|
|
15911
|
+
"createdAt",
|
|
15912
|
+
"updatedAt"
|
|
15913
|
+
],
|
|
15914
|
+
additionalProperties: false
|
|
15915
|
+
},
|
|
15916
|
+
{
|
|
15917
|
+
type: "null"
|
|
15918
|
+
}
|
|
15919
|
+
]
|
|
15920
|
+
},
|
|
15921
|
+
jevEvidence: {
|
|
15922
|
+
description: "Jev advisory model evidence scoped to this suggestion's customers. Uncalibrated and never part of eligibility, confidence, or recommended action.",
|
|
15923
|
+
anyOf: [
|
|
15924
|
+
{
|
|
15925
|
+
type: "object",
|
|
15926
|
+
properties: {
|
|
15927
|
+
computedAt: {
|
|
15928
|
+
type: "string",
|
|
15929
|
+
format: "date-time",
|
|
15930
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15931
|
+
},
|
|
15932
|
+
expiresAt: {
|
|
15933
|
+
type: "string",
|
|
15934
|
+
format: "date-time",
|
|
15935
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
15936
|
+
},
|
|
15937
|
+
expired: {
|
|
15938
|
+
type: "boolean"
|
|
15939
|
+
},
|
|
15940
|
+
pairs: {
|
|
15941
|
+
minItems: 1,
|
|
15942
|
+
type: "array",
|
|
15943
|
+
items: {
|
|
15944
|
+
type: "object",
|
|
15945
|
+
properties: {
|
|
15946
|
+
incoming: {
|
|
15947
|
+
type: "object",
|
|
15948
|
+
properties: {
|
|
15949
|
+
id: {
|
|
15950
|
+
type: "string",
|
|
15951
|
+
minLength: 1,
|
|
15952
|
+
maxLength: 191
|
|
15953
|
+
},
|
|
15954
|
+
name: {
|
|
15955
|
+
type: "string",
|
|
15956
|
+
minLength: 1,
|
|
15957
|
+
maxLength: 500
|
|
15958
|
+
},
|
|
15959
|
+
domain: {
|
|
15960
|
+
anyOf: [
|
|
15961
|
+
{
|
|
15962
|
+
type: "string",
|
|
15963
|
+
minLength: 1,
|
|
15964
|
+
maxLength: 500
|
|
15965
|
+
},
|
|
15966
|
+
{
|
|
15967
|
+
type: "null"
|
|
15968
|
+
}
|
|
15969
|
+
]
|
|
15970
|
+
},
|
|
15971
|
+
type: {
|
|
15972
|
+
type: "string",
|
|
15973
|
+
enum: [
|
|
15974
|
+
"COMPANY",
|
|
15975
|
+
"INDIVIDUAL"
|
|
15976
|
+
]
|
|
15977
|
+
},
|
|
15978
|
+
status: {
|
|
15979
|
+
anyOf: [
|
|
15980
|
+
{
|
|
15981
|
+
type: "string",
|
|
15982
|
+
enum: [
|
|
15983
|
+
"PROVISIONAL",
|
|
15984
|
+
"ACTIVE",
|
|
15985
|
+
"CHURNED",
|
|
15986
|
+
"MERGED"
|
|
15987
|
+
]
|
|
15988
|
+
},
|
|
15989
|
+
{
|
|
15990
|
+
type: "null"
|
|
15991
|
+
}
|
|
15992
|
+
]
|
|
15993
|
+
},
|
|
15994
|
+
billingStatus: {
|
|
15995
|
+
anyOf: [
|
|
15996
|
+
{
|
|
15997
|
+
type: "string"
|
|
15998
|
+
},
|
|
15999
|
+
{
|
|
16000
|
+
type: "null"
|
|
16001
|
+
}
|
|
16002
|
+
]
|
|
16003
|
+
},
|
|
16004
|
+
identifierCount: {
|
|
16005
|
+
type: "integer",
|
|
16006
|
+
minimum: 0,
|
|
16007
|
+
maximum: 9007199254740991
|
|
16008
|
+
},
|
|
16009
|
+
contactCount: {
|
|
16010
|
+
type: "integer",
|
|
16011
|
+
minimum: 0,
|
|
16012
|
+
maximum: 9007199254740991
|
|
16013
|
+
}
|
|
16014
|
+
},
|
|
16015
|
+
required: [
|
|
16016
|
+
"id",
|
|
16017
|
+
"name",
|
|
16018
|
+
"domain",
|
|
16019
|
+
"type",
|
|
16020
|
+
"status",
|
|
16021
|
+
"identifierCount",
|
|
16022
|
+
"contactCount"
|
|
16023
|
+
],
|
|
16024
|
+
additionalProperties: false
|
|
16025
|
+
},
|
|
16026
|
+
candidate: {
|
|
16027
|
+
type: "object",
|
|
16028
|
+
properties: {
|
|
16029
|
+
id: {
|
|
16030
|
+
type: "string",
|
|
16031
|
+
minLength: 1,
|
|
16032
|
+
maxLength: 191
|
|
16033
|
+
},
|
|
16034
|
+
name: {
|
|
16035
|
+
type: "string",
|
|
16036
|
+
minLength: 1,
|
|
16037
|
+
maxLength: 500
|
|
16038
|
+
},
|
|
16039
|
+
domain: {
|
|
16040
|
+
anyOf: [
|
|
16041
|
+
{
|
|
16042
|
+
type: "string",
|
|
16043
|
+
minLength: 1,
|
|
16044
|
+
maxLength: 500
|
|
16045
|
+
},
|
|
16046
|
+
{
|
|
16047
|
+
type: "null"
|
|
16048
|
+
}
|
|
16049
|
+
]
|
|
16050
|
+
},
|
|
16051
|
+
type: {
|
|
16052
|
+
type: "string",
|
|
16053
|
+
enum: [
|
|
16054
|
+
"COMPANY",
|
|
16055
|
+
"INDIVIDUAL"
|
|
16056
|
+
]
|
|
16057
|
+
},
|
|
16058
|
+
status: {
|
|
16059
|
+
anyOf: [
|
|
16060
|
+
{
|
|
16061
|
+
type: "string",
|
|
16062
|
+
enum: [
|
|
16063
|
+
"PROVISIONAL",
|
|
16064
|
+
"ACTIVE",
|
|
16065
|
+
"CHURNED",
|
|
16066
|
+
"MERGED"
|
|
16067
|
+
]
|
|
16068
|
+
},
|
|
16069
|
+
{
|
|
16070
|
+
type: "null"
|
|
16071
|
+
}
|
|
16072
|
+
]
|
|
16073
|
+
},
|
|
16074
|
+
billingStatus: {
|
|
16075
|
+
anyOf: [
|
|
16076
|
+
{
|
|
16077
|
+
type: "string"
|
|
16078
|
+
},
|
|
16079
|
+
{
|
|
16080
|
+
type: "null"
|
|
16081
|
+
}
|
|
16082
|
+
]
|
|
16083
|
+
},
|
|
16084
|
+
identifierCount: {
|
|
16085
|
+
type: "integer",
|
|
16086
|
+
minimum: 0,
|
|
16087
|
+
maximum: 9007199254740991
|
|
16088
|
+
},
|
|
16089
|
+
contactCount: {
|
|
16090
|
+
type: "integer",
|
|
16091
|
+
minimum: 0,
|
|
16092
|
+
maximum: 9007199254740991
|
|
16093
|
+
}
|
|
16094
|
+
},
|
|
16095
|
+
required: [
|
|
16096
|
+
"id",
|
|
16097
|
+
"name",
|
|
16098
|
+
"domain",
|
|
16099
|
+
"type",
|
|
16100
|
+
"status",
|
|
16101
|
+
"identifierCount",
|
|
16102
|
+
"contactCount"
|
|
16103
|
+
],
|
|
16104
|
+
additionalProperties: false
|
|
16105
|
+
},
|
|
16106
|
+
pSameEntity: {
|
|
16107
|
+
type: "number",
|
|
16108
|
+
minimum: 0,
|
|
16109
|
+
maximum: 1
|
|
16110
|
+
},
|
|
16111
|
+
relation: {
|
|
16112
|
+
anyOf: [
|
|
16113
|
+
{
|
|
16114
|
+
type: "string",
|
|
16115
|
+
minLength: 1,
|
|
16116
|
+
maxLength: 100
|
|
16117
|
+
},
|
|
16118
|
+
{
|
|
16119
|
+
type: "null"
|
|
16120
|
+
}
|
|
16121
|
+
]
|
|
16122
|
+
},
|
|
16123
|
+
relationProbability: {
|
|
16124
|
+
anyOf: [
|
|
16125
|
+
{
|
|
16126
|
+
type: "number",
|
|
16127
|
+
minimum: 0,
|
|
16128
|
+
maximum: 1
|
|
16129
|
+
},
|
|
16130
|
+
{
|
|
16131
|
+
type: "null"
|
|
16132
|
+
}
|
|
16133
|
+
]
|
|
16134
|
+
}
|
|
16135
|
+
},
|
|
16136
|
+
required: [
|
|
16137
|
+
"incoming",
|
|
16138
|
+
"candidate",
|
|
16139
|
+
"pSameEntity",
|
|
16140
|
+
"relation",
|
|
16141
|
+
"relationProbability"
|
|
16142
|
+
],
|
|
16143
|
+
additionalProperties: false
|
|
16144
|
+
}
|
|
16145
|
+
}
|
|
16146
|
+
},
|
|
16147
|
+
required: [
|
|
16148
|
+
"computedAt",
|
|
16149
|
+
"expiresAt",
|
|
16150
|
+
"expired",
|
|
16151
|
+
"pairs"
|
|
16152
|
+
],
|
|
16153
|
+
additionalProperties: false
|
|
16154
|
+
},
|
|
16155
|
+
{
|
|
16156
|
+
type: "null"
|
|
16157
|
+
}
|
|
16158
|
+
]
|
|
16159
|
+
},
|
|
16160
|
+
canMerge: {
|
|
16161
|
+
type: "boolean"
|
|
16162
|
+
},
|
|
16163
|
+
canReject: {
|
|
16164
|
+
type: "boolean"
|
|
16165
|
+
}
|
|
16166
|
+
},
|
|
16167
|
+
required: [
|
|
16168
|
+
"id",
|
|
16169
|
+
"status",
|
|
16170
|
+
"proposalStatus",
|
|
16171
|
+
"confidence",
|
|
16172
|
+
"survivor",
|
|
16173
|
+
"duplicate",
|
|
16174
|
+
"reviewNotes",
|
|
16175
|
+
"reviewedAt",
|
|
16176
|
+
"reviewedByName",
|
|
16177
|
+
"appliedAt",
|
|
16178
|
+
"appliedByName",
|
|
16179
|
+
"createdAt",
|
|
16180
|
+
"explanation",
|
|
16181
|
+
"impact",
|
|
16182
|
+
"latestJob",
|
|
16183
|
+
"canMerge",
|
|
16184
|
+
"canReject"
|
|
16185
|
+
],
|
|
16186
|
+
additionalProperties: false
|
|
16187
|
+
}
|
|
16188
|
+
},
|
|
16189
|
+
canManageIdentityMerges: {
|
|
16190
|
+
type: "boolean"
|
|
16191
|
+
},
|
|
16192
|
+
nextCursor: {
|
|
16193
|
+
default: null,
|
|
16194
|
+
anyOf: [
|
|
16195
|
+
{
|
|
16196
|
+
type: "string",
|
|
16197
|
+
minLength: 1,
|
|
16198
|
+
maxLength: 2000
|
|
16199
|
+
},
|
|
16200
|
+
{
|
|
16201
|
+
type: "null"
|
|
16202
|
+
}
|
|
16203
|
+
]
|
|
16204
|
+
}
|
|
16205
|
+
},
|
|
16206
|
+
required: [
|
|
16207
|
+
"suggestions",
|
|
16208
|
+
"canManageIdentityMerges",
|
|
16209
|
+
"nextCursor"
|
|
16210
|
+
],
|
|
16211
|
+
additionalProperties: false
|
|
16212
|
+
}
|
|
16213
|
+
},
|
|
16214
|
+
outlit_reject_identity_merge_suggestion: {
|
|
16215
|
+
toolName: "outlit_reject_identity_merge_suggestion",
|
|
16216
|
+
commandId: "identity.suggestions.reject",
|
|
16217
|
+
commandVersion: 1,
|
|
16218
|
+
ownerDomain: "identity",
|
|
16219
|
+
title: "Reject identity merge suggestion",
|
|
16220
|
+
description: "Reject a saved identity merge suggestion and optionally record why. Requires identity review permission. Keeps the customer profiles separate; does not merge or change customer identities. Outlit-owned agents cannot perform this operation.",
|
|
16221
|
+
annotations: {
|
|
16222
|
+
readOnlyHint: false,
|
|
16223
|
+
destructiveHint: false
|
|
16224
|
+
},
|
|
16225
|
+
inputSchema: {
|
|
16226
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16227
|
+
type: "object",
|
|
16228
|
+
properties: {
|
|
16229
|
+
suggestionId: {
|
|
16230
|
+
type: "string",
|
|
16231
|
+
minLength: 1,
|
|
16232
|
+
maxLength: 191
|
|
16233
|
+
},
|
|
16234
|
+
reviewNotes: {
|
|
16235
|
+
type: "string",
|
|
16236
|
+
maxLength: 1e4
|
|
16237
|
+
}
|
|
16238
|
+
},
|
|
16239
|
+
required: [
|
|
16240
|
+
"suggestionId"
|
|
16241
|
+
],
|
|
16242
|
+
additionalProperties: false
|
|
16243
|
+
},
|
|
16244
|
+
outputSchema: {
|
|
16245
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16246
|
+
type: "object",
|
|
16247
|
+
properties: {
|
|
16248
|
+
suggestionId: {
|
|
16249
|
+
type: "string",
|
|
16250
|
+
minLength: 1,
|
|
16251
|
+
maxLength: 191
|
|
16252
|
+
},
|
|
16253
|
+
status: {
|
|
16254
|
+
type: "string",
|
|
16255
|
+
const: "REJECTED"
|
|
16256
|
+
}
|
|
16257
|
+
},
|
|
16258
|
+
required: [
|
|
16259
|
+
"suggestionId",
|
|
16260
|
+
"status"
|
|
16261
|
+
],
|
|
16262
|
+
additionalProperties: false
|
|
16263
|
+
}
|
|
16264
|
+
},
|
|
16265
|
+
outlit_merge_customers: {
|
|
16266
|
+
toolName: "outlit_merge_customers",
|
|
16267
|
+
commandId: "customer.merge",
|
|
16268
|
+
commandVersion: 1,
|
|
16269
|
+
ownerDomain: "identity",
|
|
16270
|
+
title: "Merge customers",
|
|
16271
|
+
description: "DANGEROUS execution with no supported undo. Preview or execute a merge of two exact records into the specified survivor; defaults to preview (dryRun:true). Without suggestionId, both records must be COMPANY. Any pair involving an INDIVIDUAL requires an eligible saved suggestionId for that exact pair. Execute only when authorized and absolutely certain both records represent the same customer; two company records must represent the same company. Similar names, related domains, shared participants, parent/subsidiary relationships or a suggested match are insufficient. If uncertain, do not execute. Execution moves customer data and access relationships and requires the reviewed previewToken, stable requestId and explicit merge permission. A preview grants no execution authority. Reuse identical request inputs for retries. Execution is asynchronous; queued does not mean complete. Outlit-owned agents cannot perform this operation.",
|
|
16272
|
+
annotations: {
|
|
16273
|
+
readOnlyHint: false,
|
|
16274
|
+
destructiveHint: true
|
|
16275
|
+
},
|
|
16276
|
+
inputSchema: {
|
|
16277
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16278
|
+
type: "object",
|
|
16279
|
+
properties: {
|
|
16280
|
+
survivingCustomerId: {
|
|
16281
|
+
type: "string",
|
|
16282
|
+
minLength: 1,
|
|
16283
|
+
maxLength: 191
|
|
16284
|
+
},
|
|
16285
|
+
duplicateCustomerId: {
|
|
16286
|
+
type: "string",
|
|
16287
|
+
minLength: 1,
|
|
16288
|
+
maxLength: 191
|
|
16289
|
+
},
|
|
16290
|
+
suggestionId: {
|
|
16291
|
+
type: "string",
|
|
16292
|
+
minLength: 1,
|
|
16293
|
+
maxLength: 191,
|
|
16294
|
+
description: "Eligible saved suggestion for this exact pair. Required if either record is INDIVIDUAL; optional for two COMPANY records."
|
|
16295
|
+
},
|
|
16296
|
+
reviewNotes: {
|
|
16297
|
+
type: "string",
|
|
16298
|
+
maxLength: 1e4
|
|
16299
|
+
},
|
|
16300
|
+
dryRun: {
|
|
16301
|
+
default: true,
|
|
16302
|
+
type: "boolean"
|
|
16303
|
+
},
|
|
16304
|
+
previewToken: {
|
|
16305
|
+
type: "string",
|
|
16306
|
+
minLength: 1,
|
|
16307
|
+
maxLength: 4096
|
|
16308
|
+
},
|
|
16309
|
+
requestId: {
|
|
16310
|
+
type: "string",
|
|
16311
|
+
minLength: 1,
|
|
16312
|
+
maxLength: 191
|
|
16313
|
+
}
|
|
16314
|
+
},
|
|
16315
|
+
required: [
|
|
16316
|
+
"survivingCustomerId",
|
|
16317
|
+
"duplicateCustomerId"
|
|
16318
|
+
],
|
|
16319
|
+
additionalProperties: false
|
|
16320
|
+
},
|
|
16321
|
+
outputSchema: {
|
|
16322
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16323
|
+
oneOf: [
|
|
16324
|
+
{
|
|
16325
|
+
type: "object",
|
|
16326
|
+
properties: {
|
|
16327
|
+
kind: {
|
|
16328
|
+
type: "string",
|
|
16329
|
+
const: "preview"
|
|
16330
|
+
},
|
|
16331
|
+
survivingCustomerId: {
|
|
16332
|
+
type: "string",
|
|
16333
|
+
minLength: 1,
|
|
16334
|
+
maxLength: 191
|
|
16335
|
+
},
|
|
16336
|
+
duplicateCustomerId: {
|
|
16337
|
+
type: "string",
|
|
16338
|
+
minLength: 1,
|
|
16339
|
+
maxLength: 191
|
|
16340
|
+
},
|
|
16341
|
+
previewToken: {
|
|
16342
|
+
type: "string",
|
|
16343
|
+
minLength: 1,
|
|
16344
|
+
maxLength: 4096
|
|
16345
|
+
},
|
|
16346
|
+
evaluatedAt: {
|
|
16347
|
+
type: "string",
|
|
16348
|
+
format: "date-time",
|
|
16349
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
|
|
16350
|
+
},
|
|
16351
|
+
impact: {
|
|
16352
|
+
type: "object",
|
|
16353
|
+
properties: {
|
|
16354
|
+
identifiers: {
|
|
16355
|
+
type: "integer",
|
|
16356
|
+
minimum: 0,
|
|
16357
|
+
maximum: 9007199254740991
|
|
16358
|
+
},
|
|
16359
|
+
contacts: {
|
|
16360
|
+
type: "integer",
|
|
16361
|
+
minimum: 0,
|
|
16362
|
+
maximum: 9007199254740991
|
|
16363
|
+
},
|
|
16364
|
+
facts: {
|
|
16365
|
+
type: "integer",
|
|
16366
|
+
minimum: 0,
|
|
16367
|
+
maximum: 9007199254740991
|
|
16368
|
+
},
|
|
16369
|
+
communications: {
|
|
16370
|
+
type: "integer",
|
|
16371
|
+
minimum: 0,
|
|
16372
|
+
maximum: 9007199254740991
|
|
16373
|
+
},
|
|
16374
|
+
accessEntries: {
|
|
16375
|
+
type: "integer",
|
|
16376
|
+
minimum: 0,
|
|
16377
|
+
maximum: 9007199254740991
|
|
16378
|
+
}
|
|
16379
|
+
},
|
|
16380
|
+
required: [
|
|
16381
|
+
"identifiers",
|
|
16382
|
+
"contacts",
|
|
16383
|
+
"facts",
|
|
16384
|
+
"communications",
|
|
16385
|
+
"accessEntries"
|
|
16386
|
+
],
|
|
16387
|
+
additionalProperties: false
|
|
16388
|
+
},
|
|
16389
|
+
warnings: {
|
|
16390
|
+
maxItems: 30,
|
|
16391
|
+
type: "array",
|
|
16392
|
+
items: {
|
|
16393
|
+
type: "object",
|
|
16394
|
+
properties: {
|
|
16395
|
+
code: {
|
|
16396
|
+
type: "string",
|
|
16397
|
+
minLength: 1,
|
|
16398
|
+
maxLength: 100
|
|
16399
|
+
},
|
|
16400
|
+
message: {
|
|
16401
|
+
type: "string",
|
|
16402
|
+
maxLength: 1000
|
|
16403
|
+
}
|
|
16404
|
+
},
|
|
16405
|
+
required: [
|
|
16406
|
+
"code",
|
|
16407
|
+
"message"
|
|
16408
|
+
],
|
|
16409
|
+
additionalProperties: false
|
|
16410
|
+
}
|
|
16411
|
+
}
|
|
16412
|
+
},
|
|
16413
|
+
required: [
|
|
16414
|
+
"kind",
|
|
16415
|
+
"survivingCustomerId",
|
|
16416
|
+
"duplicateCustomerId",
|
|
16417
|
+
"previewToken",
|
|
16418
|
+
"evaluatedAt",
|
|
16419
|
+
"impact",
|
|
16420
|
+
"warnings"
|
|
16421
|
+
],
|
|
16422
|
+
additionalProperties: false
|
|
16423
|
+
},
|
|
16424
|
+
{
|
|
16425
|
+
type: "object",
|
|
16426
|
+
properties: {
|
|
16427
|
+
kind: {
|
|
16428
|
+
type: "string",
|
|
16429
|
+
const: "operation"
|
|
16430
|
+
},
|
|
16431
|
+
operationId: {
|
|
16432
|
+
type: "string",
|
|
16433
|
+
minLength: 1,
|
|
16434
|
+
maxLength: 191
|
|
16435
|
+
},
|
|
16436
|
+
survivingCustomerId: {
|
|
16437
|
+
type: "string",
|
|
16438
|
+
minLength: 1,
|
|
16439
|
+
maxLength: 191
|
|
16440
|
+
},
|
|
16441
|
+
duplicateCustomerId: {
|
|
16442
|
+
type: "string",
|
|
16443
|
+
minLength: 1,
|
|
16444
|
+
maxLength: 191
|
|
16445
|
+
},
|
|
16446
|
+
status: {
|
|
16447
|
+
type: "string",
|
|
16448
|
+
enum: [
|
|
16449
|
+
"queued",
|
|
16450
|
+
"running",
|
|
16451
|
+
"completed",
|
|
16452
|
+
"failed"
|
|
16453
|
+
]
|
|
16454
|
+
},
|
|
16455
|
+
phase: {
|
|
16456
|
+
type: "string",
|
|
16457
|
+
minLength: 1,
|
|
16458
|
+
maxLength: 100
|
|
16459
|
+
},
|
|
16460
|
+
error: {
|
|
16461
|
+
type: "object",
|
|
16462
|
+
properties: {
|
|
16463
|
+
code: {
|
|
16464
|
+
type: "string",
|
|
16465
|
+
minLength: 1,
|
|
16466
|
+
maxLength: 100
|
|
16467
|
+
},
|
|
16468
|
+
message: {
|
|
16469
|
+
type: "string",
|
|
16470
|
+
maxLength: 1000
|
|
16471
|
+
}
|
|
16472
|
+
},
|
|
16473
|
+
required: [
|
|
16474
|
+
"code",
|
|
16475
|
+
"message"
|
|
16476
|
+
],
|
|
16477
|
+
additionalProperties: false
|
|
16478
|
+
}
|
|
16479
|
+
},
|
|
16480
|
+
required: [
|
|
16481
|
+
"kind",
|
|
16482
|
+
"operationId",
|
|
16483
|
+
"survivingCustomerId",
|
|
16484
|
+
"duplicateCustomerId",
|
|
16485
|
+
"status",
|
|
16486
|
+
"phase"
|
|
16487
|
+
],
|
|
16488
|
+
additionalProperties: false
|
|
16489
|
+
}
|
|
16490
|
+
]
|
|
16491
|
+
}
|
|
16492
|
+
},
|
|
16493
|
+
outlit_get_customer_merge_status: {
|
|
16494
|
+
toolName: "outlit_get_customer_merge_status",
|
|
16495
|
+
commandId: "customer.merge.status",
|
|
16496
|
+
commandVersion: 1,
|
|
16497
|
+
ownerDomain: "identity",
|
|
16498
|
+
title: "Get customer merge status",
|
|
16499
|
+
description: "Read a customer merge operation's current progress, completion or bounded failure information. Requires current read access; possession of an operation ID does not grant access. Queued or running operations are not complete. Does not retry, restart, cancel or undo the merge.",
|
|
16500
|
+
annotations: {
|
|
16501
|
+
readOnlyHint: true,
|
|
16502
|
+
destructiveHint: false
|
|
16503
|
+
},
|
|
16504
|
+
inputSchema: {
|
|
16505
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16506
|
+
type: "object",
|
|
16507
|
+
properties: {
|
|
16508
|
+
operationId: {
|
|
16509
|
+
type: "string",
|
|
16510
|
+
minLength: 1,
|
|
16511
|
+
maxLength: 191
|
|
16512
|
+
}
|
|
16513
|
+
},
|
|
16514
|
+
required: [
|
|
16515
|
+
"operationId"
|
|
16516
|
+
],
|
|
16517
|
+
additionalProperties: false
|
|
16518
|
+
},
|
|
16519
|
+
outputSchema: {
|
|
16520
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16521
|
+
type: "object",
|
|
16522
|
+
properties: {
|
|
16523
|
+
kind: {
|
|
16524
|
+
type: "string",
|
|
16525
|
+
const: "operation"
|
|
16526
|
+
},
|
|
16527
|
+
operationId: {
|
|
16528
|
+
type: "string",
|
|
16529
|
+
minLength: 1,
|
|
16530
|
+
maxLength: 191
|
|
16531
|
+
},
|
|
16532
|
+
survivingCustomerId: {
|
|
16533
|
+
type: "string",
|
|
16534
|
+
minLength: 1,
|
|
16535
|
+
maxLength: 191
|
|
16536
|
+
},
|
|
16537
|
+
duplicateCustomerId: {
|
|
16538
|
+
type: "string",
|
|
16539
|
+
minLength: 1,
|
|
16540
|
+
maxLength: 191
|
|
16541
|
+
},
|
|
16542
|
+
status: {
|
|
16543
|
+
type: "string",
|
|
16544
|
+
enum: [
|
|
16545
|
+
"queued",
|
|
16546
|
+
"running",
|
|
16547
|
+
"completed",
|
|
16548
|
+
"failed"
|
|
16549
|
+
]
|
|
16550
|
+
},
|
|
16551
|
+
phase: {
|
|
16552
|
+
type: "string",
|
|
16553
|
+
minLength: 1,
|
|
16554
|
+
maxLength: 100
|
|
16555
|
+
},
|
|
16556
|
+
error: {
|
|
16557
|
+
type: "object",
|
|
16558
|
+
properties: {
|
|
16559
|
+
code: {
|
|
16560
|
+
type: "string",
|
|
16561
|
+
minLength: 1,
|
|
16562
|
+
maxLength: 100
|
|
16563
|
+
},
|
|
16564
|
+
message: {
|
|
16565
|
+
type: "string",
|
|
16566
|
+
maxLength: 1000
|
|
16567
|
+
}
|
|
16568
|
+
},
|
|
16569
|
+
required: [
|
|
16570
|
+
"code",
|
|
16571
|
+
"message"
|
|
16572
|
+
],
|
|
16573
|
+
additionalProperties: false
|
|
16574
|
+
}
|
|
16575
|
+
},
|
|
16576
|
+
required: [
|
|
16577
|
+
"kind",
|
|
16578
|
+
"operationId",
|
|
16579
|
+
"survivingCustomerId",
|
|
16580
|
+
"duplicateCustomerId",
|
|
16581
|
+
"status",
|
|
16582
|
+
"phase"
|
|
16583
|
+
],
|
|
16584
|
+
additionalProperties: false
|
|
16585
|
+
}
|
|
16586
|
+
},
|
|
16587
|
+
outlit_list_scoped_repairs: {
|
|
16588
|
+
toolName: "outlit_list_scoped_repairs",
|
|
16589
|
+
commandId: "integrity.scoped_repair.list",
|
|
16590
|
+
commandVersion: 1,
|
|
16591
|
+
ownerDomain: "identity",
|
|
16592
|
+
title: "List scoped repair findings",
|
|
16593
|
+
description: "Read a bounded page of integrity findings visible to this caller, including finding IDs, fingerprints, compact source/target/evidence summaries, hasSavedCandidate, and plan state. The default page is 10 findings; maximum 20. Scan successive cursors until hasMore is false; one page is not complete discovery. When hasSavedCandidate is true and state is not blocked, call preview with findingId and expectedFingerprint and omit candidate to use the saved exact manifest. A blocked finding cannot be previewed; follow its reason. If no saved exact candidate exists, the finding is manual. Candidate manifests must be source-backed and exact: contact moves pin contactId/fromCustomerId/toCustomerId/expectedEmail/expectedUpdatedAt; Stripe pins identifierId/identifierValue/sourceScopeKey/preserveContacts; CRM and corpus require their domain-produced exact source manifests. Do not invent a manifest from a finding summary.",
|
|
16594
|
+
annotations: {
|
|
16595
|
+
readOnlyHint: true,
|
|
16596
|
+
destructiveHint: false
|
|
16597
|
+
},
|
|
16598
|
+
inputSchema: {
|
|
16599
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16600
|
+
type: "object",
|
|
16601
|
+
properties: {
|
|
16602
|
+
limit: {
|
|
16603
|
+
default: 10,
|
|
16604
|
+
type: "integer",
|
|
16605
|
+
minimum: 1,
|
|
16606
|
+
maximum: 20
|
|
16607
|
+
},
|
|
16608
|
+
cursor: {
|
|
16609
|
+
type: "string",
|
|
16610
|
+
minLength: 1,
|
|
16611
|
+
maxLength: 191
|
|
16612
|
+
}
|
|
16613
|
+
},
|
|
16614
|
+
additionalProperties: false
|
|
16615
|
+
},
|
|
16616
|
+
outputSchema: {
|
|
16617
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16618
|
+
type: "object",
|
|
16619
|
+
properties: {
|
|
16620
|
+
items: {
|
|
16621
|
+
maxItems: 20,
|
|
16622
|
+
type: "array",
|
|
16623
|
+
items: {
|
|
16624
|
+
type: "object",
|
|
16625
|
+
properties: {
|
|
16626
|
+
findingId: {
|
|
16627
|
+
type: "string",
|
|
16628
|
+
minLength: 1,
|
|
16629
|
+
maxLength: 191
|
|
16630
|
+
},
|
|
16631
|
+
fingerprint: {
|
|
16632
|
+
type: "string",
|
|
16633
|
+
minLength: 1,
|
|
16634
|
+
maxLength: 191
|
|
16635
|
+
},
|
|
16636
|
+
state: {
|
|
16637
|
+
type: "string",
|
|
16638
|
+
enum: [
|
|
16639
|
+
"manual",
|
|
16640
|
+
"ready",
|
|
16641
|
+
"admitted",
|
|
16642
|
+
"pending_verification",
|
|
16643
|
+
"recovery_needed",
|
|
16644
|
+
"blocked",
|
|
16645
|
+
"verified"
|
|
16646
|
+
]
|
|
16647
|
+
},
|
|
16648
|
+
action: {
|
|
16649
|
+
anyOf: [
|
|
16650
|
+
{
|
|
16651
|
+
type: "string",
|
|
16652
|
+
enum: [
|
|
16653
|
+
"rehome_contact",
|
|
16654
|
+
"rehome_crm_account",
|
|
16655
|
+
"reattribute_stripe_customer",
|
|
16656
|
+
"rehome_source_corpus"
|
|
16657
|
+
]
|
|
16658
|
+
},
|
|
15647
16659
|
{
|
|
15648
16660
|
type: "null"
|
|
15649
16661
|
}
|
|
15650
16662
|
]
|
|
15651
16663
|
},
|
|
15652
|
-
|
|
15653
|
-
|
|
16664
|
+
sourceCustomerId: {
|
|
16665
|
+
anyOf: [
|
|
16666
|
+
{
|
|
16667
|
+
type: "string",
|
|
16668
|
+
minLength: 1,
|
|
16669
|
+
maxLength: 191
|
|
16670
|
+
},
|
|
16671
|
+
{
|
|
16672
|
+
type: "null"
|
|
16673
|
+
}
|
|
16674
|
+
]
|
|
15654
16675
|
},
|
|
15655
|
-
|
|
16676
|
+
targetCustomerId: {
|
|
16677
|
+
anyOf: [
|
|
16678
|
+
{
|
|
16679
|
+
type: "string",
|
|
16680
|
+
minLength: 1,
|
|
16681
|
+
maxLength: 191
|
|
16682
|
+
},
|
|
16683
|
+
{
|
|
16684
|
+
type: "null"
|
|
16685
|
+
}
|
|
16686
|
+
]
|
|
16687
|
+
},
|
|
16688
|
+
evidenceRef: {
|
|
16689
|
+
anyOf: [
|
|
16690
|
+
{
|
|
16691
|
+
type: "string",
|
|
16692
|
+
minLength: 1,
|
|
16693
|
+
maxLength: 191
|
|
16694
|
+
},
|
|
16695
|
+
{
|
|
16696
|
+
type: "null"
|
|
16697
|
+
}
|
|
16698
|
+
]
|
|
16699
|
+
},
|
|
16700
|
+
hasSavedCandidate: {
|
|
15656
16701
|
type: "boolean"
|
|
16702
|
+
},
|
|
16703
|
+
planDigest: {
|
|
16704
|
+
anyOf: [
|
|
16705
|
+
{
|
|
16706
|
+
type: "string",
|
|
16707
|
+
pattern: "^[a-f0-9]{64}$"
|
|
16708
|
+
},
|
|
16709
|
+
{
|
|
16710
|
+
type: "null"
|
|
16711
|
+
}
|
|
16712
|
+
]
|
|
16713
|
+
},
|
|
16714
|
+
manualReason: {
|
|
16715
|
+
anyOf: [
|
|
16716
|
+
{
|
|
16717
|
+
type: "string",
|
|
16718
|
+
maxLength: 300
|
|
16719
|
+
},
|
|
16720
|
+
{
|
|
16721
|
+
type: "null"
|
|
16722
|
+
}
|
|
16723
|
+
]
|
|
16724
|
+
},
|
|
16725
|
+
nextStep: {
|
|
16726
|
+
anyOf: [
|
|
16727
|
+
{
|
|
16728
|
+
type: "string",
|
|
16729
|
+
maxLength: 200
|
|
16730
|
+
},
|
|
16731
|
+
{
|
|
16732
|
+
type: "null"
|
|
16733
|
+
}
|
|
16734
|
+
]
|
|
15657
16735
|
}
|
|
15658
16736
|
},
|
|
15659
16737
|
required: [
|
|
15660
|
-
"
|
|
15661
|
-
"
|
|
15662
|
-
"
|
|
15663
|
-
"
|
|
15664
|
-
"
|
|
15665
|
-
"
|
|
15666
|
-
"
|
|
15667
|
-
"
|
|
15668
|
-
"
|
|
15669
|
-
"
|
|
15670
|
-
"
|
|
15671
|
-
"createdAt",
|
|
15672
|
-
"explanation",
|
|
15673
|
-
"impact",
|
|
15674
|
-
"latestJob",
|
|
15675
|
-
"canMerge",
|
|
15676
|
-
"canReject"
|
|
16738
|
+
"findingId",
|
|
16739
|
+
"fingerprint",
|
|
16740
|
+
"state",
|
|
16741
|
+
"action",
|
|
16742
|
+
"sourceCustomerId",
|
|
16743
|
+
"targetCustomerId",
|
|
16744
|
+
"evidenceRef",
|
|
16745
|
+
"hasSavedCandidate",
|
|
16746
|
+
"planDigest",
|
|
16747
|
+
"manualReason",
|
|
16748
|
+
"nextStep"
|
|
15677
16749
|
],
|
|
15678
16750
|
additionalProperties: false
|
|
15679
16751
|
}
|
|
15680
16752
|
},
|
|
15681
|
-
|
|
16753
|
+
scannedCount: {
|
|
16754
|
+
type: "integer",
|
|
16755
|
+
minimum: 0,
|
|
16756
|
+
maximum: 9007199254740991
|
|
16757
|
+
},
|
|
16758
|
+
hasMore: {
|
|
15682
16759
|
type: "boolean"
|
|
15683
16760
|
},
|
|
15684
16761
|
nextCursor: {
|
|
15685
|
-
default: null,
|
|
15686
16762
|
anyOf: [
|
|
15687
16763
|
{
|
|
15688
16764
|
type: "string",
|
|
15689
16765
|
minLength: 1,
|
|
15690
|
-
maxLength:
|
|
16766
|
+
maxLength: 191
|
|
15691
16767
|
},
|
|
15692
16768
|
{
|
|
15693
16769
|
type: "null"
|
|
@@ -15696,20 +16772,21 @@ Returns column definitions and example queries for each view.`,
|
|
|
15696
16772
|
}
|
|
15697
16773
|
},
|
|
15698
16774
|
required: [
|
|
15699
|
-
"
|
|
15700
|
-
"
|
|
16775
|
+
"items",
|
|
16776
|
+
"scannedCount",
|
|
16777
|
+
"hasMore",
|
|
15701
16778
|
"nextCursor"
|
|
15702
16779
|
],
|
|
15703
16780
|
additionalProperties: false
|
|
15704
16781
|
}
|
|
15705
16782
|
},
|
|
15706
|
-
|
|
15707
|
-
toolName: "
|
|
15708
|
-
commandId: "
|
|
16783
|
+
outlit_preview_scoped_repair: {
|
|
16784
|
+
toolName: "outlit_preview_scoped_repair",
|
|
16785
|
+
commandId: "integrity.scoped_repair.preview",
|
|
15709
16786
|
commandVersion: 1,
|
|
15710
16787
|
ownerDomain: "identity",
|
|
15711
|
-
title: "
|
|
15712
|
-
description: "
|
|
16788
|
+
title: "Preview scoped identity repair",
|
|
16789
|
+
description: "Preview and save one exact source-backed repair against a finding fingerprint. Obtain findingId and fingerprint from outlit_list_scoped_repairs. Supply an exact candidate manifest, or omit it when hasSavedCandidate is true to use the saved exact candidate server-side. If discovery reports no saved candidate, a domain-produced source manifest is required; a finding summary is insufficient. Requires identity write authority and access to every finding member and protected customer.",
|
|
15713
16790
|
annotations: {
|
|
15714
16791
|
readOnlyHint: false,
|
|
15715
16792
|
destructiveHint: false
|
|
@@ -15718,293 +16795,399 @@ Returns column definitions and example queries for each view.`,
|
|
|
15718
16795
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
15719
16796
|
type: "object",
|
|
15720
16797
|
properties: {
|
|
15721
|
-
|
|
16798
|
+
findingId: {
|
|
15722
16799
|
type: "string",
|
|
15723
16800
|
minLength: 1,
|
|
15724
16801
|
maxLength: 191
|
|
15725
16802
|
},
|
|
15726
|
-
|
|
15727
|
-
type: "string",
|
|
15728
|
-
maxLength: 1e4
|
|
15729
|
-
}
|
|
15730
|
-
},
|
|
15731
|
-
required: [
|
|
15732
|
-
"suggestionId"
|
|
15733
|
-
],
|
|
15734
|
-
additionalProperties: false
|
|
15735
|
-
},
|
|
15736
|
-
outputSchema: {
|
|
15737
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
15738
|
-
type: "object",
|
|
15739
|
-
properties: {
|
|
15740
|
-
suggestionId: {
|
|
16803
|
+
expectedFingerprint: {
|
|
15741
16804
|
type: "string",
|
|
15742
16805
|
minLength: 1,
|
|
15743
16806
|
maxLength: 191
|
|
15744
16807
|
},
|
|
15745
|
-
|
|
15746
|
-
type: "
|
|
15747
|
-
|
|
16808
|
+
candidate: {
|
|
16809
|
+
type: "object",
|
|
16810
|
+
properties: {
|
|
16811
|
+
version: {
|
|
16812
|
+
type: "number",
|
|
16813
|
+
const: 1
|
|
16814
|
+
},
|
|
16815
|
+
action: {
|
|
16816
|
+
type: "string",
|
|
16817
|
+
enum: [
|
|
16818
|
+
"rehome_contact",
|
|
16819
|
+
"rehome_crm_account",
|
|
16820
|
+
"reattribute_stripe_customer",
|
|
16821
|
+
"rehome_source_corpus"
|
|
16822
|
+
]
|
|
16823
|
+
},
|
|
16824
|
+
organizationId: {
|
|
16825
|
+
type: "string",
|
|
16826
|
+
minLength: 1,
|
|
16827
|
+
maxLength: 191
|
|
16828
|
+
},
|
|
16829
|
+
sourceCustomerId: {
|
|
16830
|
+
type: "string",
|
|
16831
|
+
minLength: 1,
|
|
16832
|
+
maxLength: 191
|
|
16833
|
+
},
|
|
16834
|
+
targetCustomerId: {
|
|
16835
|
+
type: "string",
|
|
16836
|
+
minLength: 1,
|
|
16837
|
+
maxLength: 191
|
|
16838
|
+
},
|
|
16839
|
+
evidenceRef: {
|
|
16840
|
+
type: "string",
|
|
16841
|
+
minLength: 1,
|
|
16842
|
+
maxLength: 191
|
|
16843
|
+
},
|
|
16844
|
+
provenance: {
|
|
16845
|
+
type: "string",
|
|
16846
|
+
const: "exact_source_manifest"
|
|
16847
|
+
},
|
|
16848
|
+
manifest: {}
|
|
16849
|
+
},
|
|
16850
|
+
required: [
|
|
16851
|
+
"version",
|
|
16852
|
+
"action",
|
|
16853
|
+
"organizationId",
|
|
16854
|
+
"sourceCustomerId",
|
|
16855
|
+
"targetCustomerId",
|
|
16856
|
+
"evidenceRef",
|
|
16857
|
+
"provenance",
|
|
16858
|
+
"manifest"
|
|
16859
|
+
],
|
|
16860
|
+
additionalProperties: false
|
|
15748
16861
|
}
|
|
15749
16862
|
},
|
|
15750
16863
|
required: [
|
|
15751
|
-
"
|
|
15752
|
-
"
|
|
16864
|
+
"findingId",
|
|
16865
|
+
"expectedFingerprint"
|
|
15753
16866
|
],
|
|
15754
16867
|
additionalProperties: false
|
|
15755
|
-
}
|
|
15756
|
-
},
|
|
15757
|
-
outlit_merge_customers: {
|
|
15758
|
-
toolName: "outlit_merge_customers",
|
|
15759
|
-
commandId: "customer.merge",
|
|
15760
|
-
commandVersion: 1,
|
|
15761
|
-
ownerDomain: "identity",
|
|
15762
|
-
title: "Merge customers",
|
|
15763
|
-
description: "DANGEROUS execution with no supported undo. Preview or execute a merge of two exact records into the specified survivor; defaults to preview (dryRun:true). Without suggestionId, both records must be COMPANY. Any pair involving an INDIVIDUAL requires an eligible saved suggestionId for that exact pair. Execute only when authorized and absolutely certain both records represent the same customer; two company records must represent the same company. Similar names, related domains, shared participants, parent/subsidiary relationships or a suggested match are insufficient. If uncertain, do not execute. Execution moves customer data and access relationships and requires the reviewed previewToken, stable requestId and explicit merge permission. A preview grants no execution authority. Reuse identical request inputs for retries. Execution is asynchronous; queued does not mean complete. Outlit-owned agents cannot perform this operation.",
|
|
15764
|
-
annotations: {
|
|
15765
|
-
readOnlyHint: false,
|
|
15766
|
-
destructiveHint: true
|
|
15767
16868
|
},
|
|
15768
|
-
|
|
16869
|
+
outputSchema: {
|
|
15769
16870
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
15770
16871
|
type: "object",
|
|
15771
16872
|
properties: {
|
|
15772
|
-
|
|
16873
|
+
findingId: {
|
|
15773
16874
|
type: "string",
|
|
15774
16875
|
minLength: 1,
|
|
15775
16876
|
maxLength: 191
|
|
15776
16877
|
},
|
|
15777
|
-
|
|
16878
|
+
fingerprint: {
|
|
15778
16879
|
type: "string",
|
|
15779
16880
|
minLength: 1,
|
|
15780
16881
|
maxLength: 191
|
|
15781
16882
|
},
|
|
15782
|
-
|
|
16883
|
+
state: {
|
|
15783
16884
|
type: "string",
|
|
15784
|
-
|
|
15785
|
-
maxLength: 191,
|
|
15786
|
-
description: "Eligible saved suggestion for this exact pair. Required if either record is INDIVIDUAL; optional for two COMPANY records."
|
|
16885
|
+
const: "ready"
|
|
15787
16886
|
},
|
|
15788
|
-
|
|
16887
|
+
planDigest: {
|
|
15789
16888
|
type: "string",
|
|
15790
|
-
|
|
16889
|
+
pattern: "^[a-f0-9]{64}$"
|
|
15791
16890
|
},
|
|
15792
|
-
|
|
15793
|
-
|
|
15794
|
-
|
|
16891
|
+
action: {
|
|
16892
|
+
type: "string",
|
|
16893
|
+
enum: [
|
|
16894
|
+
"rehome_contact",
|
|
16895
|
+
"rehome_crm_account",
|
|
16896
|
+
"reattribute_stripe_customer",
|
|
16897
|
+
"rehome_source_corpus"
|
|
16898
|
+
]
|
|
15795
16899
|
},
|
|
15796
|
-
|
|
16900
|
+
sourceCustomerId: {
|
|
15797
16901
|
type: "string",
|
|
15798
16902
|
minLength: 1,
|
|
15799
|
-
maxLength:
|
|
16903
|
+
maxLength: 191
|
|
15800
16904
|
},
|
|
15801
|
-
|
|
16905
|
+
targetCustomerId: {
|
|
15802
16906
|
type: "string",
|
|
15803
16907
|
minLength: 1,
|
|
15804
16908
|
maxLength: 191
|
|
15805
|
-
}
|
|
15806
|
-
|
|
15807
|
-
required: [
|
|
15808
|
-
"survivingCustomerId",
|
|
15809
|
-
"duplicateCustomerId"
|
|
15810
|
-
],
|
|
15811
|
-
additionalProperties: false
|
|
15812
|
-
},
|
|
15813
|
-
outputSchema: {
|
|
15814
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
15815
|
-
oneOf: [
|
|
15816
|
-
{
|
|
16909
|
+
},
|
|
16910
|
+
impact: {
|
|
15817
16911
|
type: "object",
|
|
15818
16912
|
properties: {
|
|
15819
|
-
|
|
15820
|
-
type: "
|
|
15821
|
-
|
|
15822
|
-
|
|
15823
|
-
|
|
15824
|
-
|
|
15825
|
-
|
|
15826
|
-
|
|
15827
|
-
|
|
15828
|
-
|
|
15829
|
-
type: "string",
|
|
15830
|
-
minLength: 1,
|
|
15831
|
-
maxLength: 191
|
|
16913
|
+
movedCounts: {
|
|
16914
|
+
type: "object",
|
|
16915
|
+
propertyNames: {
|
|
16916
|
+
type: "string"
|
|
16917
|
+
},
|
|
16918
|
+
additionalProperties: {
|
|
16919
|
+
type: "integer",
|
|
16920
|
+
minimum: 0,
|
|
16921
|
+
maximum: 9007199254740991
|
|
16922
|
+
}
|
|
15832
16923
|
},
|
|
15833
|
-
|
|
15834
|
-
type: "
|
|
15835
|
-
|
|
15836
|
-
|
|
16924
|
+
protectedCustomerIds: {
|
|
16925
|
+
type: "array",
|
|
16926
|
+
items: {
|
|
16927
|
+
type: "string",
|
|
16928
|
+
minLength: 1,
|
|
16929
|
+
maxLength: 191
|
|
16930
|
+
}
|
|
15837
16931
|
},
|
|
15838
|
-
|
|
15839
|
-
type: "
|
|
15840
|
-
|
|
15841
|
-
|
|
16932
|
+
conflictingProviderIdentities: {
|
|
16933
|
+
type: "array",
|
|
16934
|
+
items: {
|
|
16935
|
+
type: "string"
|
|
16936
|
+
}
|
|
15842
16937
|
},
|
|
15843
|
-
|
|
16938
|
+
baselineContext: {
|
|
15844
16939
|
type: "object",
|
|
15845
16940
|
properties: {
|
|
15846
|
-
|
|
16941
|
+
v1MissingFacts: {
|
|
15847
16942
|
type: "integer",
|
|
15848
16943
|
minimum: 0,
|
|
15849
16944
|
maximum: 9007199254740991
|
|
15850
16945
|
},
|
|
15851
|
-
|
|
15852
|
-
type: "integer",
|
|
15853
|
-
minimum: 0,
|
|
15854
|
-
maximum: 9007199254740991
|
|
15855
|
-
},
|
|
15856
|
-
facts: {
|
|
16946
|
+
v1MissingSources: {
|
|
15857
16947
|
type: "integer",
|
|
15858
16948
|
minimum: 0,
|
|
15859
16949
|
maximum: 9007199254740991
|
|
15860
16950
|
},
|
|
15861
|
-
|
|
16951
|
+
v2MissingFacts: {
|
|
15862
16952
|
type: "integer",
|
|
15863
16953
|
minimum: 0,
|
|
15864
16954
|
maximum: 9007199254740991
|
|
15865
16955
|
},
|
|
15866
|
-
|
|
16956
|
+
v2MissingSources: {
|
|
15867
16957
|
type: "integer",
|
|
15868
16958
|
minimum: 0,
|
|
15869
16959
|
maximum: 9007199254740991
|
|
15870
16960
|
}
|
|
15871
16961
|
},
|
|
15872
16962
|
required: [
|
|
15873
|
-
"
|
|
15874
|
-
"
|
|
15875
|
-
"
|
|
15876
|
-
"
|
|
15877
|
-
"accessEntries"
|
|
16963
|
+
"v1MissingFacts",
|
|
16964
|
+
"v1MissingSources",
|
|
16965
|
+
"v2MissingFacts",
|
|
16966
|
+
"v2MissingSources"
|
|
15878
16967
|
],
|
|
15879
16968
|
additionalProperties: false
|
|
15880
|
-
},
|
|
15881
|
-
warnings: {
|
|
15882
|
-
maxItems: 30,
|
|
15883
|
-
type: "array",
|
|
15884
|
-
items: {
|
|
15885
|
-
type: "object",
|
|
15886
|
-
properties: {
|
|
15887
|
-
code: {
|
|
15888
|
-
type: "string",
|
|
15889
|
-
minLength: 1,
|
|
15890
|
-
maxLength: 100
|
|
15891
|
-
},
|
|
15892
|
-
message: {
|
|
15893
|
-
type: "string",
|
|
15894
|
-
maxLength: 1000
|
|
15895
|
-
}
|
|
15896
|
-
},
|
|
15897
|
-
required: [
|
|
15898
|
-
"code",
|
|
15899
|
-
"message"
|
|
15900
|
-
],
|
|
15901
|
-
additionalProperties: false
|
|
15902
|
-
}
|
|
15903
16969
|
}
|
|
15904
16970
|
},
|
|
15905
16971
|
required: [
|
|
15906
|
-
"
|
|
15907
|
-
"
|
|
15908
|
-
"
|
|
15909
|
-
"previewToken",
|
|
15910
|
-
"evaluatedAt",
|
|
15911
|
-
"impact",
|
|
15912
|
-
"warnings"
|
|
16972
|
+
"movedCounts",
|
|
16973
|
+
"protectedCustomerIds",
|
|
16974
|
+
"conflictingProviderIdentities"
|
|
15913
16975
|
],
|
|
15914
16976
|
additionalProperties: false
|
|
16977
|
+
}
|
|
16978
|
+
},
|
|
16979
|
+
required: [
|
|
16980
|
+
"findingId",
|
|
16981
|
+
"fingerprint",
|
|
16982
|
+
"state",
|
|
16983
|
+
"planDigest",
|
|
16984
|
+
"action",
|
|
16985
|
+
"sourceCustomerId",
|
|
16986
|
+
"targetCustomerId",
|
|
16987
|
+
"impact"
|
|
16988
|
+
],
|
|
16989
|
+
additionalProperties: false
|
|
16990
|
+
}
|
|
16991
|
+
},
|
|
16992
|
+
outlit_execute_scoped_repair: {
|
|
16993
|
+
toolName: "outlit_execute_scoped_repair",
|
|
16994
|
+
commandId: "integrity.scoped_repair.execute",
|
|
16995
|
+
commandVersion: 1,
|
|
16996
|
+
ownerDomain: "identity",
|
|
16997
|
+
title: "Execute scoped identity repair",
|
|
16998
|
+
description: "Execute only the saved exact plan identified by its digest. Requires identity write authority for a human or the customer_identity:merge API key grant, plus current access to every protected customer. Use resume:true only for the same admitted Stripe operation with a proven committed admission receipt, the same actor, and the same surface; it never reexecutes the SQL move. A pending or recovery_needed result is not verified. Outlit-hosted agents and internal apps cannot execute.",
|
|
16999
|
+
annotations: {
|
|
17000
|
+
readOnlyHint: false,
|
|
17001
|
+
destructiveHint: true
|
|
17002
|
+
},
|
|
17003
|
+
inputSchema: {
|
|
17004
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
17005
|
+
type: "object",
|
|
17006
|
+
properties: {
|
|
17007
|
+
findingId: {
|
|
17008
|
+
type: "string",
|
|
17009
|
+
minLength: 1,
|
|
17010
|
+
maxLength: 191
|
|
15915
17011
|
},
|
|
15916
|
-
{
|
|
15917
|
-
type: "
|
|
15918
|
-
|
|
15919
|
-
|
|
15920
|
-
|
|
15921
|
-
|
|
15922
|
-
|
|
15923
|
-
|
|
15924
|
-
|
|
15925
|
-
|
|
15926
|
-
|
|
15927
|
-
|
|
15928
|
-
|
|
15929
|
-
|
|
15930
|
-
|
|
15931
|
-
|
|
15932
|
-
|
|
15933
|
-
|
|
17012
|
+
planDigest: {
|
|
17013
|
+
type: "string",
|
|
17014
|
+
pattern: "^[a-f0-9]{64}$"
|
|
17015
|
+
},
|
|
17016
|
+
reason: {
|
|
17017
|
+
type: "string",
|
|
17018
|
+
minLength: 10,
|
|
17019
|
+
maxLength: 2000
|
|
17020
|
+
},
|
|
17021
|
+
resume: {
|
|
17022
|
+
default: false,
|
|
17023
|
+
type: "boolean"
|
|
17024
|
+
}
|
|
17025
|
+
},
|
|
17026
|
+
required: [
|
|
17027
|
+
"findingId",
|
|
17028
|
+
"planDigest",
|
|
17029
|
+
"reason"
|
|
17030
|
+
],
|
|
17031
|
+
additionalProperties: false
|
|
17032
|
+
},
|
|
17033
|
+
outputSchema: {
|
|
17034
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
17035
|
+
type: "object",
|
|
17036
|
+
properties: {
|
|
17037
|
+
findingId: {
|
|
17038
|
+
type: "string",
|
|
17039
|
+
minLength: 1,
|
|
17040
|
+
maxLength: 191
|
|
17041
|
+
},
|
|
17042
|
+
state: {
|
|
17043
|
+
type: "string",
|
|
17044
|
+
enum: [
|
|
17045
|
+
"ready",
|
|
17046
|
+
"admitted",
|
|
17047
|
+
"pending_verification",
|
|
17048
|
+
"recovery_needed",
|
|
17049
|
+
"manual_required",
|
|
17050
|
+
"blocked",
|
|
17051
|
+
"verified"
|
|
17052
|
+
]
|
|
17053
|
+
},
|
|
17054
|
+
operationId: {
|
|
17055
|
+
anyOf: [
|
|
17056
|
+
{
|
|
15934
17057
|
type: "string",
|
|
15935
17058
|
minLength: 1,
|
|
15936
17059
|
maxLength: 191
|
|
15937
17060
|
},
|
|
15938
|
-
|
|
15939
|
-
type: "
|
|
15940
|
-
|
|
15941
|
-
|
|
15942
|
-
|
|
15943
|
-
|
|
15944
|
-
|
|
15945
|
-
|
|
15946
|
-
|
|
15947
|
-
|
|
17061
|
+
{
|
|
17062
|
+
type: "null"
|
|
17063
|
+
}
|
|
17064
|
+
]
|
|
17065
|
+
},
|
|
17066
|
+
summary: {
|
|
17067
|
+
type: "string"
|
|
17068
|
+
},
|
|
17069
|
+
nextStep: {
|
|
17070
|
+
anyOf: [
|
|
17071
|
+
{
|
|
15948
17072
|
type: "string",
|
|
15949
|
-
|
|
15950
|
-
maxLength: 100
|
|
17073
|
+
maxLength: 200
|
|
15951
17074
|
},
|
|
15952
|
-
|
|
17075
|
+
{
|
|
17076
|
+
type: "null"
|
|
17077
|
+
}
|
|
17078
|
+
]
|
|
17079
|
+
},
|
|
17080
|
+
receipt: {
|
|
17081
|
+
anyOf: [
|
|
17082
|
+
{
|
|
15953
17083
|
type: "object",
|
|
15954
17084
|
properties: {
|
|
15955
|
-
|
|
17085
|
+
disposition: {
|
|
15956
17086
|
type: "string",
|
|
15957
|
-
|
|
15958
|
-
|
|
17087
|
+
enum: [
|
|
17088
|
+
"moved",
|
|
17089
|
+
"resumed",
|
|
17090
|
+
"noop",
|
|
17091
|
+
"partial",
|
|
17092
|
+
"refused",
|
|
17093
|
+
"failed"
|
|
17094
|
+
]
|
|
15959
17095
|
},
|
|
15960
|
-
|
|
15961
|
-
type: "
|
|
15962
|
-
|
|
17096
|
+
followThroughComplete: {
|
|
17097
|
+
type: "boolean"
|
|
17098
|
+
},
|
|
17099
|
+
admissionAuditIds: {
|
|
17100
|
+
type: "array",
|
|
17101
|
+
items: {
|
|
17102
|
+
type: "string",
|
|
17103
|
+
minLength: 1,
|
|
17104
|
+
maxLength: 191
|
|
17105
|
+
}
|
|
17106
|
+
},
|
|
17107
|
+
completionAuditIds: {
|
|
17108
|
+
type: "array",
|
|
17109
|
+
items: {
|
|
17110
|
+
type: "string",
|
|
17111
|
+
minLength: 1,
|
|
17112
|
+
maxLength: 191
|
|
17113
|
+
}
|
|
17114
|
+
},
|
|
17115
|
+
movedIds: {
|
|
17116
|
+
type: "object",
|
|
17117
|
+
propertyNames: {
|
|
17118
|
+
type: "string"
|
|
17119
|
+
},
|
|
17120
|
+
additionalProperties: {
|
|
17121
|
+
type: "array",
|
|
17122
|
+
items: {
|
|
17123
|
+
type: "string",
|
|
17124
|
+
minLength: 1,
|
|
17125
|
+
maxLength: 191
|
|
17126
|
+
}
|
|
17127
|
+
}
|
|
17128
|
+
},
|
|
17129
|
+
refusals: {
|
|
17130
|
+
type: "array",
|
|
17131
|
+
items: {
|
|
17132
|
+
type: "string"
|
|
17133
|
+
}
|
|
17134
|
+
},
|
|
17135
|
+
informationalObservations: {
|
|
17136
|
+
type: "array",
|
|
17137
|
+
items: {
|
|
17138
|
+
type: "string"
|
|
17139
|
+
}
|
|
15963
17140
|
}
|
|
15964
17141
|
},
|
|
15965
17142
|
required: [
|
|
15966
|
-
"
|
|
15967
|
-
"
|
|
17143
|
+
"disposition",
|
|
17144
|
+
"followThroughComplete",
|
|
17145
|
+
"admissionAuditIds",
|
|
17146
|
+
"completionAuditIds",
|
|
17147
|
+
"movedIds"
|
|
15968
17148
|
],
|
|
15969
17149
|
additionalProperties: false
|
|
17150
|
+
},
|
|
17151
|
+
{
|
|
17152
|
+
type: "null"
|
|
15970
17153
|
}
|
|
15971
|
-
|
|
15972
|
-
required: [
|
|
15973
|
-
"kind",
|
|
15974
|
-
"operationId",
|
|
15975
|
-
"survivingCustomerId",
|
|
15976
|
-
"duplicateCustomerId",
|
|
15977
|
-
"status",
|
|
15978
|
-
"phase"
|
|
15979
|
-
],
|
|
15980
|
-
additionalProperties: false
|
|
17154
|
+
]
|
|
15981
17155
|
}
|
|
15982
|
-
|
|
17156
|
+
},
|
|
17157
|
+
required: [
|
|
17158
|
+
"findingId",
|
|
17159
|
+
"state",
|
|
17160
|
+
"operationId",
|
|
17161
|
+
"summary",
|
|
17162
|
+
"nextStep",
|
|
17163
|
+
"receipt"
|
|
17164
|
+
],
|
|
17165
|
+
additionalProperties: false
|
|
15983
17166
|
}
|
|
15984
17167
|
},
|
|
15985
|
-
|
|
15986
|
-
toolName: "
|
|
15987
|
-
commandId: "
|
|
17168
|
+
outlit_verify_scoped_repair: {
|
|
17169
|
+
toolName: "outlit_verify_scoped_repair",
|
|
17170
|
+
commandId: "integrity.scoped_repair.verify",
|
|
15988
17171
|
commandVersion: 1,
|
|
15989
17172
|
ownerDomain: "identity",
|
|
15990
|
-
title: "
|
|
15991
|
-
description: "Read
|
|
17173
|
+
title: "Verify scoped identity repair",
|
|
17174
|
+
description: "Read the current saved command progress and, after a completed receipt, run live ownership, audit, billing and index verification. Queued, admitted, blocked and pending verification are not complete. Requires current access to every protected customer.",
|
|
15992
17175
|
annotations: {
|
|
15993
|
-
readOnlyHint:
|
|
17176
|
+
readOnlyHint: false,
|
|
15994
17177
|
destructiveHint: false
|
|
15995
17178
|
},
|
|
15996
17179
|
inputSchema: {
|
|
15997
17180
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
15998
17181
|
type: "object",
|
|
15999
17182
|
properties: {
|
|
16000
|
-
|
|
17183
|
+
findingId: {
|
|
16001
17184
|
type: "string",
|
|
16002
17185
|
minLength: 1,
|
|
16003
17186
|
maxLength: 191
|
|
16004
17187
|
}
|
|
16005
17188
|
},
|
|
16006
17189
|
required: [
|
|
16007
|
-
"
|
|
17190
|
+
"findingId"
|
|
16008
17191
|
],
|
|
16009
17192
|
additionalProperties: false
|
|
16010
17193
|
},
|
|
@@ -16012,66 +17195,191 @@ Returns column definitions and example queries for each view.`,
|
|
|
16012
17195
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16013
17196
|
type: "object",
|
|
16014
17197
|
properties: {
|
|
16015
|
-
|
|
16016
|
-
type: "string",
|
|
16017
|
-
const: "operation"
|
|
16018
|
-
},
|
|
16019
|
-
operationId: {
|
|
16020
|
-
type: "string",
|
|
16021
|
-
minLength: 1,
|
|
16022
|
-
maxLength: 191
|
|
16023
|
-
},
|
|
16024
|
-
survivingCustomerId: {
|
|
17198
|
+
findingId: {
|
|
16025
17199
|
type: "string",
|
|
16026
17200
|
minLength: 1,
|
|
16027
17201
|
maxLength: 191
|
|
16028
17202
|
},
|
|
16029
|
-
|
|
16030
|
-
type: "string",
|
|
16031
|
-
minLength: 1,
|
|
16032
|
-
maxLength: 191
|
|
16033
|
-
},
|
|
16034
|
-
status: {
|
|
17203
|
+
state: {
|
|
16035
17204
|
type: "string",
|
|
16036
17205
|
enum: [
|
|
16037
|
-
"
|
|
16038
|
-
"
|
|
16039
|
-
"
|
|
16040
|
-
"
|
|
17206
|
+
"ready",
|
|
17207
|
+
"admitted",
|
|
17208
|
+
"pending_verification",
|
|
17209
|
+
"recovery_needed",
|
|
17210
|
+
"manual_required",
|
|
17211
|
+
"blocked",
|
|
17212
|
+
"verified"
|
|
16041
17213
|
]
|
|
16042
17214
|
},
|
|
16043
|
-
|
|
16044
|
-
|
|
16045
|
-
|
|
16046
|
-
maxLength: 100
|
|
16047
|
-
},
|
|
16048
|
-
error: {
|
|
16049
|
-
type: "object",
|
|
16050
|
-
properties: {
|
|
16051
|
-
code: {
|
|
17215
|
+
operationId: {
|
|
17216
|
+
anyOf: [
|
|
17217
|
+
{
|
|
16052
17218
|
type: "string",
|
|
16053
17219
|
minLength: 1,
|
|
16054
|
-
maxLength:
|
|
17220
|
+
maxLength: 191
|
|
17221
|
+
},
|
|
17222
|
+
{
|
|
17223
|
+
type: "null"
|
|
17224
|
+
}
|
|
17225
|
+
]
|
|
17226
|
+
},
|
|
17227
|
+
summary: {
|
|
17228
|
+
type: "string"
|
|
17229
|
+
},
|
|
17230
|
+
nextStep: {
|
|
17231
|
+
anyOf: [
|
|
17232
|
+
{
|
|
17233
|
+
type: "string",
|
|
17234
|
+
maxLength: 200
|
|
17235
|
+
},
|
|
17236
|
+
{
|
|
17237
|
+
type: "null"
|
|
17238
|
+
}
|
|
17239
|
+
]
|
|
17240
|
+
},
|
|
17241
|
+
receipt: {
|
|
17242
|
+
anyOf: [
|
|
17243
|
+
{
|
|
17244
|
+
type: "object",
|
|
17245
|
+
properties: {
|
|
17246
|
+
disposition: {
|
|
17247
|
+
type: "string",
|
|
17248
|
+
enum: [
|
|
17249
|
+
"moved",
|
|
17250
|
+
"resumed",
|
|
17251
|
+
"noop",
|
|
17252
|
+
"partial",
|
|
17253
|
+
"refused",
|
|
17254
|
+
"failed"
|
|
17255
|
+
]
|
|
17256
|
+
},
|
|
17257
|
+
followThroughComplete: {
|
|
17258
|
+
type: "boolean"
|
|
17259
|
+
},
|
|
17260
|
+
admissionAuditIds: {
|
|
17261
|
+
type: "array",
|
|
17262
|
+
items: {
|
|
17263
|
+
type: "string",
|
|
17264
|
+
minLength: 1,
|
|
17265
|
+
maxLength: 191
|
|
17266
|
+
}
|
|
17267
|
+
},
|
|
17268
|
+
completionAuditIds: {
|
|
17269
|
+
type: "array",
|
|
17270
|
+
items: {
|
|
17271
|
+
type: "string",
|
|
17272
|
+
minLength: 1,
|
|
17273
|
+
maxLength: 191
|
|
17274
|
+
}
|
|
17275
|
+
},
|
|
17276
|
+
movedIds: {
|
|
17277
|
+
type: "object",
|
|
17278
|
+
propertyNames: {
|
|
17279
|
+
type: "string"
|
|
17280
|
+
},
|
|
17281
|
+
additionalProperties: {
|
|
17282
|
+
type: "array",
|
|
17283
|
+
items: {
|
|
17284
|
+
type: "string",
|
|
17285
|
+
minLength: 1,
|
|
17286
|
+
maxLength: 191
|
|
17287
|
+
}
|
|
17288
|
+
}
|
|
17289
|
+
},
|
|
17290
|
+
refusals: {
|
|
17291
|
+
type: "array",
|
|
17292
|
+
items: {
|
|
17293
|
+
type: "string"
|
|
17294
|
+
}
|
|
17295
|
+
},
|
|
17296
|
+
informationalObservations: {
|
|
17297
|
+
type: "array",
|
|
17298
|
+
items: {
|
|
17299
|
+
type: "string"
|
|
17300
|
+
}
|
|
17301
|
+
}
|
|
17302
|
+
},
|
|
17303
|
+
required: [
|
|
17304
|
+
"disposition",
|
|
17305
|
+
"followThroughComplete",
|
|
17306
|
+
"admissionAuditIds",
|
|
17307
|
+
"completionAuditIds",
|
|
17308
|
+
"movedIds"
|
|
17309
|
+
],
|
|
17310
|
+
additionalProperties: false
|
|
17311
|
+
},
|
|
17312
|
+
{
|
|
17313
|
+
type: "null"
|
|
17314
|
+
}
|
|
17315
|
+
]
|
|
17316
|
+
},
|
|
17317
|
+
verification: {
|
|
17318
|
+
anyOf: [
|
|
17319
|
+
{
|
|
17320
|
+
type: "object",
|
|
17321
|
+
properties: {
|
|
17322
|
+
outcome: {
|
|
17323
|
+
type: "string",
|
|
17324
|
+
enum: [
|
|
17325
|
+
"verified",
|
|
17326
|
+
"inconclusive"
|
|
17327
|
+
]
|
|
17328
|
+
},
|
|
17329
|
+
ownership: {
|
|
17330
|
+
type: "boolean"
|
|
17331
|
+
},
|
|
17332
|
+
derived: {
|
|
17333
|
+
type: "boolean"
|
|
17334
|
+
},
|
|
17335
|
+
indexed: {
|
|
17336
|
+
type: "boolean"
|
|
17337
|
+
},
|
|
17338
|
+
reconstruction: {
|
|
17339
|
+
type: "string",
|
|
17340
|
+
enum: [
|
|
17341
|
+
"complete",
|
|
17342
|
+
"pending",
|
|
17343
|
+
"baseline_gap"
|
|
17344
|
+
]
|
|
17345
|
+
},
|
|
17346
|
+
warnings: {
|
|
17347
|
+
type: "array",
|
|
17348
|
+
items: {
|
|
17349
|
+
type: "string"
|
|
17350
|
+
}
|
|
17351
|
+
},
|
|
17352
|
+
informationalObservations: {
|
|
17353
|
+
type: "array",
|
|
17354
|
+
items: {
|
|
17355
|
+
type: "string"
|
|
17356
|
+
}
|
|
17357
|
+
}
|
|
17358
|
+
},
|
|
17359
|
+
required: [
|
|
17360
|
+
"outcome",
|
|
17361
|
+
"ownership",
|
|
17362
|
+
"derived",
|
|
17363
|
+
"indexed",
|
|
17364
|
+
"reconstruction",
|
|
17365
|
+
"warnings"
|
|
17366
|
+
],
|
|
17367
|
+
additionalProperties: false
|
|
16055
17368
|
},
|
|
16056
|
-
|
|
16057
|
-
type: "
|
|
16058
|
-
maxLength: 1000
|
|
17369
|
+
{
|
|
17370
|
+
type: "null"
|
|
16059
17371
|
}
|
|
16060
|
-
|
|
16061
|
-
required: [
|
|
16062
|
-
"code",
|
|
16063
|
-
"message"
|
|
16064
|
-
],
|
|
16065
|
-
additionalProperties: false
|
|
17372
|
+
]
|
|
16066
17373
|
}
|
|
16067
17374
|
},
|
|
16068
17375
|
required: [
|
|
16069
|
-
"
|
|
17376
|
+
"findingId",
|
|
17377
|
+
"state",
|
|
16070
17378
|
"operationId",
|
|
16071
|
-
"
|
|
16072
|
-
"
|
|
16073
|
-
"
|
|
16074
|
-
"
|
|
17379
|
+
"summary",
|
|
17380
|
+
"nextStep",
|
|
17381
|
+
"receipt",
|
|
17382
|
+
"verification"
|
|
16075
17383
|
],
|
|
16076
17384
|
additionalProperties: false
|
|
16077
17385
|
}
|
|
@@ -16149,7 +17457,11 @@ Returns column definitions and example queries for each view.`,
|
|
|
16149
17457
|
"outlit_list_identity_merge_suggestions",
|
|
16150
17458
|
"outlit_reject_identity_merge_suggestion",
|
|
16151
17459
|
"outlit_merge_customers",
|
|
16152
|
-
"outlit_get_customer_merge_status"
|
|
17460
|
+
"outlit_get_customer_merge_status",
|
|
17461
|
+
"outlit_list_scoped_repairs",
|
|
17462
|
+
"outlit_preview_scoped_repair",
|
|
17463
|
+
"outlit_execute_scoped_repair",
|
|
17464
|
+
"outlit_verify_scoped_repair"
|
|
16153
17465
|
],
|
|
16154
17466
|
cli: [
|
|
16155
17467
|
"outlit_list_customers",
|
|
@@ -16198,7 +17510,11 @@ Returns column definitions and example queries for each view.`,
|
|
|
16198
17510
|
"outlit_list_identity_merge_suggestions",
|
|
16199
17511
|
"outlit_reject_identity_merge_suggestion",
|
|
16200
17512
|
"outlit_merge_customers",
|
|
16201
|
-
"outlit_get_customer_merge_status"
|
|
17513
|
+
"outlit_get_customer_merge_status",
|
|
17514
|
+
"outlit_list_scoped_repairs",
|
|
17515
|
+
"outlit_preview_scoped_repair",
|
|
17516
|
+
"outlit_execute_scoped_repair",
|
|
17517
|
+
"outlit_verify_scoped_repair"
|
|
16202
17518
|
]
|
|
16203
17519
|
};
|
|
16204
17520
|
toolGatewayTransport = {
|
|
@@ -16458,6 +17774,226 @@ Returns column definitions and example queries for each view.`,
|
|
|
16458
17774
|
],
|
|
16459
17775
|
additionalProperties: false
|
|
16460
17776
|
};
|
|
17777
|
+
apiKeyValidationSuccessSchemaV2 = {
|
|
17778
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
17779
|
+
type: "object",
|
|
17780
|
+
properties: {
|
|
17781
|
+
valid: {
|
|
17782
|
+
type: "boolean",
|
|
17783
|
+
const: true
|
|
17784
|
+
},
|
|
17785
|
+
organizationId: {
|
|
17786
|
+
type: "string"
|
|
17787
|
+
},
|
|
17788
|
+
createdById: {
|
|
17789
|
+
anyOf: [
|
|
17790
|
+
{
|
|
17791
|
+
type: "string"
|
|
17792
|
+
},
|
|
17793
|
+
{
|
|
17794
|
+
type: "null"
|
|
17795
|
+
}
|
|
17796
|
+
]
|
|
17797
|
+
},
|
|
17798
|
+
organization: {
|
|
17799
|
+
type: "object",
|
|
17800
|
+
properties: {
|
|
17801
|
+
id: {
|
|
17802
|
+
type: "string"
|
|
17803
|
+
},
|
|
17804
|
+
name: {
|
|
17805
|
+
anyOf: [
|
|
17806
|
+
{
|
|
17807
|
+
type: "string"
|
|
17808
|
+
},
|
|
17809
|
+
{
|
|
17810
|
+
type: "null"
|
|
17811
|
+
}
|
|
17812
|
+
]
|
|
17813
|
+
},
|
|
17814
|
+
slug: {
|
|
17815
|
+
anyOf: [
|
|
17816
|
+
{
|
|
17817
|
+
type: "string"
|
|
17818
|
+
},
|
|
17819
|
+
{
|
|
17820
|
+
type: "null"
|
|
17821
|
+
}
|
|
17822
|
+
]
|
|
17823
|
+
}
|
|
17824
|
+
},
|
|
17825
|
+
required: [
|
|
17826
|
+
"id",
|
|
17827
|
+
"name",
|
|
17828
|
+
"slug"
|
|
17829
|
+
],
|
|
17830
|
+
additionalProperties: false
|
|
17831
|
+
},
|
|
17832
|
+
createdBy: {
|
|
17833
|
+
anyOf: [
|
|
17834
|
+
{
|
|
17835
|
+
type: "object",
|
|
17836
|
+
properties: {
|
|
17837
|
+
id: {
|
|
17838
|
+
type: "string"
|
|
17839
|
+
},
|
|
17840
|
+
email: {
|
|
17841
|
+
type: "string"
|
|
17842
|
+
},
|
|
17843
|
+
name: {
|
|
17844
|
+
anyOf: [
|
|
17845
|
+
{
|
|
17846
|
+
type: "string"
|
|
17847
|
+
},
|
|
17848
|
+
{
|
|
17849
|
+
type: "null"
|
|
17850
|
+
}
|
|
17851
|
+
]
|
|
17852
|
+
}
|
|
17853
|
+
},
|
|
17854
|
+
required: [
|
|
17855
|
+
"id",
|
|
17856
|
+
"email",
|
|
17857
|
+
"name"
|
|
17858
|
+
],
|
|
17859
|
+
additionalProperties: false
|
|
17860
|
+
},
|
|
17861
|
+
{
|
|
17862
|
+
type: "null"
|
|
17863
|
+
}
|
|
17864
|
+
]
|
|
17865
|
+
},
|
|
17866
|
+
apiKey: {
|
|
17867
|
+
type: "object",
|
|
17868
|
+
properties: {
|
|
17869
|
+
id: {
|
|
17870
|
+
type: "string"
|
|
17871
|
+
},
|
|
17872
|
+
name: {
|
|
17873
|
+
type: "string"
|
|
17874
|
+
},
|
|
17875
|
+
prefix: {
|
|
17876
|
+
type: "string"
|
|
17877
|
+
},
|
|
17878
|
+
keyType: {
|
|
17879
|
+
type: "string",
|
|
17880
|
+
enum: [
|
|
17881
|
+
"api",
|
|
17882
|
+
"cli",
|
|
17883
|
+
"mcp",
|
|
17884
|
+
"ci"
|
|
17885
|
+
]
|
|
17886
|
+
},
|
|
17887
|
+
grants: {
|
|
17888
|
+
type: "array",
|
|
17889
|
+
items: {
|
|
17890
|
+
type: "string",
|
|
17891
|
+
enum: [
|
|
17892
|
+
"customer_intelligence:read",
|
|
17893
|
+
"workspace_members:read",
|
|
17894
|
+
"analytics:read",
|
|
17895
|
+
"destinations:manage",
|
|
17896
|
+
"behavior_metrics:manage",
|
|
17897
|
+
"integrations:connect_own",
|
|
17898
|
+
"integrations:manage",
|
|
17899
|
+
"activation:read",
|
|
17900
|
+
"activation:manage",
|
|
17901
|
+
"workspace_settings:read",
|
|
17902
|
+
"workspace_settings:manage",
|
|
17903
|
+
"customer_access:manage",
|
|
17904
|
+
"customer_identity:review",
|
|
17905
|
+
"customer_identity:merge"
|
|
17906
|
+
]
|
|
17907
|
+
}
|
|
17908
|
+
},
|
|
17909
|
+
createdAt: {
|
|
17910
|
+
type: "string",
|
|
17911
|
+
format: "date-time",
|
|
17912
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
17913
|
+
},
|
|
17914
|
+
lastUsedAt: {
|
|
17915
|
+
anyOf: [
|
|
17916
|
+
{
|
|
17917
|
+
type: "string",
|
|
17918
|
+
format: "date-time",
|
|
17919
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
17920
|
+
},
|
|
17921
|
+
{
|
|
17922
|
+
type: "null"
|
|
17923
|
+
}
|
|
17924
|
+
]
|
|
17925
|
+
},
|
|
17926
|
+
totalRequests: {
|
|
17927
|
+
type: "integer",
|
|
17928
|
+
minimum: 0,
|
|
17929
|
+
maximum: 9007199254740991
|
|
17930
|
+
},
|
|
17931
|
+
expiresAt: {
|
|
17932
|
+
anyOf: [
|
|
17933
|
+
{
|
|
17934
|
+
type: "string",
|
|
17935
|
+
format: "date-time",
|
|
17936
|
+
pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
|
|
17937
|
+
},
|
|
17938
|
+
{
|
|
17939
|
+
type: "null"
|
|
17940
|
+
}
|
|
17941
|
+
]
|
|
17942
|
+
}
|
|
17943
|
+
},
|
|
17944
|
+
required: [
|
|
17945
|
+
"id",
|
|
17946
|
+
"name",
|
|
17947
|
+
"prefix",
|
|
17948
|
+
"keyType",
|
|
17949
|
+
"grants",
|
|
17950
|
+
"createdAt",
|
|
17951
|
+
"lastUsedAt",
|
|
17952
|
+
"totalRequests",
|
|
17953
|
+
"expiresAt"
|
|
17954
|
+
],
|
|
17955
|
+
additionalProperties: false
|
|
17956
|
+
},
|
|
17957
|
+
authorization: {
|
|
17958
|
+
type: "object",
|
|
17959
|
+
properties: {
|
|
17960
|
+
grants: {
|
|
17961
|
+
type: "array",
|
|
17962
|
+
items: {
|
|
17963
|
+
type: "string",
|
|
17964
|
+
enum: [
|
|
17965
|
+
"customer_intelligence:read",
|
|
17966
|
+
"workspace_members:read",
|
|
17967
|
+
"analytics:read",
|
|
17968
|
+
"destinations:manage",
|
|
17969
|
+
"behavior_metrics:manage",
|
|
17970
|
+
"integrations:connect_own",
|
|
17971
|
+
"integrations:manage",
|
|
17972
|
+
"activation:read",
|
|
17973
|
+
"activation:manage",
|
|
17974
|
+
"workspace_settings:read",
|
|
17975
|
+
"workspace_settings:manage",
|
|
17976
|
+
"customer_access:manage",
|
|
17977
|
+
"customer_identity:review",
|
|
17978
|
+
"customer_identity:merge"
|
|
17979
|
+
]
|
|
17980
|
+
}
|
|
17981
|
+
}
|
|
17982
|
+
},
|
|
17983
|
+
required: [
|
|
17984
|
+
"grants"
|
|
17985
|
+
],
|
|
17986
|
+
additionalProperties: false
|
|
17987
|
+
}
|
|
17988
|
+
},
|
|
17989
|
+
required: [
|
|
17990
|
+
"valid",
|
|
17991
|
+
"organizationId",
|
|
17992
|
+
"createdById",
|
|
17993
|
+
"authorization"
|
|
17994
|
+
],
|
|
17995
|
+
additionalProperties: false
|
|
17996
|
+
};
|
|
16461
17997
|
toolGatewayErrorSchema = {
|
|
16462
17998
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
16463
17999
|
type: "object",
|
|
@@ -16744,6 +18280,33 @@ var init_client = __esm(() => {
|
|
|
16744
18280
|
cliToolNameSet = new Set(cliToolNames);
|
|
16745
18281
|
});
|
|
16746
18282
|
|
|
18283
|
+
// src/lib/key-expiry.ts
|
|
18284
|
+
function keyExpiryWarning(expiresAt, now = new Date) {
|
|
18285
|
+
if (!expiresAt)
|
|
18286
|
+
return null;
|
|
18287
|
+
const remainingMs = Date.parse(expiresAt) - now.getTime();
|
|
18288
|
+
if (Number.isNaN(remainingMs) || remainingMs <= 0)
|
|
18289
|
+
return null;
|
|
18290
|
+
if (remainingMs > KEY_EXPIRY_WARNING_DAYS * DAY_MS)
|
|
18291
|
+
return null;
|
|
18292
|
+
const days = Math.max(1, Math.ceil(remainingMs / DAY_MS));
|
|
18293
|
+
return `Warning: your Outlit API key expires in ${days} day${days === 1 ? "" : "s"}. Run \`outlit login\` to get a new one.
|
|
18294
|
+
`;
|
|
18295
|
+
}
|
|
18296
|
+
function warnIfKeyExpiresSoon(expiresAt) {
|
|
18297
|
+
if (warned)
|
|
18298
|
+
return;
|
|
18299
|
+
const warning = keyExpiryWarning(expiresAt);
|
|
18300
|
+
if (!warning)
|
|
18301
|
+
return;
|
|
18302
|
+
warned = true;
|
|
18303
|
+
process.stderr.write(warning);
|
|
18304
|
+
}
|
|
18305
|
+
var KEY_EXPIRY_WARNING_DAYS = 14, DAY_MS, warned = false;
|
|
18306
|
+
var init_key_expiry = __esm(() => {
|
|
18307
|
+
DAY_MS = 24 * 60 * 60 * 1000;
|
|
18308
|
+
});
|
|
18309
|
+
|
|
16747
18310
|
// src/lib/spinner.ts
|
|
16748
18311
|
function createSpinner(message) {
|
|
16749
18312
|
if (!isInteractive()) {
|
|
@@ -16878,7 +18441,8 @@ async function pingApiKey(apiKey) {
|
|
|
16878
18441
|
const response = await globalThis.fetch(url, {
|
|
16879
18442
|
method: apiKeyValidationTransport.method,
|
|
16880
18443
|
headers: {
|
|
16881
|
-
Authorization: `Bearer ${apiKey}
|
|
18444
|
+
Authorization: `Bearer ${apiKey}`,
|
|
18445
|
+
[apiKeyContractHeader]: "2"
|
|
16882
18446
|
}
|
|
16883
18447
|
});
|
|
16884
18448
|
const text = await response.text();
|
|
@@ -16893,8 +18457,13 @@ async function pingApiKey(apiKey) {
|
|
|
16893
18457
|
const message2 = matchesGeneratedJsonSchema(payload, apiKeyValidationFailureSchema) ? payload.error : undefined;
|
|
16894
18458
|
throw new ApiKeyValidationUnavailableError(message2);
|
|
16895
18459
|
}
|
|
16896
|
-
if (response.status === apiKeyValidationTransport.responseStatuses.success
|
|
16897
|
-
|
|
18460
|
+
if (response.status === apiKeyValidationTransport.responseStatuses.success) {
|
|
18461
|
+
if (matchesGeneratedJsonSchema(payload, apiKeyValidationSuccessSchemaV2)) {
|
|
18462
|
+
warnIfKeyExpiresSoon(payload.apiKey?.expiresAt);
|
|
18463
|
+
return payload;
|
|
18464
|
+
}
|
|
18465
|
+
if (matchesGeneratedJsonSchema(payload, apiKeyValidationSuccessSchema))
|
|
18466
|
+
return payload;
|
|
16898
18467
|
}
|
|
16899
18468
|
const message = matchesGeneratedJsonSchema(payload, apiKeyValidationFailureSchema) ? payload.error : text.length > 0 ? text : `API error (${response.status})`;
|
|
16900
18469
|
if (!response.ok || response.status === apiKeyValidationTransport.responseStatuses.invalid) {
|
|
@@ -16986,6 +18555,7 @@ var init_api = __esm(() => {
|
|
|
16986
18555
|
init_dist4();
|
|
16987
18556
|
init_client();
|
|
16988
18557
|
init_config();
|
|
18558
|
+
init_key_expiry();
|
|
16989
18559
|
init_output();
|
|
16990
18560
|
init_spinner();
|
|
16991
18561
|
init_table();
|
|
@@ -18254,11 +19824,11 @@ var init_list2 = __esm(() => {
|
|
|
18254
19824
|
},
|
|
18255
19825
|
"mrr-above": {
|
|
18256
19826
|
type: "string",
|
|
18257
|
-
description: "Filter by MRR above threshold in cents (e.g. 10000 = $100/mo)"
|
|
19827
|
+
description: "Filter by MRR above threshold, in currentMrr's units: cents for USD, EUR, GBP and CAD (e.g. 10000 = $100/mo in USD)"
|
|
18258
19828
|
},
|
|
18259
19829
|
"mrr-below": {
|
|
18260
19830
|
type: "string",
|
|
18261
|
-
description: "Filter by MRR below threshold in
|
|
19831
|
+
description: "Filter by MRR below threshold, in currentMrr's units"
|
|
18262
19832
|
},
|
|
18263
19833
|
"owner-id": {
|
|
18264
19834
|
type: "string",
|
|
@@ -23445,8 +25015,8 @@ var init_completions = __esm(() => {
|
|
|
23445
25015
|
...ACTIVITY_ORDER,
|
|
23446
25016
|
{ name: "--trait", desc: "Filter by trait key=value pairs" },
|
|
23447
25017
|
{ name: "--billing-status", desc: "Filter by billing status" },
|
|
23448
|
-
{ name: "--mrr-above", desc: "MRR above threshold (
|
|
23449
|
-
{ name: "--mrr-below", desc: "MRR below threshold (
|
|
25018
|
+
{ name: "--mrr-above", desc: "MRR above threshold (currentMrr units)" },
|
|
25019
|
+
{ name: "--mrr-below", desc: "MRR below threshold (currentMrr units)" },
|
|
23450
25020
|
{ name: "--owner-id", desc: "Filter by owner user ID" },
|
|
23451
25021
|
{ name: "--owner-email", desc: "Filter by owner email" },
|
|
23452
25022
|
{ name: "--has-owner", desc: "Only customers with an owner" },
|