@outlit/cli 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +2793 -741
- 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.
|
|
107
|
+
version: "3.1.0",
|
|
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.
|
|
150
|
+
"@outlit/tools": "^2.1.0",
|
|
151
151
|
citty: "^0.2.1"
|
|
152
152
|
},
|
|
153
153
|
devDependencies: {
|
|
@@ -1722,6 +1722,7 @@ var init_dist4 = __esm(() => {
|
|
|
1722
1722
|
"outlit_list_users",
|
|
1723
1723
|
"outlit_list_workspace_users",
|
|
1724
1724
|
"outlit_get_customer",
|
|
1725
|
+
"outlit_get_customer_relationship",
|
|
1725
1726
|
"outlit_assign_customer_owner",
|
|
1726
1727
|
"outlit_grant_customer_access",
|
|
1727
1728
|
"outlit_update_customer_access",
|
|
@@ -1751,9 +1752,12 @@ var init_dist4 = __esm(() => {
|
|
|
1751
1752
|
"outlit_update_customer_activation",
|
|
1752
1753
|
"outlit_get_workspace_settings",
|
|
1753
1754
|
"outlit_update_workspace_settings",
|
|
1754
|
-
"
|
|
1755
|
-
"
|
|
1756
|
-
"
|
|
1755
|
+
"outlit_list_features",
|
|
1756
|
+
"outlit_create_feature",
|
|
1757
|
+
"outlit_archive_feature",
|
|
1758
|
+
"outlit_get_customer_features",
|
|
1759
|
+
"outlit_list_attention_items",
|
|
1760
|
+
"outlit_get_attention_item"
|
|
1757
1761
|
];
|
|
1758
1762
|
publicToolContracts = {
|
|
1759
1763
|
outlit_list_customers: {
|
|
@@ -3256,6 +3260,157 @@ var init_dist4 = __esm(() => {
|
|
|
3256
3260
|
additionalProperties: false
|
|
3257
3261
|
}
|
|
3258
3262
|
},
|
|
3263
|
+
outlit_get_customer_relationship: {
|
|
3264
|
+
toolName: "outlit_get_customer_relationship",
|
|
3265
|
+
commandId: "customer.relationship.get",
|
|
3266
|
+
commandVersion: 1,
|
|
3267
|
+
ownerDomain: "customers",
|
|
3268
|
+
title: "Get Customer Relationship",
|
|
3269
|
+
description: "Get the bounded, evidence-backed relationship shown on a customer page. Returns a summary, categorized current statements with ISO observed-at timestamps when supported, source labels, and the compiled summary timestamp when available without raw facts, quotes, or internal status.",
|
|
3270
|
+
inputSchema: {
|
|
3271
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
3272
|
+
type: "object",
|
|
3273
|
+
properties: {
|
|
3274
|
+
customer: {
|
|
3275
|
+
type: "string",
|
|
3276
|
+
minLength: 1,
|
|
3277
|
+
maxLength: 500,
|
|
3278
|
+
description: "Customer ID, domain, or exact customer name to look up"
|
|
3279
|
+
}
|
|
3280
|
+
},
|
|
3281
|
+
required: [
|
|
3282
|
+
"customer"
|
|
3283
|
+
],
|
|
3284
|
+
additionalProperties: false
|
|
3285
|
+
},
|
|
3286
|
+
outputSchema: {
|
|
3287
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
3288
|
+
type: "object",
|
|
3289
|
+
properties: {
|
|
3290
|
+
customer: {
|
|
3291
|
+
type: "object",
|
|
3292
|
+
properties: {
|
|
3293
|
+
id: {
|
|
3294
|
+
type: "string"
|
|
3295
|
+
},
|
|
3296
|
+
name: {
|
|
3297
|
+
anyOf: [
|
|
3298
|
+
{
|
|
3299
|
+
type: "string"
|
|
3300
|
+
},
|
|
3301
|
+
{
|
|
3302
|
+
type: "null"
|
|
3303
|
+
}
|
|
3304
|
+
]
|
|
3305
|
+
},
|
|
3306
|
+
domain: {
|
|
3307
|
+
anyOf: [
|
|
3308
|
+
{
|
|
3309
|
+
type: "string"
|
|
3310
|
+
},
|
|
3311
|
+
{
|
|
3312
|
+
type: "null"
|
|
3313
|
+
}
|
|
3314
|
+
]
|
|
3315
|
+
}
|
|
3316
|
+
},
|
|
3317
|
+
required: [
|
|
3318
|
+
"id",
|
|
3319
|
+
"name",
|
|
3320
|
+
"domain"
|
|
3321
|
+
],
|
|
3322
|
+
additionalProperties: false
|
|
3323
|
+
},
|
|
3324
|
+
relationship: {
|
|
3325
|
+
type: "object",
|
|
3326
|
+
properties: {
|
|
3327
|
+
summary: {
|
|
3328
|
+
anyOf: [
|
|
3329
|
+
{
|
|
3330
|
+
type: "string",
|
|
3331
|
+
minLength: 1,
|
|
3332
|
+
maxLength: 240
|
|
3333
|
+
},
|
|
3334
|
+
{
|
|
3335
|
+
type: "null"
|
|
3336
|
+
}
|
|
3337
|
+
]
|
|
3338
|
+
},
|
|
3339
|
+
items: {
|
|
3340
|
+
maxItems: 8,
|
|
3341
|
+
type: "array",
|
|
3342
|
+
items: {
|
|
3343
|
+
type: "object",
|
|
3344
|
+
properties: {
|
|
3345
|
+
category: {
|
|
3346
|
+
type: "string",
|
|
3347
|
+
minLength: 1,
|
|
3348
|
+
maxLength: 120
|
|
3349
|
+
},
|
|
3350
|
+
statement: {
|
|
3351
|
+
type: "string",
|
|
3352
|
+
minLength: 1,
|
|
3353
|
+
maxLength: 500
|
|
3354
|
+
},
|
|
3355
|
+
observedAt: {
|
|
3356
|
+
anyOf: [
|
|
3357
|
+
{
|
|
3358
|
+
type: "string",
|
|
3359
|
+
format: "date-time",
|
|
3360
|
+
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))$"
|
|
3361
|
+
},
|
|
3362
|
+
{
|
|
3363
|
+
type: "null"
|
|
3364
|
+
}
|
|
3365
|
+
]
|
|
3366
|
+
},
|
|
3367
|
+
sourceLabels: {
|
|
3368
|
+
maxItems: 4,
|
|
3369
|
+
type: "array",
|
|
3370
|
+
items: {
|
|
3371
|
+
type: "string",
|
|
3372
|
+
minLength: 1,
|
|
3373
|
+
maxLength: 100
|
|
3374
|
+
}
|
|
3375
|
+
}
|
|
3376
|
+
},
|
|
3377
|
+
required: [
|
|
3378
|
+
"category",
|
|
3379
|
+
"statement",
|
|
3380
|
+
"observedAt",
|
|
3381
|
+
"sourceLabels"
|
|
3382
|
+
],
|
|
3383
|
+
additionalProperties: false
|
|
3384
|
+
}
|
|
3385
|
+
},
|
|
3386
|
+
updatedAt: {
|
|
3387
|
+
anyOf: [
|
|
3388
|
+
{
|
|
3389
|
+
type: "string",
|
|
3390
|
+
format: "date-time",
|
|
3391
|
+
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))$"
|
|
3392
|
+
},
|
|
3393
|
+
{
|
|
3394
|
+
type: "null"
|
|
3395
|
+
}
|
|
3396
|
+
]
|
|
3397
|
+
}
|
|
3398
|
+
},
|
|
3399
|
+
required: [
|
|
3400
|
+
"summary",
|
|
3401
|
+
"items",
|
|
3402
|
+
"updatedAt"
|
|
3403
|
+
],
|
|
3404
|
+
additionalProperties: false
|
|
3405
|
+
}
|
|
3406
|
+
},
|
|
3407
|
+
required: [
|
|
3408
|
+
"customer",
|
|
3409
|
+
"relationship"
|
|
3410
|
+
],
|
|
3411
|
+
additionalProperties: false
|
|
3412
|
+
}
|
|
3413
|
+
},
|
|
3259
3414
|
outlit_assign_customer_owner: {
|
|
3260
3415
|
toolName: "outlit_assign_customer_owner",
|
|
3261
3416
|
commandId: "customer.owner.assign",
|
|
@@ -3573,13 +3728,13 @@ var init_dist4 = __esm(() => {
|
|
|
3573
3728
|
]
|
|
3574
3729
|
},
|
|
3575
3730
|
startDate: {
|
|
3576
|
-
description: "Start of time window (ISO 8601, e.g. '2025-01-01T00:00:
|
|
3731
|
+
description: "Start of time window, inclusive (ISO 8601 UTC, e.g. '2025-01-01T00:00:00.000Z'). Cannot be used with timeframe.",
|
|
3577
3732
|
type: "string",
|
|
3578
3733
|
format: "date-time",
|
|
3579
3734
|
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))$"
|
|
3580
3735
|
},
|
|
3581
3736
|
endDate: {
|
|
3582
|
-
description: "End of time window (ISO 8601, e.g. '2025-01-31T23:59:
|
|
3737
|
+
description: "End of time window, inclusive of the instant it names (ISO 8601 UTC, e.g. '2025-01-31T23:59:59.999Z'). Use millisecond precision: timestamps are stored to the millisecond, so '...T23:59:59Z' includes only the first instant of that second and excludes the rest of it. Cannot be used with timeframe.",
|
|
3583
3738
|
type: "string",
|
|
3584
3739
|
format: "date-time",
|
|
3585
3740
|
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))$"
|
|
@@ -10457,17 +10612,34 @@ Returns column definitions and example queries for each view.`,
|
|
|
10457
10612
|
additionalProperties: false
|
|
10458
10613
|
}
|
|
10459
10614
|
},
|
|
10460
|
-
|
|
10461
|
-
toolName: "
|
|
10462
|
-
commandId: "
|
|
10615
|
+
outlit_list_features: {
|
|
10616
|
+
toolName: "outlit_list_features",
|
|
10617
|
+
commandId: "value_feature_workspace.get",
|
|
10463
10618
|
commandVersion: 1,
|
|
10464
|
-
ownerDomain: "
|
|
10465
|
-
title: "List
|
|
10466
|
-
description: "List
|
|
10619
|
+
ownerDomain: "value_features",
|
|
10620
|
+
title: "List Features",
|
|
10621
|
+
description: "List configured features, exact historical usage, eligible sources, and observed event candidates.",
|
|
10467
10622
|
inputSchema: {
|
|
10468
10623
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
10469
10624
|
type: "object",
|
|
10470
|
-
properties: {
|
|
10625
|
+
properties: {
|
|
10626
|
+
sourceKey: {
|
|
10627
|
+
type: "string",
|
|
10628
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
10629
|
+
},
|
|
10630
|
+
weeks: {
|
|
10631
|
+
default: 12,
|
|
10632
|
+
type: "integer",
|
|
10633
|
+
minimum: 1,
|
|
10634
|
+
maximum: 53
|
|
10635
|
+
},
|
|
10636
|
+
candidateLimit: {
|
|
10637
|
+
default: 100,
|
|
10638
|
+
type: "integer",
|
|
10639
|
+
minimum: 1,
|
|
10640
|
+
maximum: 100
|
|
10641
|
+
}
|
|
10642
|
+
},
|
|
10471
10643
|
additionalProperties: false
|
|
10472
10644
|
},
|
|
10473
10645
|
outputSchema: {
|
|
@@ -10513,487 +10685,2022 @@ Returns column definitions and example queries for each view.`,
|
|
|
10513
10685
|
],
|
|
10514
10686
|
additionalProperties: false
|
|
10515
10687
|
}
|
|
10516
|
-
}
|
|
10517
|
-
},
|
|
10518
|
-
required: [
|
|
10519
|
-
"sources"
|
|
10520
|
-
],
|
|
10521
|
-
additionalProperties: false
|
|
10522
|
-
}
|
|
10523
|
-
},
|
|
10524
|
-
outlit_list_behavior_metric_events: {
|
|
10525
|
-
toolName: "outlit_list_behavior_metric_events",
|
|
10526
|
-
commandId: "behavior_metric_event.list",
|
|
10527
|
-
commandVersion: 1,
|
|
10528
|
-
ownerDomain: "behavior_metrics",
|
|
10529
|
-
title: "List Behavior Metric Events",
|
|
10530
|
-
description: "List attributed event candidates for a Behavior Metric source.",
|
|
10531
|
-
inputSchema: {
|
|
10532
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
10533
|
-
type: "object",
|
|
10534
|
-
properties: {
|
|
10535
|
-
sourceKey: {
|
|
10536
|
-
type: "string",
|
|
10537
|
-
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
10538
10688
|
},
|
|
10539
|
-
|
|
10540
|
-
|
|
10541
|
-
|
|
10542
|
-
|
|
10543
|
-
|
|
10689
|
+
selectedSourceKey: {
|
|
10690
|
+
anyOf: [
|
|
10691
|
+
{
|
|
10692
|
+
type: "string",
|
|
10693
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
10694
|
+
},
|
|
10695
|
+
{
|
|
10696
|
+
type: "null"
|
|
10697
|
+
}
|
|
10698
|
+
]
|
|
10544
10699
|
},
|
|
10545
|
-
|
|
10546
|
-
default: 100,
|
|
10700
|
+
workspaceActiveFeatureCount: {
|
|
10547
10701
|
type: "integer",
|
|
10548
|
-
minimum:
|
|
10549
|
-
maximum:
|
|
10550
|
-
}
|
|
10551
|
-
|
|
10552
|
-
|
|
10553
|
-
"sourceKey"
|
|
10554
|
-
],
|
|
10555
|
-
additionalProperties: false
|
|
10556
|
-
},
|
|
10557
|
-
outputSchema: {
|
|
10558
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
10559
|
-
type: "object",
|
|
10560
|
-
properties: {
|
|
10561
|
-
events: {
|
|
10702
|
+
minimum: 0,
|
|
10703
|
+
maximum: 9007199254740991
|
|
10704
|
+
},
|
|
10705
|
+
features: {
|
|
10706
|
+
maxItems: 100,
|
|
10562
10707
|
type: "array",
|
|
10563
10708
|
items: {
|
|
10564
10709
|
type: "object",
|
|
10565
10710
|
properties: {
|
|
10566
|
-
|
|
10711
|
+
id: {
|
|
10567
10712
|
type: "string",
|
|
10568
|
-
|
|
10569
|
-
maxLength: 191
|
|
10713
|
+
pattern: "^value_feature_v1_[a-f0-9]{32}$"
|
|
10570
10714
|
},
|
|
10571
|
-
|
|
10572
|
-
type: "
|
|
10573
|
-
|
|
10574
|
-
maximum: 9007199254740991
|
|
10715
|
+
revision: {
|
|
10716
|
+
type: "string",
|
|
10717
|
+
pattern: "^value_feature_revision_v1_[a-f0-9]{32}$"
|
|
10575
10718
|
},
|
|
10576
|
-
|
|
10577
|
-
type: "
|
|
10578
|
-
|
|
10579
|
-
maximum: 9007199254740991
|
|
10719
|
+
sourceKey: {
|
|
10720
|
+
type: "string",
|
|
10721
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
10580
10722
|
},
|
|
10581
|
-
|
|
10582
|
-
type: "
|
|
10583
|
-
|
|
10584
|
-
|
|
10723
|
+
featureKey: {
|
|
10724
|
+
type: "string",
|
|
10725
|
+
maxLength: 64,
|
|
10726
|
+
pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$"
|
|
10585
10727
|
},
|
|
10586
|
-
|
|
10587
|
-
|
|
10588
|
-
|
|
10589
|
-
|
|
10590
|
-
|
|
10591
|
-
|
|
10592
|
-
maxLength: 191
|
|
10593
|
-
}
|
|
10594
|
-
}
|
|
10595
|
-
},
|
|
10596
|
-
required: [
|
|
10597
|
-
"eventName",
|
|
10598
|
-
"eventCount",
|
|
10599
|
-
"distinctCustomers",
|
|
10600
|
-
"activeWeeks",
|
|
10601
|
-
"propertyKeys"
|
|
10602
|
-
],
|
|
10603
|
-
additionalProperties: false
|
|
10604
|
-
}
|
|
10605
|
-
},
|
|
10606
|
-
truncated: {
|
|
10607
|
-
type: "boolean"
|
|
10608
|
-
}
|
|
10609
|
-
},
|
|
10610
|
-
required: [
|
|
10611
|
-
"events",
|
|
10612
|
-
"truncated"
|
|
10613
|
-
],
|
|
10614
|
-
additionalProperties: false
|
|
10615
|
-
}
|
|
10616
|
-
},
|
|
10617
|
-
outlit_create_behavior_metric: {
|
|
10618
|
-
toolName: "outlit_create_behavior_metric",
|
|
10619
|
-
commandId: "behavior_metric.create",
|
|
10620
|
-
commandVersion: 1,
|
|
10621
|
-
ownerDomain: "behavior_metrics",
|
|
10622
|
-
title: "Create Behavior Metric",
|
|
10623
|
-
description: "Create or idempotently return an event-based Behavior Metric in ENABLED and SHADOW.",
|
|
10624
|
-
inputSchema: {
|
|
10625
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
10626
|
-
type: "object",
|
|
10627
|
-
properties: {
|
|
10628
|
-
sourceKey: {
|
|
10629
|
-
type: "string",
|
|
10630
|
-
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
10631
|
-
},
|
|
10632
|
-
eventName: {
|
|
10633
|
-
type: "string",
|
|
10634
|
-
minLength: 1,
|
|
10635
|
-
maxLength: 191
|
|
10636
|
-
},
|
|
10637
|
-
behaviorKey: {
|
|
10638
|
-
type: "string",
|
|
10639
|
-
maxLength: 64,
|
|
10640
|
-
pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$"
|
|
10641
|
-
},
|
|
10642
|
-
label: {
|
|
10643
|
-
type: "string",
|
|
10644
|
-
minLength: 1,
|
|
10645
|
-
maxLength: 255
|
|
10646
|
-
},
|
|
10647
|
-
propertyFilters: {
|
|
10648
|
-
default: [],
|
|
10649
|
-
maxItems: 5,
|
|
10650
|
-
type: "array",
|
|
10651
|
-
items: {
|
|
10652
|
-
oneOf: [
|
|
10653
|
-
{
|
|
10728
|
+
name: {
|
|
10729
|
+
type: "string",
|
|
10730
|
+
minLength: 1,
|
|
10731
|
+
maxLength: 255
|
|
10732
|
+
},
|
|
10733
|
+
rule: {
|
|
10654
10734
|
type: "object",
|
|
10655
10735
|
properties: {
|
|
10656
|
-
|
|
10736
|
+
eventName: {
|
|
10657
10737
|
type: "string",
|
|
10658
10738
|
minLength: 1,
|
|
10659
10739
|
maxLength: 191
|
|
10660
10740
|
},
|
|
10661
|
-
|
|
10662
|
-
|
|
10663
|
-
|
|
10664
|
-
|
|
10665
|
-
|
|
10666
|
-
|
|
10667
|
-
|
|
10741
|
+
propertyFilters: {
|
|
10742
|
+
maxItems: 5,
|
|
10743
|
+
type: "array",
|
|
10744
|
+
items: {
|
|
10745
|
+
oneOf: [
|
|
10746
|
+
{
|
|
10747
|
+
type: "object",
|
|
10748
|
+
properties: {
|
|
10749
|
+
property: {
|
|
10750
|
+
type: "string",
|
|
10751
|
+
minLength: 1,
|
|
10752
|
+
maxLength: 191
|
|
10753
|
+
},
|
|
10754
|
+
operator: {
|
|
10755
|
+
type: "string",
|
|
10756
|
+
const: "equals"
|
|
10757
|
+
},
|
|
10758
|
+
value: {
|
|
10759
|
+
oneOf: [
|
|
10760
|
+
{
|
|
10761
|
+
type: "object",
|
|
10762
|
+
properties: {
|
|
10763
|
+
type: {
|
|
10764
|
+
type: "string",
|
|
10765
|
+
const: "string"
|
|
10766
|
+
},
|
|
10767
|
+
value: {
|
|
10768
|
+
type: "string",
|
|
10769
|
+
maxLength: 191
|
|
10770
|
+
}
|
|
10771
|
+
},
|
|
10772
|
+
required: [
|
|
10773
|
+
"type",
|
|
10774
|
+
"value"
|
|
10775
|
+
],
|
|
10776
|
+
additionalProperties: false
|
|
10777
|
+
},
|
|
10778
|
+
{
|
|
10779
|
+
type: "object",
|
|
10780
|
+
properties: {
|
|
10781
|
+
type: {
|
|
10782
|
+
type: "string",
|
|
10783
|
+
const: "number"
|
|
10784
|
+
},
|
|
10785
|
+
value: {
|
|
10786
|
+
type: "number",
|
|
10787
|
+
minimum: -9007199254740991,
|
|
10788
|
+
maximum: 9007199254740991
|
|
10789
|
+
}
|
|
10790
|
+
},
|
|
10791
|
+
required: [
|
|
10792
|
+
"type",
|
|
10793
|
+
"value"
|
|
10794
|
+
],
|
|
10795
|
+
additionalProperties: false
|
|
10796
|
+
},
|
|
10797
|
+
{
|
|
10798
|
+
type: "object",
|
|
10799
|
+
properties: {
|
|
10800
|
+
type: {
|
|
10801
|
+
type: "string",
|
|
10802
|
+
const: "boolean"
|
|
10803
|
+
},
|
|
10804
|
+
value: {
|
|
10805
|
+
type: "boolean"
|
|
10806
|
+
}
|
|
10807
|
+
},
|
|
10808
|
+
required: [
|
|
10809
|
+
"type",
|
|
10810
|
+
"value"
|
|
10811
|
+
],
|
|
10812
|
+
additionalProperties: false
|
|
10813
|
+
}
|
|
10814
|
+
]
|
|
10815
|
+
}
|
|
10816
|
+
},
|
|
10817
|
+
required: [
|
|
10818
|
+
"property",
|
|
10819
|
+
"operator",
|
|
10820
|
+
"value"
|
|
10821
|
+
],
|
|
10822
|
+
additionalProperties: false
|
|
10823
|
+
},
|
|
10824
|
+
{
|
|
10825
|
+
type: "object",
|
|
10826
|
+
properties: {
|
|
10827
|
+
property: {
|
|
10828
|
+
type: "string",
|
|
10829
|
+
minLength: 1,
|
|
10830
|
+
maxLength: 191
|
|
10831
|
+
},
|
|
10832
|
+
operator: {
|
|
10833
|
+
type: "string",
|
|
10834
|
+
const: "exists"
|
|
10835
|
+
}
|
|
10836
|
+
},
|
|
10837
|
+
required: [
|
|
10838
|
+
"property",
|
|
10839
|
+
"operator"
|
|
10840
|
+
],
|
|
10841
|
+
additionalProperties: false
|
|
10842
|
+
}
|
|
10843
|
+
]
|
|
10844
|
+
}
|
|
10845
|
+
}
|
|
10846
|
+
},
|
|
10847
|
+
required: [
|
|
10848
|
+
"eventName",
|
|
10849
|
+
"propertyFilters"
|
|
10850
|
+
],
|
|
10851
|
+
additionalProperties: false
|
|
10852
|
+
},
|
|
10853
|
+
evidence: {
|
|
10854
|
+
oneOf: [
|
|
10855
|
+
{
|
|
10856
|
+
type: "object",
|
|
10857
|
+
properties: {
|
|
10858
|
+
window: {
|
|
10668
10859
|
type: "object",
|
|
10669
10860
|
properties: {
|
|
10670
|
-
|
|
10861
|
+
startAt: {
|
|
10671
10862
|
type: "string",
|
|
10672
|
-
|
|
10863
|
+
format: "date-time",
|
|
10864
|
+
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)))$"
|
|
10673
10865
|
},
|
|
10674
|
-
|
|
10866
|
+
endAt: {
|
|
10675
10867
|
type: "string",
|
|
10676
|
-
|
|
10868
|
+
format: "date-time",
|
|
10869
|
+
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)))$"
|
|
10677
10870
|
}
|
|
10678
10871
|
},
|
|
10679
10872
|
required: [
|
|
10680
|
-
"
|
|
10681
|
-
"
|
|
10873
|
+
"startAt",
|
|
10874
|
+
"endAt"
|
|
10682
10875
|
],
|
|
10683
10876
|
additionalProperties: false
|
|
10684
10877
|
},
|
|
10685
|
-
{
|
|
10686
|
-
type: "
|
|
10687
|
-
|
|
10688
|
-
|
|
10878
|
+
coverage: {
|
|
10879
|
+
type: "string",
|
|
10880
|
+
enum: [
|
|
10881
|
+
"complete",
|
|
10882
|
+
"partial"
|
|
10883
|
+
]
|
|
10884
|
+
},
|
|
10885
|
+
eventCount: {
|
|
10886
|
+
type: "integer",
|
|
10887
|
+
minimum: 0,
|
|
10888
|
+
maximum: 9007199254740991
|
|
10889
|
+
},
|
|
10890
|
+
activeDays: {
|
|
10891
|
+
type: "integer",
|
|
10892
|
+
minimum: 0,
|
|
10893
|
+
maximum: 9007199254740991
|
|
10894
|
+
},
|
|
10895
|
+
activeWeeks: {
|
|
10896
|
+
type: "integer",
|
|
10897
|
+
minimum: 0,
|
|
10898
|
+
maximum: 53
|
|
10899
|
+
},
|
|
10900
|
+
firstObservedAt: {
|
|
10901
|
+
anyOf: [
|
|
10902
|
+
{
|
|
10689
10903
|
type: "string",
|
|
10690
|
-
|
|
10904
|
+
format: "date-time",
|
|
10905
|
+
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)))$"
|
|
10691
10906
|
},
|
|
10692
|
-
|
|
10693
|
-
type: "
|
|
10694
|
-
minimum: -9007199254740991,
|
|
10695
|
-
maximum: 9007199254740991
|
|
10907
|
+
{
|
|
10908
|
+
type: "null"
|
|
10696
10909
|
}
|
|
10697
|
-
|
|
10698
|
-
required: [
|
|
10699
|
-
"type",
|
|
10700
|
-
"value"
|
|
10701
|
-
],
|
|
10702
|
-
additionalProperties: false
|
|
10910
|
+
]
|
|
10703
10911
|
},
|
|
10704
|
-
{
|
|
10912
|
+
lastObservedAt: {
|
|
10913
|
+
anyOf: [
|
|
10914
|
+
{
|
|
10915
|
+
type: "string",
|
|
10916
|
+
format: "date-time",
|
|
10917
|
+
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)))$"
|
|
10918
|
+
},
|
|
10919
|
+
{
|
|
10920
|
+
type: "null"
|
|
10921
|
+
}
|
|
10922
|
+
]
|
|
10923
|
+
},
|
|
10924
|
+
distinctCustomers: {
|
|
10925
|
+
type: "integer",
|
|
10926
|
+
minimum: 0,
|
|
10927
|
+
maximum: 9007199254740991
|
|
10928
|
+
}
|
|
10929
|
+
},
|
|
10930
|
+
required: [
|
|
10931
|
+
"window",
|
|
10932
|
+
"coverage",
|
|
10933
|
+
"eventCount",
|
|
10934
|
+
"activeDays",
|
|
10935
|
+
"activeWeeks",
|
|
10936
|
+
"firstObservedAt",
|
|
10937
|
+
"lastObservedAt",
|
|
10938
|
+
"distinctCustomers"
|
|
10939
|
+
],
|
|
10940
|
+
additionalProperties: false
|
|
10941
|
+
},
|
|
10942
|
+
{
|
|
10943
|
+
type: "object",
|
|
10944
|
+
properties: {
|
|
10945
|
+
window: {
|
|
10705
10946
|
type: "object",
|
|
10706
10947
|
properties: {
|
|
10707
|
-
|
|
10948
|
+
startAt: {
|
|
10708
10949
|
type: "string",
|
|
10709
|
-
|
|
10950
|
+
format: "date-time",
|
|
10951
|
+
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)))$"
|
|
10710
10952
|
},
|
|
10711
|
-
|
|
10712
|
-
type: "
|
|
10953
|
+
endAt: {
|
|
10954
|
+
type: "string",
|
|
10955
|
+
format: "date-time",
|
|
10956
|
+
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)))$"
|
|
10713
10957
|
}
|
|
10714
10958
|
},
|
|
10715
10959
|
required: [
|
|
10716
|
-
"
|
|
10717
|
-
"
|
|
10960
|
+
"startAt",
|
|
10961
|
+
"endAt"
|
|
10718
10962
|
],
|
|
10719
10963
|
additionalProperties: false
|
|
10964
|
+
},
|
|
10965
|
+
coverage: {
|
|
10966
|
+
type: "string",
|
|
10967
|
+
const: "unavailable"
|
|
10968
|
+
},
|
|
10969
|
+
reason: {
|
|
10970
|
+
type: "string",
|
|
10971
|
+
enum: [
|
|
10972
|
+
"SOURCE_BLOCKED",
|
|
10973
|
+
"SOURCE_NOT_READY",
|
|
10974
|
+
"QUERY_FAILED"
|
|
10975
|
+
]
|
|
10720
10976
|
}
|
|
10721
|
-
|
|
10722
|
-
|
|
10723
|
-
|
|
10724
|
-
|
|
10725
|
-
|
|
10726
|
-
|
|
10727
|
-
|
|
10728
|
-
],
|
|
10729
|
-
additionalProperties: false
|
|
10730
|
-
},
|
|
10731
|
-
{
|
|
10732
|
-
type: "object",
|
|
10733
|
-
properties: {
|
|
10734
|
-
property: {
|
|
10735
|
-
type: "string",
|
|
10736
|
-
minLength: 1,
|
|
10737
|
-
maxLength: 191
|
|
10738
|
-
},
|
|
10739
|
-
operator: {
|
|
10740
|
-
type: "string",
|
|
10741
|
-
const: "exists"
|
|
10977
|
+
},
|
|
10978
|
+
required: [
|
|
10979
|
+
"window",
|
|
10980
|
+
"coverage",
|
|
10981
|
+
"reason"
|
|
10982
|
+
],
|
|
10983
|
+
additionalProperties: false
|
|
10742
10984
|
}
|
|
10743
|
-
|
|
10744
|
-
required: [
|
|
10745
|
-
"property",
|
|
10746
|
-
"operator"
|
|
10747
|
-
],
|
|
10748
|
-
additionalProperties: false
|
|
10985
|
+
]
|
|
10749
10986
|
}
|
|
10750
|
-
|
|
10987
|
+
},
|
|
10988
|
+
required: [
|
|
10989
|
+
"id",
|
|
10990
|
+
"revision",
|
|
10991
|
+
"sourceKey",
|
|
10992
|
+
"featureKey",
|
|
10993
|
+
"name",
|
|
10994
|
+
"rule",
|
|
10995
|
+
"evidence"
|
|
10996
|
+
],
|
|
10997
|
+
additionalProperties: false
|
|
10751
10998
|
}
|
|
10752
|
-
}
|
|
10753
|
-
},
|
|
10754
|
-
required: [
|
|
10755
|
-
"sourceKey",
|
|
10756
|
-
"eventName",
|
|
10757
|
-
"behaviorKey",
|
|
10758
|
-
"label"
|
|
10759
|
-
],
|
|
10760
|
-
additionalProperties: false
|
|
10761
|
-
},
|
|
10762
|
-
outputSchema: {
|
|
10763
|
-
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
10764
|
-
type: "object",
|
|
10765
|
-
properties: {
|
|
10766
|
-
created: {
|
|
10767
|
-
type: "boolean"
|
|
10768
10999
|
},
|
|
10769
|
-
|
|
10770
|
-
|
|
10771
|
-
|
|
10772
|
-
|
|
10773
|
-
|
|
10774
|
-
|
|
10775
|
-
|
|
10776
|
-
|
|
10777
|
-
|
|
10778
|
-
|
|
10779
|
-
|
|
10780
|
-
|
|
10781
|
-
|
|
10782
|
-
|
|
10783
|
-
|
|
10784
|
-
|
|
10785
|
-
},
|
|
10786
|
-
eventSelection: {
|
|
10787
|
-
oneOf: [
|
|
10788
|
-
{
|
|
10789
|
-
type: "object",
|
|
10790
|
-
properties: {
|
|
10791
|
-
mode: {
|
|
10792
|
-
type: "string",
|
|
10793
|
-
const: "exact_event_names"
|
|
10794
|
-
},
|
|
10795
|
-
eventNames: {
|
|
10796
|
-
minItems: 1,
|
|
10797
|
-
maxItems: 1,
|
|
10798
|
-
type: "array",
|
|
10799
|
-
items: {
|
|
11000
|
+
candidates: {
|
|
11001
|
+
oneOf: [
|
|
11002
|
+
{
|
|
11003
|
+
type: "object",
|
|
11004
|
+
properties: {
|
|
11005
|
+
status: {
|
|
11006
|
+
type: "string",
|
|
11007
|
+
const: "ready"
|
|
11008
|
+
},
|
|
11009
|
+
items: {
|
|
11010
|
+
maxItems: 100,
|
|
11011
|
+
type: "array",
|
|
11012
|
+
items: {
|
|
11013
|
+
type: "object",
|
|
11014
|
+
properties: {
|
|
11015
|
+
eventName: {
|
|
10800
11016
|
type: "string",
|
|
10801
11017
|
minLength: 1,
|
|
10802
11018
|
maxLength: 191
|
|
10803
|
-
}
|
|
10804
|
-
|
|
10805
|
-
|
|
10806
|
-
|
|
10807
|
-
|
|
10808
|
-
|
|
10809
|
-
|
|
10810
|
-
|
|
10811
|
-
|
|
10812
|
-
|
|
10813
|
-
|
|
10814
|
-
|
|
10815
|
-
|
|
10816
|
-
|
|
10817
|
-
|
|
11019
|
+
},
|
|
11020
|
+
eventCount: {
|
|
11021
|
+
type: "integer",
|
|
11022
|
+
minimum: 0,
|
|
11023
|
+
maximum: 9007199254740991
|
|
11024
|
+
},
|
|
11025
|
+
distinctCustomers: {
|
|
11026
|
+
type: "integer",
|
|
11027
|
+
minimum: 0,
|
|
11028
|
+
maximum: 9007199254740991
|
|
11029
|
+
},
|
|
11030
|
+
activeWeeks: {
|
|
11031
|
+
type: "integer",
|
|
11032
|
+
minimum: 1,
|
|
11033
|
+
maximum: 53
|
|
11034
|
+
},
|
|
11035
|
+
propertyKeys: {
|
|
11036
|
+
maxItems: 10,
|
|
11037
|
+
type: "array",
|
|
11038
|
+
items: {
|
|
11039
|
+
type: "string",
|
|
11040
|
+
minLength: 1,
|
|
11041
|
+
maxLength: 191
|
|
11042
|
+
}
|
|
11043
|
+
}
|
|
10818
11044
|
},
|
|
10819
|
-
|
|
10820
|
-
|
|
10821
|
-
|
|
10822
|
-
|
|
11045
|
+
required: [
|
|
11046
|
+
"eventName",
|
|
11047
|
+
"eventCount",
|
|
11048
|
+
"distinctCustomers",
|
|
11049
|
+
"activeWeeks",
|
|
11050
|
+
"propertyKeys"
|
|
11051
|
+
],
|
|
11052
|
+
additionalProperties: false
|
|
11053
|
+
}
|
|
11054
|
+
},
|
|
11055
|
+
truncated: {
|
|
11056
|
+
type: "boolean"
|
|
11057
|
+
}
|
|
11058
|
+
},
|
|
11059
|
+
required: [
|
|
11060
|
+
"status",
|
|
11061
|
+
"items",
|
|
11062
|
+
"truncated"
|
|
11063
|
+
],
|
|
11064
|
+
additionalProperties: false
|
|
11065
|
+
},
|
|
11066
|
+
{
|
|
11067
|
+
type: "object",
|
|
11068
|
+
properties: {
|
|
11069
|
+
status: {
|
|
11070
|
+
type: "string",
|
|
11071
|
+
const: "partial"
|
|
11072
|
+
},
|
|
11073
|
+
items: {
|
|
11074
|
+
maxItems: 100,
|
|
11075
|
+
type: "array",
|
|
11076
|
+
items: {
|
|
11077
|
+
type: "object",
|
|
11078
|
+
properties: {
|
|
11079
|
+
eventName: {
|
|
11080
|
+
type: "string",
|
|
11081
|
+
minLength: 1,
|
|
11082
|
+
maxLength: 191
|
|
11083
|
+
},
|
|
11084
|
+
eventCount: {
|
|
11085
|
+
type: "integer",
|
|
11086
|
+
minimum: 0,
|
|
11087
|
+
maximum: 9007199254740991
|
|
11088
|
+
},
|
|
11089
|
+
distinctCustomers: {
|
|
11090
|
+
type: "integer",
|
|
11091
|
+
minimum: 0,
|
|
11092
|
+
maximum: 9007199254740991
|
|
11093
|
+
},
|
|
11094
|
+
activeWeeks: {
|
|
11095
|
+
type: "integer",
|
|
11096
|
+
minimum: 1,
|
|
11097
|
+
maximum: 53
|
|
11098
|
+
},
|
|
11099
|
+
propertyKeys: {
|
|
11100
|
+
maxItems: 10,
|
|
11101
|
+
type: "array",
|
|
11102
|
+
items: {
|
|
11103
|
+
type: "string",
|
|
11104
|
+
minLength: 1,
|
|
11105
|
+
maxLength: 191
|
|
11106
|
+
}
|
|
11107
|
+
}
|
|
10823
11108
|
},
|
|
10824
|
-
|
|
10825
|
-
|
|
10826
|
-
|
|
10827
|
-
|
|
10828
|
-
|
|
10829
|
-
|
|
10830
|
-
|
|
10831
|
-
|
|
10832
|
-
|
|
10833
|
-
|
|
10834
|
-
|
|
10835
|
-
|
|
10836
|
-
|
|
11109
|
+
required: [
|
|
11110
|
+
"eventName",
|
|
11111
|
+
"eventCount",
|
|
11112
|
+
"distinctCustomers",
|
|
11113
|
+
"activeWeeks",
|
|
11114
|
+
"propertyKeys"
|
|
11115
|
+
],
|
|
11116
|
+
additionalProperties: false
|
|
11117
|
+
}
|
|
11118
|
+
},
|
|
11119
|
+
truncated: {
|
|
11120
|
+
type: "boolean"
|
|
11121
|
+
}
|
|
11122
|
+
},
|
|
11123
|
+
required: [
|
|
11124
|
+
"status",
|
|
11125
|
+
"items",
|
|
11126
|
+
"truncated"
|
|
11127
|
+
],
|
|
11128
|
+
additionalProperties: false
|
|
11129
|
+
},
|
|
11130
|
+
{
|
|
11131
|
+
type: "object",
|
|
11132
|
+
properties: {
|
|
11133
|
+
status: {
|
|
11134
|
+
type: "string",
|
|
11135
|
+
const: "unavailable"
|
|
11136
|
+
},
|
|
11137
|
+
reason: {
|
|
11138
|
+
type: "string",
|
|
11139
|
+
enum: [
|
|
11140
|
+
"SOURCE_BLOCKED",
|
|
11141
|
+
"SOURCE_NOT_READY",
|
|
11142
|
+
"QUERY_FAILED"
|
|
11143
|
+
]
|
|
11144
|
+
}
|
|
11145
|
+
},
|
|
11146
|
+
required: [
|
|
11147
|
+
"status",
|
|
11148
|
+
"reason"
|
|
11149
|
+
],
|
|
11150
|
+
additionalProperties: false
|
|
11151
|
+
}
|
|
11152
|
+
]
|
|
11153
|
+
}
|
|
11154
|
+
},
|
|
11155
|
+
required: [
|
|
11156
|
+
"sources",
|
|
11157
|
+
"selectedSourceKey",
|
|
11158
|
+
"workspaceActiveFeatureCount",
|
|
11159
|
+
"features",
|
|
11160
|
+
"candidates"
|
|
11161
|
+
],
|
|
11162
|
+
additionalProperties: false
|
|
11163
|
+
}
|
|
11164
|
+
},
|
|
11165
|
+
outlit_create_feature: {
|
|
11166
|
+
toolName: "outlit_create_feature",
|
|
11167
|
+
commandId: "value_feature.create",
|
|
11168
|
+
commandVersion: 1,
|
|
11169
|
+
ownerDomain: "value_features",
|
|
11170
|
+
title: "Create Feature",
|
|
11171
|
+
description: "Create or idempotently return one customer-value Feature observed by one event rule.",
|
|
11172
|
+
inputSchema: {
|
|
11173
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11174
|
+
type: "object",
|
|
11175
|
+
properties: {
|
|
11176
|
+
sourceKey: {
|
|
11177
|
+
type: "string",
|
|
11178
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
11179
|
+
},
|
|
11180
|
+
eventName: {
|
|
11181
|
+
type: "string",
|
|
11182
|
+
minLength: 1,
|
|
11183
|
+
maxLength: 191
|
|
11184
|
+
},
|
|
11185
|
+
featureKey: {
|
|
11186
|
+
type: "string",
|
|
11187
|
+
maxLength: 64,
|
|
11188
|
+
pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$"
|
|
11189
|
+
},
|
|
11190
|
+
name: {
|
|
11191
|
+
type: "string",
|
|
11192
|
+
minLength: 1,
|
|
11193
|
+
maxLength: 255
|
|
11194
|
+
},
|
|
11195
|
+
propertyFilters: {
|
|
11196
|
+
default: [],
|
|
11197
|
+
maxItems: 5,
|
|
11198
|
+
type: "array",
|
|
11199
|
+
items: {
|
|
11200
|
+
oneOf: [
|
|
11201
|
+
{
|
|
11202
|
+
type: "object",
|
|
11203
|
+
properties: {
|
|
11204
|
+
property: {
|
|
11205
|
+
type: "string",
|
|
11206
|
+
minLength: 1,
|
|
11207
|
+
maxLength: 191
|
|
11208
|
+
},
|
|
11209
|
+
operator: {
|
|
11210
|
+
type: "string",
|
|
11211
|
+
const: "equals"
|
|
11212
|
+
},
|
|
11213
|
+
value: {
|
|
11214
|
+
oneOf: [
|
|
11215
|
+
{
|
|
11216
|
+
type: "object",
|
|
11217
|
+
properties: {
|
|
11218
|
+
type: {
|
|
11219
|
+
type: "string",
|
|
11220
|
+
const: "string"
|
|
11221
|
+
},
|
|
11222
|
+
value: {
|
|
11223
|
+
type: "string",
|
|
11224
|
+
maxLength: 191
|
|
11225
|
+
}
|
|
11226
|
+
},
|
|
11227
|
+
required: [
|
|
11228
|
+
"type",
|
|
11229
|
+
"value"
|
|
11230
|
+
],
|
|
11231
|
+
additionalProperties: false
|
|
11232
|
+
},
|
|
11233
|
+
{
|
|
11234
|
+
type: "object",
|
|
11235
|
+
properties: {
|
|
11236
|
+
type: {
|
|
11237
|
+
type: "string",
|
|
11238
|
+
const: "number"
|
|
11239
|
+
},
|
|
11240
|
+
value: {
|
|
11241
|
+
type: "number",
|
|
11242
|
+
minimum: -9007199254740991,
|
|
11243
|
+
maximum: 9007199254740991
|
|
11244
|
+
}
|
|
11245
|
+
},
|
|
11246
|
+
required: [
|
|
11247
|
+
"type",
|
|
11248
|
+
"value"
|
|
11249
|
+
],
|
|
11250
|
+
additionalProperties: false
|
|
11251
|
+
},
|
|
11252
|
+
{
|
|
11253
|
+
type: "object",
|
|
11254
|
+
properties: {
|
|
11255
|
+
type: {
|
|
11256
|
+
type: "string",
|
|
11257
|
+
const: "boolean"
|
|
11258
|
+
},
|
|
11259
|
+
value: {
|
|
11260
|
+
type: "boolean"
|
|
11261
|
+
}
|
|
11262
|
+
},
|
|
11263
|
+
required: [
|
|
11264
|
+
"type",
|
|
11265
|
+
"value"
|
|
11266
|
+
],
|
|
11267
|
+
additionalProperties: false
|
|
11268
|
+
}
|
|
11269
|
+
]
|
|
11270
|
+
}
|
|
11271
|
+
},
|
|
11272
|
+
required: [
|
|
11273
|
+
"property",
|
|
11274
|
+
"operator",
|
|
11275
|
+
"value"
|
|
11276
|
+
],
|
|
11277
|
+
additionalProperties: false
|
|
11278
|
+
},
|
|
11279
|
+
{
|
|
11280
|
+
type: "object",
|
|
11281
|
+
properties: {
|
|
11282
|
+
property: {
|
|
11283
|
+
type: "string",
|
|
11284
|
+
minLength: 1,
|
|
11285
|
+
maxLength: 191
|
|
11286
|
+
},
|
|
11287
|
+
operator: {
|
|
11288
|
+
type: "string",
|
|
11289
|
+
const: "exists"
|
|
11290
|
+
}
|
|
11291
|
+
},
|
|
11292
|
+
required: [
|
|
11293
|
+
"property",
|
|
11294
|
+
"operator"
|
|
11295
|
+
],
|
|
11296
|
+
additionalProperties: false
|
|
11297
|
+
}
|
|
11298
|
+
]
|
|
11299
|
+
}
|
|
11300
|
+
}
|
|
11301
|
+
},
|
|
11302
|
+
required: [
|
|
11303
|
+
"sourceKey",
|
|
11304
|
+
"eventName",
|
|
11305
|
+
"featureKey",
|
|
11306
|
+
"name"
|
|
11307
|
+
],
|
|
11308
|
+
additionalProperties: false
|
|
11309
|
+
},
|
|
11310
|
+
outputSchema: {
|
|
11311
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11312
|
+
type: "object",
|
|
11313
|
+
properties: {
|
|
11314
|
+
created: {
|
|
11315
|
+
type: "boolean"
|
|
11316
|
+
},
|
|
11317
|
+
feature: {
|
|
11318
|
+
type: "object",
|
|
11319
|
+
properties: {
|
|
11320
|
+
id: {
|
|
11321
|
+
type: "string",
|
|
11322
|
+
pattern: "^value_feature_v1_[a-f0-9]{32}$"
|
|
11323
|
+
},
|
|
11324
|
+
revision: {
|
|
11325
|
+
type: "string",
|
|
11326
|
+
pattern: "^value_feature_revision_v1_[a-f0-9]{32}$"
|
|
11327
|
+
},
|
|
11328
|
+
sourceKey: {
|
|
11329
|
+
type: "string",
|
|
11330
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
11331
|
+
},
|
|
11332
|
+
featureKey: {
|
|
11333
|
+
type: "string",
|
|
11334
|
+
maxLength: 64,
|
|
11335
|
+
pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$"
|
|
11336
|
+
},
|
|
11337
|
+
name: {
|
|
11338
|
+
type: "string",
|
|
11339
|
+
minLength: 1,
|
|
11340
|
+
maxLength: 255
|
|
11341
|
+
},
|
|
11342
|
+
rule: {
|
|
11343
|
+
type: "object",
|
|
11344
|
+
properties: {
|
|
11345
|
+
eventName: {
|
|
11346
|
+
type: "string",
|
|
11347
|
+
minLength: 1,
|
|
11348
|
+
maxLength: 191
|
|
11349
|
+
},
|
|
11350
|
+
propertyFilters: {
|
|
11351
|
+
maxItems: 5,
|
|
11352
|
+
type: "array",
|
|
11353
|
+
items: {
|
|
11354
|
+
oneOf: [
|
|
11355
|
+
{
|
|
11356
|
+
type: "object",
|
|
11357
|
+
properties: {
|
|
11358
|
+
property: {
|
|
11359
|
+
type: "string",
|
|
11360
|
+
minLength: 1,
|
|
11361
|
+
maxLength: 191
|
|
11362
|
+
},
|
|
11363
|
+
operator: {
|
|
11364
|
+
type: "string",
|
|
11365
|
+
const: "equals"
|
|
11366
|
+
},
|
|
11367
|
+
value: {
|
|
11368
|
+
oneOf: [
|
|
11369
|
+
{
|
|
11370
|
+
type: "object",
|
|
11371
|
+
properties: {
|
|
11372
|
+
type: {
|
|
11373
|
+
type: "string",
|
|
11374
|
+
const: "string"
|
|
11375
|
+
},
|
|
11376
|
+
value: {
|
|
11377
|
+
type: "string",
|
|
11378
|
+
maxLength: 191
|
|
11379
|
+
}
|
|
11380
|
+
},
|
|
11381
|
+
required: [
|
|
11382
|
+
"type",
|
|
11383
|
+
"value"
|
|
11384
|
+
],
|
|
11385
|
+
additionalProperties: false
|
|
10837
11386
|
},
|
|
10838
|
-
|
|
10839
|
-
type: "
|
|
10840
|
-
|
|
11387
|
+
{
|
|
11388
|
+
type: "object",
|
|
11389
|
+
properties: {
|
|
11390
|
+
type: {
|
|
11391
|
+
type: "string",
|
|
11392
|
+
const: "number"
|
|
11393
|
+
},
|
|
11394
|
+
value: {
|
|
11395
|
+
type: "number",
|
|
11396
|
+
minimum: -9007199254740991,
|
|
11397
|
+
maximum: 9007199254740991
|
|
11398
|
+
}
|
|
11399
|
+
},
|
|
11400
|
+
required: [
|
|
11401
|
+
"type",
|
|
11402
|
+
"value"
|
|
11403
|
+
],
|
|
11404
|
+
additionalProperties: false
|
|
10841
11405
|
},
|
|
10842
|
-
|
|
10843
|
-
|
|
10844
|
-
|
|
10845
|
-
|
|
10846
|
-
|
|
10847
|
-
|
|
10848
|
-
|
|
10849
|
-
|
|
10850
|
-
|
|
10851
|
-
|
|
10852
|
-
|
|
10853
|
-
|
|
10854
|
-
|
|
11406
|
+
{
|
|
11407
|
+
type: "object",
|
|
11408
|
+
properties: {
|
|
11409
|
+
type: {
|
|
11410
|
+
type: "string",
|
|
11411
|
+
const: "boolean"
|
|
11412
|
+
},
|
|
11413
|
+
value: {
|
|
11414
|
+
type: "boolean"
|
|
11415
|
+
}
|
|
11416
|
+
},
|
|
11417
|
+
required: [
|
|
11418
|
+
"type",
|
|
11419
|
+
"value"
|
|
11420
|
+
],
|
|
11421
|
+
additionalProperties: false
|
|
11422
|
+
}
|
|
11423
|
+
]
|
|
11424
|
+
}
|
|
11425
|
+
},
|
|
11426
|
+
required: [
|
|
11427
|
+
"property",
|
|
11428
|
+
"operator",
|
|
11429
|
+
"value"
|
|
11430
|
+
],
|
|
11431
|
+
additionalProperties: false
|
|
11432
|
+
},
|
|
11433
|
+
{
|
|
11434
|
+
type: "object",
|
|
11435
|
+
properties: {
|
|
11436
|
+
property: {
|
|
11437
|
+
type: "string",
|
|
11438
|
+
minLength: 1,
|
|
11439
|
+
maxLength: 191
|
|
11440
|
+
},
|
|
11441
|
+
operator: {
|
|
11442
|
+
type: "string",
|
|
11443
|
+
const: "exists"
|
|
11444
|
+
}
|
|
11445
|
+
},
|
|
11446
|
+
required: [
|
|
11447
|
+
"property",
|
|
11448
|
+
"operator"
|
|
11449
|
+
],
|
|
11450
|
+
additionalProperties: false
|
|
11451
|
+
}
|
|
11452
|
+
]
|
|
11453
|
+
}
|
|
11454
|
+
}
|
|
11455
|
+
},
|
|
11456
|
+
required: [
|
|
11457
|
+
"eventName",
|
|
11458
|
+
"propertyFilters"
|
|
11459
|
+
],
|
|
11460
|
+
additionalProperties: false
|
|
11461
|
+
}
|
|
11462
|
+
},
|
|
11463
|
+
required: [
|
|
11464
|
+
"id",
|
|
11465
|
+
"revision",
|
|
11466
|
+
"sourceKey",
|
|
11467
|
+
"featureKey",
|
|
11468
|
+
"name",
|
|
11469
|
+
"rule"
|
|
11470
|
+
],
|
|
11471
|
+
additionalProperties: false
|
|
11472
|
+
}
|
|
11473
|
+
},
|
|
11474
|
+
required: [
|
|
11475
|
+
"created",
|
|
11476
|
+
"feature"
|
|
11477
|
+
],
|
|
11478
|
+
additionalProperties: false
|
|
11479
|
+
}
|
|
11480
|
+
},
|
|
11481
|
+
outlit_archive_feature: {
|
|
11482
|
+
toolName: "outlit_archive_feature",
|
|
11483
|
+
commandId: "value_feature.archive",
|
|
11484
|
+
commandVersion: 1,
|
|
11485
|
+
ownerDomain: "value_features",
|
|
11486
|
+
title: "Archive Feature",
|
|
11487
|
+
description: "Archive a Feature when at least one other active Feature remains.",
|
|
11488
|
+
inputSchema: {
|
|
11489
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11490
|
+
type: "object",
|
|
11491
|
+
properties: {
|
|
11492
|
+
id: {
|
|
11493
|
+
type: "string",
|
|
11494
|
+
pattern: "^value_feature_v1_[a-f0-9]{32}$"
|
|
11495
|
+
},
|
|
11496
|
+
revision: {
|
|
11497
|
+
type: "string",
|
|
11498
|
+
pattern: "^value_feature_revision_v1_[a-f0-9]{32}$"
|
|
11499
|
+
}
|
|
11500
|
+
},
|
|
11501
|
+
required: [
|
|
11502
|
+
"id",
|
|
11503
|
+
"revision"
|
|
11504
|
+
],
|
|
11505
|
+
additionalProperties: false
|
|
11506
|
+
},
|
|
11507
|
+
outputSchema: {
|
|
11508
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11509
|
+
type: "object",
|
|
11510
|
+
properties: {
|
|
11511
|
+
archived: {
|
|
11512
|
+
type: "boolean",
|
|
11513
|
+
const: true
|
|
11514
|
+
},
|
|
11515
|
+
feature: {
|
|
11516
|
+
type: "object",
|
|
11517
|
+
properties: {
|
|
11518
|
+
id: {
|
|
11519
|
+
type: "string",
|
|
11520
|
+
pattern: "^value_feature_v1_[a-f0-9]{32}$"
|
|
11521
|
+
},
|
|
11522
|
+
revision: {
|
|
11523
|
+
type: "string",
|
|
11524
|
+
pattern: "^value_feature_revision_v1_[a-f0-9]{32}$"
|
|
11525
|
+
}
|
|
11526
|
+
},
|
|
11527
|
+
required: [
|
|
11528
|
+
"id",
|
|
11529
|
+
"revision"
|
|
11530
|
+
],
|
|
11531
|
+
additionalProperties: false
|
|
11532
|
+
}
|
|
11533
|
+
},
|
|
11534
|
+
required: [
|
|
11535
|
+
"archived",
|
|
11536
|
+
"feature"
|
|
11537
|
+
],
|
|
11538
|
+
additionalProperties: false
|
|
11539
|
+
}
|
|
11540
|
+
},
|
|
11541
|
+
outlit_get_customer_features: {
|
|
11542
|
+
toolName: "outlit_get_customer_features",
|
|
11543
|
+
commandId: "customer_feature_usage.get",
|
|
11544
|
+
commandVersion: 1,
|
|
11545
|
+
ownerDomain: "value_features",
|
|
11546
|
+
title: "Get Customer Features",
|
|
11547
|
+
description: "Read exact historical feature-usage evidence for one authorized customer.",
|
|
11548
|
+
inputSchema: {
|
|
11549
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11550
|
+
type: "object",
|
|
11551
|
+
properties: {
|
|
11552
|
+
customer: {
|
|
11553
|
+
type: "string",
|
|
11554
|
+
minLength: 1,
|
|
11555
|
+
maxLength: 500
|
|
11556
|
+
},
|
|
11557
|
+
weeks: {
|
|
11558
|
+
default: 12,
|
|
11559
|
+
type: "integer",
|
|
11560
|
+
minimum: 1,
|
|
11561
|
+
maximum: 53
|
|
11562
|
+
},
|
|
11563
|
+
includeWeeklyUsage: {
|
|
11564
|
+
default: false,
|
|
11565
|
+
type: "boolean"
|
|
11566
|
+
}
|
|
11567
|
+
},
|
|
11568
|
+
required: [
|
|
11569
|
+
"customer"
|
|
11570
|
+
],
|
|
11571
|
+
additionalProperties: false
|
|
11572
|
+
},
|
|
11573
|
+
outputSchema: {
|
|
11574
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11575
|
+
type: "object",
|
|
11576
|
+
properties: {
|
|
11577
|
+
customer: {
|
|
11578
|
+
type: "object",
|
|
11579
|
+
properties: {
|
|
11580
|
+
id: {
|
|
11581
|
+
type: "string",
|
|
11582
|
+
minLength: 1,
|
|
11583
|
+
maxLength: 191
|
|
11584
|
+
},
|
|
11585
|
+
name: {
|
|
11586
|
+
type: "string",
|
|
11587
|
+
minLength: 1,
|
|
11588
|
+
maxLength: 255
|
|
11589
|
+
}
|
|
11590
|
+
},
|
|
11591
|
+
required: [
|
|
11592
|
+
"id",
|
|
11593
|
+
"name"
|
|
11594
|
+
],
|
|
11595
|
+
additionalProperties: false
|
|
11596
|
+
},
|
|
11597
|
+
features: {
|
|
11598
|
+
maxItems: 100,
|
|
11599
|
+
type: "array",
|
|
11600
|
+
items: {
|
|
11601
|
+
type: "object",
|
|
11602
|
+
properties: {
|
|
11603
|
+
id: {
|
|
11604
|
+
type: "string",
|
|
11605
|
+
pattern: "^value_feature_v1_[a-f0-9]{32}$"
|
|
11606
|
+
},
|
|
11607
|
+
revision: {
|
|
11608
|
+
type: "string",
|
|
11609
|
+
pattern: "^value_feature_revision_v1_[a-f0-9]{32}$"
|
|
11610
|
+
},
|
|
11611
|
+
sourceKey: {
|
|
11612
|
+
type: "string",
|
|
11613
|
+
pattern: "^metric_source_v1_[a-f0-9]{32}$"
|
|
11614
|
+
},
|
|
11615
|
+
featureKey: {
|
|
11616
|
+
type: "string",
|
|
11617
|
+
maxLength: 64,
|
|
11618
|
+
pattern: "^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$"
|
|
11619
|
+
},
|
|
11620
|
+
name: {
|
|
11621
|
+
type: "string",
|
|
11622
|
+
minLength: 1,
|
|
11623
|
+
maxLength: 255
|
|
11624
|
+
},
|
|
11625
|
+
rule: {
|
|
11626
|
+
type: "object",
|
|
11627
|
+
properties: {
|
|
11628
|
+
eventName: {
|
|
11629
|
+
type: "string",
|
|
11630
|
+
minLength: 1,
|
|
11631
|
+
maxLength: 191
|
|
11632
|
+
},
|
|
11633
|
+
propertyFilters: {
|
|
11634
|
+
maxItems: 5,
|
|
11635
|
+
type: "array",
|
|
11636
|
+
items: {
|
|
11637
|
+
oneOf: [
|
|
11638
|
+
{
|
|
11639
|
+
type: "object",
|
|
11640
|
+
properties: {
|
|
11641
|
+
property: {
|
|
11642
|
+
type: "string",
|
|
11643
|
+
minLength: 1,
|
|
11644
|
+
maxLength: 191
|
|
11645
|
+
},
|
|
11646
|
+
operator: {
|
|
11647
|
+
type: "string",
|
|
11648
|
+
const: "equals"
|
|
11649
|
+
},
|
|
11650
|
+
value: {
|
|
11651
|
+
oneOf: [
|
|
11652
|
+
{
|
|
11653
|
+
type: "object",
|
|
11654
|
+
properties: {
|
|
11655
|
+
type: {
|
|
11656
|
+
type: "string",
|
|
11657
|
+
const: "string"
|
|
10855
11658
|
},
|
|
10856
|
-
|
|
10857
|
-
|
|
10858
|
-
|
|
10859
|
-
|
|
10860
|
-
additionalProperties: false
|
|
11659
|
+
value: {
|
|
11660
|
+
type: "string",
|
|
11661
|
+
maxLength: 191
|
|
11662
|
+
}
|
|
10861
11663
|
},
|
|
10862
|
-
|
|
10863
|
-
type
|
|
10864
|
-
|
|
10865
|
-
|
|
10866
|
-
|
|
10867
|
-
|
|
10868
|
-
|
|
10869
|
-
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
10873
|
-
|
|
11664
|
+
required: [
|
|
11665
|
+
"type",
|
|
11666
|
+
"value"
|
|
11667
|
+
],
|
|
11668
|
+
additionalProperties: false
|
|
11669
|
+
},
|
|
11670
|
+
{
|
|
11671
|
+
type: "object",
|
|
11672
|
+
properties: {
|
|
11673
|
+
type: {
|
|
11674
|
+
type: "string",
|
|
11675
|
+
const: "number"
|
|
10874
11676
|
},
|
|
10875
|
-
|
|
10876
|
-
|
|
10877
|
-
|
|
10878
|
-
|
|
10879
|
-
|
|
11677
|
+
value: {
|
|
11678
|
+
type: "number",
|
|
11679
|
+
minimum: -9007199254740991,
|
|
11680
|
+
maximum: 9007199254740991
|
|
11681
|
+
}
|
|
10880
11682
|
},
|
|
10881
|
-
|
|
10882
|
-
type
|
|
10883
|
-
|
|
10884
|
-
|
|
10885
|
-
|
|
10886
|
-
|
|
10887
|
-
|
|
10888
|
-
|
|
10889
|
-
|
|
10890
|
-
|
|
11683
|
+
required: [
|
|
11684
|
+
"type",
|
|
11685
|
+
"value"
|
|
11686
|
+
],
|
|
11687
|
+
additionalProperties: false
|
|
11688
|
+
},
|
|
11689
|
+
{
|
|
11690
|
+
type: "object",
|
|
11691
|
+
properties: {
|
|
11692
|
+
type: {
|
|
11693
|
+
type: "string",
|
|
11694
|
+
const: "boolean"
|
|
10891
11695
|
},
|
|
10892
|
-
|
|
10893
|
-
|
|
10894
|
-
|
|
10895
|
-
|
|
10896
|
-
|
|
10897
|
-
|
|
10898
|
-
|
|
10899
|
-
|
|
11696
|
+
value: {
|
|
11697
|
+
type: "boolean"
|
|
11698
|
+
}
|
|
11699
|
+
},
|
|
11700
|
+
required: [
|
|
11701
|
+
"type",
|
|
11702
|
+
"value"
|
|
11703
|
+
],
|
|
11704
|
+
additionalProperties: false
|
|
11705
|
+
}
|
|
11706
|
+
]
|
|
11707
|
+
}
|
|
11708
|
+
},
|
|
11709
|
+
required: [
|
|
11710
|
+
"property",
|
|
11711
|
+
"operator",
|
|
11712
|
+
"value"
|
|
11713
|
+
],
|
|
11714
|
+
additionalProperties: false
|
|
11715
|
+
},
|
|
11716
|
+
{
|
|
11717
|
+
type: "object",
|
|
11718
|
+
properties: {
|
|
11719
|
+
property: {
|
|
11720
|
+
type: "string",
|
|
11721
|
+
minLength: 1,
|
|
11722
|
+
maxLength: 191
|
|
10900
11723
|
},
|
|
10901
|
-
|
|
10902
|
-
"
|
|
10903
|
-
"
|
|
10904
|
-
|
|
10905
|
-
|
|
10906
|
-
|
|
11724
|
+
operator: {
|
|
11725
|
+
type: "string",
|
|
11726
|
+
const: "exists"
|
|
11727
|
+
}
|
|
11728
|
+
},
|
|
11729
|
+
required: [
|
|
11730
|
+
"property",
|
|
11731
|
+
"operator"
|
|
11732
|
+
],
|
|
11733
|
+
additionalProperties: false
|
|
11734
|
+
}
|
|
11735
|
+
]
|
|
11736
|
+
}
|
|
11737
|
+
}
|
|
11738
|
+
},
|
|
11739
|
+
required: [
|
|
11740
|
+
"eventName",
|
|
11741
|
+
"propertyFilters"
|
|
11742
|
+
],
|
|
11743
|
+
additionalProperties: false
|
|
11744
|
+
},
|
|
11745
|
+
evidence: {
|
|
11746
|
+
oneOf: [
|
|
11747
|
+
{
|
|
11748
|
+
type: "object",
|
|
11749
|
+
properties: {
|
|
11750
|
+
window: {
|
|
11751
|
+
type: "object",
|
|
11752
|
+
properties: {
|
|
11753
|
+
startAt: {
|
|
11754
|
+
type: "string",
|
|
11755
|
+
format: "date-time",
|
|
11756
|
+
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)))$"
|
|
11757
|
+
},
|
|
11758
|
+
endAt: {
|
|
11759
|
+
type: "string",
|
|
11760
|
+
format: "date-time",
|
|
11761
|
+
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)))$"
|
|
11762
|
+
}
|
|
11763
|
+
},
|
|
11764
|
+
required: [
|
|
11765
|
+
"startAt",
|
|
11766
|
+
"endAt"
|
|
11767
|
+
],
|
|
11768
|
+
additionalProperties: false
|
|
11769
|
+
},
|
|
11770
|
+
coverage: {
|
|
11771
|
+
type: "string",
|
|
11772
|
+
enum: [
|
|
11773
|
+
"complete",
|
|
11774
|
+
"partial"
|
|
11775
|
+
]
|
|
11776
|
+
},
|
|
11777
|
+
eventCount: {
|
|
11778
|
+
type: "integer",
|
|
11779
|
+
minimum: 0,
|
|
11780
|
+
maximum: 9007199254740991
|
|
11781
|
+
},
|
|
11782
|
+
activeDays: {
|
|
11783
|
+
type: "integer",
|
|
11784
|
+
minimum: 0,
|
|
11785
|
+
maximum: 9007199254740991
|
|
11786
|
+
},
|
|
11787
|
+
activeWeeks: {
|
|
11788
|
+
type: "integer",
|
|
11789
|
+
minimum: 0,
|
|
11790
|
+
maximum: 53
|
|
11791
|
+
},
|
|
11792
|
+
firstObservedAt: {
|
|
11793
|
+
anyOf: [
|
|
11794
|
+
{
|
|
11795
|
+
type: "string",
|
|
11796
|
+
format: "date-time",
|
|
11797
|
+
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)))$"
|
|
11798
|
+
},
|
|
11799
|
+
{
|
|
11800
|
+
type: "null"
|
|
11801
|
+
}
|
|
11802
|
+
]
|
|
11803
|
+
},
|
|
11804
|
+
lastObservedAt: {
|
|
11805
|
+
anyOf: [
|
|
11806
|
+
{
|
|
11807
|
+
type: "string",
|
|
11808
|
+
format: "date-time",
|
|
11809
|
+
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)))$"
|
|
11810
|
+
},
|
|
11811
|
+
{
|
|
11812
|
+
type: "null"
|
|
11813
|
+
}
|
|
11814
|
+
]
|
|
11815
|
+
},
|
|
11816
|
+
weeklyUsage: {
|
|
11817
|
+
maxItems: 53,
|
|
11818
|
+
type: "array",
|
|
11819
|
+
items: {
|
|
11820
|
+
oneOf: [
|
|
11821
|
+
{
|
|
11822
|
+
type: "object",
|
|
11823
|
+
properties: {
|
|
11824
|
+
weekStartAt: {
|
|
11825
|
+
type: "string",
|
|
11826
|
+
format: "date-time",
|
|
11827
|
+
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)))$"
|
|
11828
|
+
},
|
|
11829
|
+
coverage: {
|
|
11830
|
+
type: "string",
|
|
11831
|
+
enum: [
|
|
11832
|
+
"complete",
|
|
11833
|
+
"partial"
|
|
11834
|
+
]
|
|
11835
|
+
},
|
|
11836
|
+
eventCount: {
|
|
11837
|
+
type: "integer",
|
|
11838
|
+
minimum: 0,
|
|
11839
|
+
maximum: 9007199254740991
|
|
11840
|
+
},
|
|
11841
|
+
activeDays: {
|
|
11842
|
+
type: "integer",
|
|
11843
|
+
minimum: 0,
|
|
11844
|
+
maximum: 7
|
|
11845
|
+
}
|
|
11846
|
+
},
|
|
11847
|
+
required: [
|
|
11848
|
+
"weekStartAt",
|
|
11849
|
+
"coverage",
|
|
11850
|
+
"eventCount",
|
|
11851
|
+
"activeDays"
|
|
11852
|
+
],
|
|
11853
|
+
additionalProperties: false
|
|
11854
|
+
},
|
|
11855
|
+
{
|
|
11856
|
+
type: "object",
|
|
11857
|
+
properties: {
|
|
11858
|
+
weekStartAt: {
|
|
11859
|
+
type: "string",
|
|
11860
|
+
format: "date-time",
|
|
11861
|
+
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)))$"
|
|
11862
|
+
},
|
|
11863
|
+
coverage: {
|
|
11864
|
+
type: "string",
|
|
11865
|
+
const: "unavailable"
|
|
11866
|
+
}
|
|
11867
|
+
},
|
|
11868
|
+
required: [
|
|
11869
|
+
"weekStartAt",
|
|
11870
|
+
"coverage"
|
|
11871
|
+
],
|
|
11872
|
+
additionalProperties: false
|
|
11873
|
+
}
|
|
11874
|
+
]
|
|
11875
|
+
}
|
|
11876
|
+
}
|
|
11877
|
+
},
|
|
11878
|
+
required: [
|
|
11879
|
+
"window",
|
|
11880
|
+
"coverage",
|
|
11881
|
+
"eventCount",
|
|
11882
|
+
"activeDays",
|
|
11883
|
+
"activeWeeks",
|
|
11884
|
+
"firstObservedAt",
|
|
11885
|
+
"lastObservedAt"
|
|
11886
|
+
],
|
|
11887
|
+
additionalProperties: false
|
|
11888
|
+
},
|
|
11889
|
+
{
|
|
11890
|
+
type: "object",
|
|
11891
|
+
properties: {
|
|
11892
|
+
window: {
|
|
11893
|
+
type: "object",
|
|
11894
|
+
properties: {
|
|
11895
|
+
startAt: {
|
|
11896
|
+
type: "string",
|
|
11897
|
+
format: "date-time",
|
|
11898
|
+
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)))$"
|
|
10907
11899
|
},
|
|
10908
|
-
{
|
|
10909
|
-
type: "
|
|
10910
|
-
|
|
10911
|
-
|
|
10912
|
-
type: "string",
|
|
10913
|
-
minLength: 1,
|
|
10914
|
-
maxLength: 191
|
|
10915
|
-
},
|
|
10916
|
-
operator: {
|
|
10917
|
-
type: "string",
|
|
10918
|
-
const: "exists"
|
|
10919
|
-
}
|
|
10920
|
-
},
|
|
10921
|
-
required: [
|
|
10922
|
-
"property",
|
|
10923
|
-
"operator"
|
|
10924
|
-
],
|
|
10925
|
-
additionalProperties: false
|
|
11900
|
+
endAt: {
|
|
11901
|
+
type: "string",
|
|
11902
|
+
format: "date-time",
|
|
11903
|
+
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)))$"
|
|
10926
11904
|
}
|
|
11905
|
+
},
|
|
11906
|
+
required: [
|
|
11907
|
+
"startAt",
|
|
11908
|
+
"endAt"
|
|
11909
|
+
],
|
|
11910
|
+
additionalProperties: false
|
|
11911
|
+
},
|
|
11912
|
+
coverage: {
|
|
11913
|
+
type: "string",
|
|
11914
|
+
const: "unavailable"
|
|
11915
|
+
},
|
|
11916
|
+
reason: {
|
|
11917
|
+
type: "string",
|
|
11918
|
+
enum: [
|
|
11919
|
+
"SOURCE_BLOCKED",
|
|
11920
|
+
"SOURCE_NOT_READY",
|
|
11921
|
+
"QUERY_FAILED"
|
|
10927
11922
|
]
|
|
10928
11923
|
}
|
|
11924
|
+
},
|
|
11925
|
+
required: [
|
|
11926
|
+
"window",
|
|
11927
|
+
"coverage",
|
|
11928
|
+
"reason"
|
|
11929
|
+
],
|
|
11930
|
+
additionalProperties: false
|
|
11931
|
+
}
|
|
11932
|
+
]
|
|
11933
|
+
}
|
|
11934
|
+
},
|
|
11935
|
+
required: [
|
|
11936
|
+
"id",
|
|
11937
|
+
"revision",
|
|
11938
|
+
"sourceKey",
|
|
11939
|
+
"featureKey",
|
|
11940
|
+
"name",
|
|
11941
|
+
"rule",
|
|
11942
|
+
"evidence"
|
|
11943
|
+
],
|
|
11944
|
+
additionalProperties: false
|
|
11945
|
+
}
|
|
11946
|
+
}
|
|
11947
|
+
},
|
|
11948
|
+
required: [
|
|
11949
|
+
"customer",
|
|
11950
|
+
"features"
|
|
11951
|
+
],
|
|
11952
|
+
additionalProperties: false
|
|
11953
|
+
}
|
|
11954
|
+
},
|
|
11955
|
+
outlit_list_attention_items: {
|
|
11956
|
+
toolName: "outlit_list_attention_items",
|
|
11957
|
+
commandId: "attention.list",
|
|
11958
|
+
commandVersion: 1,
|
|
11959
|
+
ownerDomain: "attention",
|
|
11960
|
+
title: "List Attention Items",
|
|
11961
|
+
description: "List authorized open or resolved Attention items. Returns bounded customer identity, current priority, ARR importance, lifecycle timestamps, and a prepared-action URL without evidence bodies or internal agent state.",
|
|
11962
|
+
inputSchema: {
|
|
11963
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11964
|
+
type: "object",
|
|
11965
|
+
properties: {
|
|
11966
|
+
status: {
|
|
11967
|
+
description: "Attention lifecycle to list (default: open)",
|
|
11968
|
+
default: "open",
|
|
11969
|
+
type: "string",
|
|
11970
|
+
enum: [
|
|
11971
|
+
"open",
|
|
11972
|
+
"resolved"
|
|
11973
|
+
]
|
|
11974
|
+
},
|
|
11975
|
+
customerId: {
|
|
11976
|
+
description: "Filter by exact customer ID",
|
|
11977
|
+
type: "string",
|
|
11978
|
+
format: "uuid",
|
|
11979
|
+
pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
|
|
11980
|
+
},
|
|
11981
|
+
limit: {
|
|
11982
|
+
description: "Results per page (default: 25, max: 100)",
|
|
11983
|
+
default: 25,
|
|
11984
|
+
type: "integer",
|
|
11985
|
+
minimum: 1,
|
|
11986
|
+
maximum: 100
|
|
11987
|
+
},
|
|
11988
|
+
cursor: {
|
|
11989
|
+
description: "Opaque cursor from a previous response with the same filters",
|
|
11990
|
+
type: "string",
|
|
11991
|
+
minLength: 1,
|
|
11992
|
+
maxLength: 2000
|
|
11993
|
+
}
|
|
11994
|
+
},
|
|
11995
|
+
additionalProperties: false
|
|
11996
|
+
},
|
|
11997
|
+
outputSchema: {
|
|
11998
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
11999
|
+
type: "object",
|
|
12000
|
+
properties: {
|
|
12001
|
+
items: {
|
|
12002
|
+
maxItems: 100,
|
|
12003
|
+
type: "array",
|
|
12004
|
+
items: {
|
|
12005
|
+
type: "object",
|
|
12006
|
+
properties: {
|
|
12007
|
+
id: {
|
|
12008
|
+
type: "string",
|
|
12009
|
+
minLength: 1,
|
|
12010
|
+
maxLength: 500
|
|
12011
|
+
},
|
|
12012
|
+
customer: {
|
|
12013
|
+
type: "object",
|
|
12014
|
+
properties: {
|
|
12015
|
+
id: {
|
|
12016
|
+
type: "string",
|
|
12017
|
+
minLength: 1,
|
|
12018
|
+
maxLength: 500
|
|
12019
|
+
},
|
|
12020
|
+
name: {
|
|
12021
|
+
type: "string",
|
|
12022
|
+
minLength: 1,
|
|
12023
|
+
maxLength: 500
|
|
12024
|
+
},
|
|
12025
|
+
domain: {
|
|
12026
|
+
type: "string",
|
|
12027
|
+
maxLength: 253
|
|
12028
|
+
},
|
|
12029
|
+
ownerName: {
|
|
12030
|
+
anyOf: [
|
|
12031
|
+
{
|
|
12032
|
+
type: "string",
|
|
12033
|
+
minLength: 1,
|
|
12034
|
+
maxLength: 500
|
|
12035
|
+
},
|
|
12036
|
+
{
|
|
12037
|
+
type: "null"
|
|
12038
|
+
}
|
|
12039
|
+
]
|
|
12040
|
+
}
|
|
12041
|
+
},
|
|
12042
|
+
required: [
|
|
12043
|
+
"id",
|
|
12044
|
+
"name",
|
|
12045
|
+
"domain",
|
|
12046
|
+
"ownerName"
|
|
12047
|
+
],
|
|
12048
|
+
additionalProperties: false
|
|
12049
|
+
},
|
|
12050
|
+
title: {
|
|
12051
|
+
type: "string",
|
|
12052
|
+
minLength: 1,
|
|
12053
|
+
maxLength: 240
|
|
12054
|
+
},
|
|
12055
|
+
priority: {
|
|
12056
|
+
type: "string",
|
|
12057
|
+
enum: [
|
|
12058
|
+
"NORMAL",
|
|
12059
|
+
"HIGH",
|
|
12060
|
+
"URGENT"
|
|
12061
|
+
]
|
|
12062
|
+
},
|
|
12063
|
+
evidenceCount: {
|
|
12064
|
+
type: "integer",
|
|
12065
|
+
minimum: 0,
|
|
12066
|
+
maximum: 50
|
|
12067
|
+
},
|
|
12068
|
+
lifecycle: {
|
|
12069
|
+
type: "object",
|
|
12070
|
+
properties: {
|
|
12071
|
+
status: {
|
|
12072
|
+
type: "string",
|
|
12073
|
+
enum: [
|
|
12074
|
+
"open",
|
|
12075
|
+
"resolved"
|
|
12076
|
+
]
|
|
12077
|
+
},
|
|
12078
|
+
customerVisibleAt: {
|
|
12079
|
+
type: "string",
|
|
12080
|
+
format: "date-time",
|
|
12081
|
+
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))$"
|
|
12082
|
+
},
|
|
12083
|
+
resolvedAt: {
|
|
12084
|
+
anyOf: [
|
|
12085
|
+
{
|
|
12086
|
+
type: "string",
|
|
12087
|
+
format: "date-time",
|
|
12088
|
+
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))$"
|
|
12089
|
+
},
|
|
12090
|
+
{
|
|
12091
|
+
type: "null"
|
|
12092
|
+
}
|
|
12093
|
+
]
|
|
12094
|
+
},
|
|
12095
|
+
reopenedAt: {
|
|
12096
|
+
anyOf: [
|
|
12097
|
+
{
|
|
12098
|
+
type: "string",
|
|
12099
|
+
format: "date-time",
|
|
12100
|
+
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))$"
|
|
12101
|
+
},
|
|
12102
|
+
{
|
|
12103
|
+
type: "null"
|
|
12104
|
+
}
|
|
12105
|
+
]
|
|
12106
|
+
},
|
|
12107
|
+
createdAt: {
|
|
12108
|
+
type: "string",
|
|
12109
|
+
format: "date-time",
|
|
12110
|
+
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))$"
|
|
12111
|
+
},
|
|
12112
|
+
updatedAt: {
|
|
12113
|
+
type: "string",
|
|
12114
|
+
format: "date-time",
|
|
12115
|
+
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))$"
|
|
12116
|
+
},
|
|
12117
|
+
materialUpdateAt: {
|
|
12118
|
+
anyOf: [
|
|
12119
|
+
{
|
|
12120
|
+
type: "string",
|
|
12121
|
+
format: "date-time",
|
|
12122
|
+
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))$"
|
|
12123
|
+
},
|
|
12124
|
+
{
|
|
12125
|
+
type: "null"
|
|
12126
|
+
}
|
|
12127
|
+
]
|
|
12128
|
+
}
|
|
12129
|
+
},
|
|
12130
|
+
required: [
|
|
12131
|
+
"status",
|
|
12132
|
+
"customerVisibleAt",
|
|
12133
|
+
"resolvedAt",
|
|
12134
|
+
"reopenedAt",
|
|
12135
|
+
"createdAt",
|
|
12136
|
+
"updatedAt",
|
|
12137
|
+
"materialUpdateAt"
|
|
12138
|
+
],
|
|
12139
|
+
additionalProperties: false
|
|
12140
|
+
},
|
|
12141
|
+
accountImportance: {
|
|
12142
|
+
type: "object",
|
|
12143
|
+
properties: {
|
|
12144
|
+
arrCents: {
|
|
12145
|
+
anyOf: [
|
|
12146
|
+
{
|
|
12147
|
+
type: "number",
|
|
12148
|
+
minimum: 0
|
|
12149
|
+
},
|
|
12150
|
+
{
|
|
12151
|
+
type: "null"
|
|
12152
|
+
}
|
|
12153
|
+
]
|
|
12154
|
+
},
|
|
12155
|
+
currency: {
|
|
12156
|
+
anyOf: [
|
|
12157
|
+
{
|
|
12158
|
+
type: "string",
|
|
12159
|
+
pattern: "^[A-Z]{3}$"
|
|
12160
|
+
},
|
|
12161
|
+
{
|
|
12162
|
+
type: "null"
|
|
12163
|
+
}
|
|
12164
|
+
]
|
|
12165
|
+
},
|
|
12166
|
+
arrShareWithinCurrency: {
|
|
12167
|
+
anyOf: [
|
|
12168
|
+
{
|
|
12169
|
+
type: "number",
|
|
12170
|
+
minimum: 0,
|
|
12171
|
+
maximum: 1
|
|
12172
|
+
},
|
|
12173
|
+
{
|
|
12174
|
+
type: "null"
|
|
12175
|
+
}
|
|
12176
|
+
],
|
|
12177
|
+
description: "Organization ARR share among customers using the same currency"
|
|
12178
|
+
},
|
|
12179
|
+
arrPercentileWithinCurrency: {
|
|
12180
|
+
anyOf: [
|
|
12181
|
+
{
|
|
12182
|
+
type: "number",
|
|
12183
|
+
minimum: 0,
|
|
12184
|
+
maximum: 100
|
|
12185
|
+
},
|
|
12186
|
+
{
|
|
12187
|
+
type: "null"
|
|
12188
|
+
}
|
|
12189
|
+
],
|
|
12190
|
+
description: "ARR percentile among customers using the same currency"
|
|
12191
|
+
},
|
|
12192
|
+
segments: {
|
|
12193
|
+
maxItems: 50,
|
|
12194
|
+
type: "array",
|
|
12195
|
+
items: {
|
|
12196
|
+
type: "string",
|
|
12197
|
+
minLength: 1,
|
|
12198
|
+
maxLength: 240
|
|
10929
12199
|
}
|
|
12200
|
+
}
|
|
12201
|
+
},
|
|
12202
|
+
required: [
|
|
12203
|
+
"arrCents",
|
|
12204
|
+
"currency",
|
|
12205
|
+
"arrShareWithinCurrency",
|
|
12206
|
+
"arrPercentileWithinCurrency",
|
|
12207
|
+
"segments"
|
|
12208
|
+
],
|
|
12209
|
+
additionalProperties: false
|
|
12210
|
+
},
|
|
12211
|
+
preparedActionUrl: {
|
|
12212
|
+
anyOf: [
|
|
12213
|
+
{
|
|
12214
|
+
type: "string",
|
|
12215
|
+
maxLength: 2000,
|
|
12216
|
+
format: "uri"
|
|
10930
12217
|
},
|
|
10931
|
-
|
|
10932
|
-
"
|
|
10933
|
-
|
|
10934
|
-
|
|
10935
|
-
|
|
10936
|
-
|
|
12218
|
+
{
|
|
12219
|
+
type: "null"
|
|
12220
|
+
}
|
|
12221
|
+
]
|
|
12222
|
+
}
|
|
12223
|
+
},
|
|
12224
|
+
required: [
|
|
12225
|
+
"id",
|
|
12226
|
+
"customer",
|
|
12227
|
+
"title",
|
|
12228
|
+
"priority",
|
|
12229
|
+
"evidenceCount",
|
|
12230
|
+
"lifecycle",
|
|
12231
|
+
"accountImportance",
|
|
12232
|
+
"preparedActionUrl"
|
|
12233
|
+
],
|
|
12234
|
+
additionalProperties: false
|
|
12235
|
+
}
|
|
12236
|
+
},
|
|
12237
|
+
pagination: {
|
|
12238
|
+
type: "object",
|
|
12239
|
+
properties: {
|
|
12240
|
+
hasMore: {
|
|
12241
|
+
type: "boolean"
|
|
12242
|
+
},
|
|
12243
|
+
nextCursor: {
|
|
12244
|
+
anyOf: [
|
|
12245
|
+
{
|
|
12246
|
+
type: "string",
|
|
12247
|
+
minLength: 1,
|
|
12248
|
+
maxLength: 2000
|
|
12249
|
+
},
|
|
12250
|
+
{
|
|
12251
|
+
type: "null"
|
|
10937
12252
|
}
|
|
10938
12253
|
]
|
|
10939
12254
|
},
|
|
12255
|
+
total: {
|
|
12256
|
+
type: "integer",
|
|
12257
|
+
minimum: 0,
|
|
12258
|
+
maximum: 9007199254740991
|
|
12259
|
+
}
|
|
12260
|
+
},
|
|
12261
|
+
required: [
|
|
12262
|
+
"hasMore",
|
|
12263
|
+
"nextCursor",
|
|
12264
|
+
"total"
|
|
12265
|
+
],
|
|
12266
|
+
additionalProperties: false
|
|
12267
|
+
}
|
|
12268
|
+
},
|
|
12269
|
+
required: [
|
|
12270
|
+
"items",
|
|
12271
|
+
"pagination"
|
|
12272
|
+
],
|
|
12273
|
+
additionalProperties: false
|
|
12274
|
+
}
|
|
12275
|
+
},
|
|
12276
|
+
outlit_get_attention_item: {
|
|
12277
|
+
toolName: "outlit_get_attention_item",
|
|
12278
|
+
commandId: "attention.get",
|
|
12279
|
+
commandVersion: 1,
|
|
12280
|
+
ownerDomain: "attention",
|
|
12281
|
+
title: "Get Attention Item",
|
|
12282
|
+
description: "Get one authorized Attention item with its bounded current assessment, timeline, evidence summaries, and prepared-action URL. Does not return evidence IDs, quotes, email drafts, or internal agent state.",
|
|
12283
|
+
inputSchema: {
|
|
12284
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
12285
|
+
type: "object",
|
|
12286
|
+
properties: {
|
|
12287
|
+
id: {
|
|
12288
|
+
type: "string",
|
|
12289
|
+
format: "uuid",
|
|
12290
|
+
pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
|
|
12291
|
+
description: "Exact Attention item ID"
|
|
12292
|
+
}
|
|
12293
|
+
},
|
|
12294
|
+
required: [
|
|
12295
|
+
"id"
|
|
12296
|
+
],
|
|
12297
|
+
additionalProperties: false
|
|
12298
|
+
},
|
|
12299
|
+
outputSchema: {
|
|
12300
|
+
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
12301
|
+
type: "object",
|
|
12302
|
+
properties: {
|
|
12303
|
+
id: {
|
|
12304
|
+
type: "string",
|
|
12305
|
+
minLength: 1,
|
|
12306
|
+
maxLength: 500
|
|
12307
|
+
},
|
|
12308
|
+
customer: {
|
|
12309
|
+
type: "object",
|
|
12310
|
+
properties: {
|
|
12311
|
+
id: {
|
|
12312
|
+
type: "string",
|
|
12313
|
+
minLength: 1,
|
|
12314
|
+
maxLength: 500
|
|
12315
|
+
},
|
|
12316
|
+
name: {
|
|
12317
|
+
type: "string",
|
|
12318
|
+
minLength: 1,
|
|
12319
|
+
maxLength: 500
|
|
12320
|
+
},
|
|
12321
|
+
domain: {
|
|
12322
|
+
type: "string",
|
|
12323
|
+
maxLength: 253
|
|
12324
|
+
},
|
|
12325
|
+
ownerName: {
|
|
12326
|
+
anyOf: [
|
|
12327
|
+
{
|
|
12328
|
+
type: "string",
|
|
12329
|
+
minLength: 1,
|
|
12330
|
+
maxLength: 500
|
|
12331
|
+
},
|
|
12332
|
+
{
|
|
12333
|
+
type: "null"
|
|
12334
|
+
}
|
|
12335
|
+
]
|
|
12336
|
+
}
|
|
12337
|
+
},
|
|
12338
|
+
required: [
|
|
12339
|
+
"id",
|
|
12340
|
+
"name",
|
|
12341
|
+
"domain",
|
|
12342
|
+
"ownerName"
|
|
12343
|
+
],
|
|
12344
|
+
additionalProperties: false
|
|
12345
|
+
},
|
|
12346
|
+
title: {
|
|
12347
|
+
type: "string",
|
|
12348
|
+
minLength: 1,
|
|
12349
|
+
maxLength: 240
|
|
12350
|
+
},
|
|
12351
|
+
priority: {
|
|
12352
|
+
type: "string",
|
|
12353
|
+
enum: [
|
|
12354
|
+
"NORMAL",
|
|
12355
|
+
"HIGH",
|
|
12356
|
+
"URGENT"
|
|
12357
|
+
]
|
|
12358
|
+
},
|
|
12359
|
+
evidenceCount: {
|
|
12360
|
+
type: "integer",
|
|
12361
|
+
minimum: 0,
|
|
12362
|
+
maximum: 50
|
|
12363
|
+
},
|
|
12364
|
+
lifecycle: {
|
|
12365
|
+
type: "object",
|
|
12366
|
+
properties: {
|
|
10940
12367
|
status: {
|
|
10941
12368
|
type: "string",
|
|
10942
|
-
|
|
12369
|
+
enum: [
|
|
12370
|
+
"open",
|
|
12371
|
+
"resolved"
|
|
12372
|
+
]
|
|
12373
|
+
},
|
|
12374
|
+
customerVisibleAt: {
|
|
12375
|
+
type: "string",
|
|
12376
|
+
format: "date-time",
|
|
12377
|
+
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))$"
|
|
12378
|
+
},
|
|
12379
|
+
resolvedAt: {
|
|
12380
|
+
anyOf: [
|
|
12381
|
+
{
|
|
12382
|
+
type: "string",
|
|
12383
|
+
format: "date-time",
|
|
12384
|
+
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))$"
|
|
12385
|
+
},
|
|
12386
|
+
{
|
|
12387
|
+
type: "null"
|
|
12388
|
+
}
|
|
12389
|
+
]
|
|
12390
|
+
},
|
|
12391
|
+
reopenedAt: {
|
|
12392
|
+
anyOf: [
|
|
12393
|
+
{
|
|
12394
|
+
type: "string",
|
|
12395
|
+
format: "date-time",
|
|
12396
|
+
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))$"
|
|
12397
|
+
},
|
|
12398
|
+
{
|
|
12399
|
+
type: "null"
|
|
12400
|
+
}
|
|
12401
|
+
]
|
|
12402
|
+
},
|
|
12403
|
+
createdAt: {
|
|
12404
|
+
type: "string",
|
|
12405
|
+
format: "date-time",
|
|
12406
|
+
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))$"
|
|
12407
|
+
},
|
|
12408
|
+
updatedAt: {
|
|
12409
|
+
type: "string",
|
|
12410
|
+
format: "date-time",
|
|
12411
|
+
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))$"
|
|
12412
|
+
},
|
|
12413
|
+
materialUpdateAt: {
|
|
12414
|
+
anyOf: [
|
|
12415
|
+
{
|
|
12416
|
+
type: "string",
|
|
12417
|
+
format: "date-time",
|
|
12418
|
+
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))$"
|
|
12419
|
+
},
|
|
12420
|
+
{
|
|
12421
|
+
type: "null"
|
|
12422
|
+
}
|
|
12423
|
+
]
|
|
12424
|
+
}
|
|
12425
|
+
},
|
|
12426
|
+
required: [
|
|
12427
|
+
"status",
|
|
12428
|
+
"customerVisibleAt",
|
|
12429
|
+
"resolvedAt",
|
|
12430
|
+
"reopenedAt",
|
|
12431
|
+
"createdAt",
|
|
12432
|
+
"updatedAt",
|
|
12433
|
+
"materialUpdateAt"
|
|
12434
|
+
],
|
|
12435
|
+
additionalProperties: false
|
|
12436
|
+
},
|
|
12437
|
+
accountImportance: {
|
|
12438
|
+
type: "object",
|
|
12439
|
+
properties: {
|
|
12440
|
+
arrCents: {
|
|
12441
|
+
anyOf: [
|
|
12442
|
+
{
|
|
12443
|
+
type: "number",
|
|
12444
|
+
minimum: 0
|
|
12445
|
+
},
|
|
12446
|
+
{
|
|
12447
|
+
type: "null"
|
|
12448
|
+
}
|
|
12449
|
+
]
|
|
12450
|
+
},
|
|
12451
|
+
currency: {
|
|
12452
|
+
anyOf: [
|
|
12453
|
+
{
|
|
12454
|
+
type: "string",
|
|
12455
|
+
pattern: "^[A-Z]{3}$"
|
|
12456
|
+
},
|
|
12457
|
+
{
|
|
12458
|
+
type: "null"
|
|
12459
|
+
}
|
|
12460
|
+
]
|
|
12461
|
+
},
|
|
12462
|
+
arrShareWithinCurrency: {
|
|
12463
|
+
anyOf: [
|
|
12464
|
+
{
|
|
12465
|
+
type: "number",
|
|
12466
|
+
minimum: 0,
|
|
12467
|
+
maximum: 1
|
|
12468
|
+
},
|
|
12469
|
+
{
|
|
12470
|
+
type: "null"
|
|
12471
|
+
}
|
|
12472
|
+
],
|
|
12473
|
+
description: "Organization ARR share among customers using the same currency"
|
|
12474
|
+
},
|
|
12475
|
+
arrPercentileWithinCurrency: {
|
|
12476
|
+
anyOf: [
|
|
12477
|
+
{
|
|
12478
|
+
type: "number",
|
|
12479
|
+
minimum: 0,
|
|
12480
|
+
maximum: 100
|
|
12481
|
+
},
|
|
12482
|
+
{
|
|
12483
|
+
type: "null"
|
|
12484
|
+
}
|
|
12485
|
+
],
|
|
12486
|
+
description: "ARR percentile among customers using the same currency"
|
|
12487
|
+
},
|
|
12488
|
+
segments: {
|
|
12489
|
+
maxItems: 50,
|
|
12490
|
+
type: "array",
|
|
12491
|
+
items: {
|
|
12492
|
+
type: "string",
|
|
12493
|
+
minLength: 1,
|
|
12494
|
+
maxLength: 240
|
|
12495
|
+
}
|
|
12496
|
+
}
|
|
12497
|
+
},
|
|
12498
|
+
required: [
|
|
12499
|
+
"arrCents",
|
|
12500
|
+
"currency",
|
|
12501
|
+
"arrShareWithinCurrency",
|
|
12502
|
+
"arrPercentileWithinCurrency",
|
|
12503
|
+
"segments"
|
|
12504
|
+
],
|
|
12505
|
+
additionalProperties: false
|
|
12506
|
+
},
|
|
12507
|
+
preparedActionUrl: {
|
|
12508
|
+
anyOf: [
|
|
12509
|
+
{
|
|
12510
|
+
type: "string",
|
|
12511
|
+
maxLength: 2000,
|
|
12512
|
+
format: "uri"
|
|
10943
12513
|
},
|
|
10944
|
-
|
|
12514
|
+
{
|
|
12515
|
+
type: "null"
|
|
12516
|
+
}
|
|
12517
|
+
]
|
|
12518
|
+
},
|
|
12519
|
+
whatChanged: {
|
|
12520
|
+
type: "string",
|
|
12521
|
+
minLength: 1,
|
|
12522
|
+
maxLength: 8000
|
|
12523
|
+
},
|
|
12524
|
+
whyItMatters: {
|
|
12525
|
+
type: "string",
|
|
12526
|
+
minLength: 1,
|
|
12527
|
+
maxLength: 8000
|
|
12528
|
+
},
|
|
12529
|
+
uncertainty: {
|
|
12530
|
+
anyOf: [
|
|
12531
|
+
{
|
|
10945
12532
|
type: "string",
|
|
10946
|
-
|
|
12533
|
+
minLength: 1,
|
|
12534
|
+
maxLength: 8000
|
|
12535
|
+
},
|
|
12536
|
+
{
|
|
12537
|
+
type: "null"
|
|
12538
|
+
}
|
|
12539
|
+
]
|
|
12540
|
+
},
|
|
12541
|
+
priorityReason: {
|
|
12542
|
+
type: "string",
|
|
12543
|
+
minLength: 1,
|
|
12544
|
+
maxLength: 8000
|
|
12545
|
+
},
|
|
12546
|
+
timeline: {
|
|
12547
|
+
maxItems: 20,
|
|
12548
|
+
type: "array",
|
|
12549
|
+
items: {
|
|
12550
|
+
type: "object",
|
|
12551
|
+
properties: {
|
|
12552
|
+
title: {
|
|
12553
|
+
type: "string",
|
|
12554
|
+
minLength: 1,
|
|
12555
|
+
maxLength: 240
|
|
12556
|
+
},
|
|
12557
|
+
explanation: {
|
|
12558
|
+
type: "string",
|
|
12559
|
+
minLength: 1,
|
|
12560
|
+
maxLength: 4000
|
|
12561
|
+
},
|
|
12562
|
+
observedAt: {
|
|
12563
|
+
type: "string",
|
|
12564
|
+
format: "date-time",
|
|
12565
|
+
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))$"
|
|
12566
|
+
}
|
|
10947
12567
|
},
|
|
10948
|
-
|
|
10949
|
-
|
|
10950
|
-
|
|
10951
|
-
|
|
10952
|
-
|
|
10953
|
-
|
|
10954
|
-
|
|
10955
|
-
|
|
12568
|
+
required: [
|
|
12569
|
+
"title",
|
|
12570
|
+
"explanation",
|
|
12571
|
+
"observedAt"
|
|
12572
|
+
],
|
|
12573
|
+
additionalProperties: false
|
|
12574
|
+
}
|
|
12575
|
+
},
|
|
12576
|
+
evidence: {
|
|
12577
|
+
maxItems: 20,
|
|
12578
|
+
type: "array",
|
|
12579
|
+
items: {
|
|
12580
|
+
type: "object",
|
|
12581
|
+
properties: {
|
|
12582
|
+
role: {
|
|
12583
|
+
type: "string",
|
|
12584
|
+
enum: [
|
|
12585
|
+
"supporting",
|
|
12586
|
+
"contradictory",
|
|
12587
|
+
"context"
|
|
12588
|
+
]
|
|
12589
|
+
},
|
|
12590
|
+
kind: {
|
|
12591
|
+
type: "string",
|
|
12592
|
+
enum: [
|
|
12593
|
+
"metric",
|
|
12594
|
+
"communication",
|
|
12595
|
+
"record",
|
|
12596
|
+
"event"
|
|
12597
|
+
]
|
|
12598
|
+
},
|
|
12599
|
+
title: {
|
|
12600
|
+
type: "string",
|
|
12601
|
+
minLength: 1,
|
|
12602
|
+
maxLength: 500
|
|
12603
|
+
},
|
|
12604
|
+
observedAt: {
|
|
12605
|
+
anyOf: [
|
|
12606
|
+
{
|
|
10956
12607
|
type: "string",
|
|
10957
|
-
format: "
|
|
10958
|
-
pattern: "^([
|
|
12608
|
+
format: "date-time",
|
|
12609
|
+
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))$"
|
|
10959
12610
|
},
|
|
10960
|
-
|
|
10961
|
-
type: "
|
|
10962
|
-
|
|
10963
|
-
|
|
12611
|
+
{
|
|
12612
|
+
type: "null"
|
|
12613
|
+
}
|
|
12614
|
+
]
|
|
12615
|
+
},
|
|
12616
|
+
window: {
|
|
12617
|
+
anyOf: [
|
|
12618
|
+
{
|
|
12619
|
+
type: "object",
|
|
12620
|
+
properties: {
|
|
12621
|
+
start: {
|
|
12622
|
+
type: "string",
|
|
12623
|
+
format: "date-time",
|
|
12624
|
+
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))$"
|
|
12625
|
+
},
|
|
12626
|
+
end: {
|
|
12627
|
+
type: "string",
|
|
12628
|
+
format: "date-time",
|
|
12629
|
+
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))$"
|
|
12630
|
+
}
|
|
12631
|
+
},
|
|
12632
|
+
required: [
|
|
12633
|
+
"start",
|
|
12634
|
+
"end"
|
|
12635
|
+
],
|
|
12636
|
+
additionalProperties: false
|
|
10964
12637
|
},
|
|
10965
|
-
|
|
10966
|
-
type: "
|
|
10967
|
-
enum: [
|
|
10968
|
-
"active_days",
|
|
10969
|
-
"event_count"
|
|
10970
|
-
]
|
|
12638
|
+
{
|
|
12639
|
+
type: "null"
|
|
10971
12640
|
}
|
|
10972
|
-
|
|
10973
|
-
|
|
10974
|
-
|
|
10975
|
-
|
|
10976
|
-
|
|
10977
|
-
|
|
10978
|
-
additionalProperties: false
|
|
12641
|
+
]
|
|
12642
|
+
},
|
|
12643
|
+
sourceLabel: {
|
|
12644
|
+
type: "string",
|
|
12645
|
+
minLength: 1,
|
|
12646
|
+
maxLength: 240
|
|
10979
12647
|
}
|
|
12648
|
+
},
|
|
12649
|
+
required: [
|
|
12650
|
+
"role",
|
|
12651
|
+
"kind",
|
|
12652
|
+
"title",
|
|
12653
|
+
"observedAt",
|
|
12654
|
+
"window",
|
|
12655
|
+
"sourceLabel"
|
|
12656
|
+
],
|
|
12657
|
+
additionalProperties: false
|
|
12658
|
+
}
|
|
12659
|
+
},
|
|
12660
|
+
latestUpdate: {
|
|
12661
|
+
anyOf: [
|
|
12662
|
+
{
|
|
12663
|
+
type: "object",
|
|
12664
|
+
properties: {
|
|
12665
|
+
updatedAt: {
|
|
12666
|
+
type: "string",
|
|
12667
|
+
format: "date-time",
|
|
12668
|
+
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))$"
|
|
12669
|
+
},
|
|
12670
|
+
summary: {
|
|
12671
|
+
type: "string",
|
|
12672
|
+
minLength: 1,
|
|
12673
|
+
maxLength: 8000
|
|
12674
|
+
}
|
|
12675
|
+
},
|
|
12676
|
+
required: [
|
|
12677
|
+
"updatedAt",
|
|
12678
|
+
"summary"
|
|
12679
|
+
],
|
|
12680
|
+
additionalProperties: false
|
|
12681
|
+
},
|
|
12682
|
+
{
|
|
12683
|
+
type: "null"
|
|
10980
12684
|
}
|
|
10981
|
-
|
|
10982
|
-
required: [
|
|
10983
|
-
"sourceKey",
|
|
10984
|
-
"behaviorKey",
|
|
10985
|
-
"label",
|
|
10986
|
-
"eventSelection",
|
|
10987
|
-
"status",
|
|
10988
|
-
"evaluationMode",
|
|
10989
|
-
"definitions"
|
|
10990
|
-
],
|
|
10991
|
-
additionalProperties: false
|
|
12685
|
+
]
|
|
10992
12686
|
}
|
|
10993
12687
|
},
|
|
10994
12688
|
required: [
|
|
10995
|
-
"
|
|
10996
|
-
"
|
|
12689
|
+
"id",
|
|
12690
|
+
"customer",
|
|
12691
|
+
"title",
|
|
12692
|
+
"priority",
|
|
12693
|
+
"evidenceCount",
|
|
12694
|
+
"lifecycle",
|
|
12695
|
+
"accountImportance",
|
|
12696
|
+
"preparedActionUrl",
|
|
12697
|
+
"whatChanged",
|
|
12698
|
+
"whyItMatters",
|
|
12699
|
+
"uncertainty",
|
|
12700
|
+
"priorityReason",
|
|
12701
|
+
"timeline",
|
|
12702
|
+
"evidence",
|
|
12703
|
+
"latestUpdate"
|
|
10997
12704
|
],
|
|
10998
12705
|
additionalProperties: false
|
|
10999
12706
|
}
|
|
@@ -11029,6 +12736,7 @@ Returns column definitions and example queries for each view.`,
|
|
|
11029
12736
|
"outlit_list_users",
|
|
11030
12737
|
"outlit_list_workspace_users",
|
|
11031
12738
|
"outlit_get_customer",
|
|
12739
|
+
"outlit_get_customer_relationship",
|
|
11032
12740
|
"outlit_assign_customer_owner",
|
|
11033
12741
|
"outlit_grant_customer_access",
|
|
11034
12742
|
"outlit_update_customer_access",
|
|
@@ -11057,13 +12765,20 @@ Returns column definitions and example queries for each view.`,
|
|
|
11057
12765
|
"outlit_preview_customer_activation",
|
|
11058
12766
|
"outlit_update_customer_activation",
|
|
11059
12767
|
"outlit_get_workspace_settings",
|
|
11060
|
-
"outlit_update_workspace_settings"
|
|
12768
|
+
"outlit_update_workspace_settings",
|
|
12769
|
+
"outlit_list_features",
|
|
12770
|
+
"outlit_create_feature",
|
|
12771
|
+
"outlit_archive_feature",
|
|
12772
|
+
"outlit_get_customer_features",
|
|
12773
|
+
"outlit_list_attention_items",
|
|
12774
|
+
"outlit_get_attention_item"
|
|
11061
12775
|
],
|
|
11062
12776
|
cli: [
|
|
11063
12777
|
"outlit_list_customers",
|
|
11064
12778
|
"outlit_list_users",
|
|
11065
12779
|
"outlit_list_workspace_users",
|
|
11066
12780
|
"outlit_get_customer",
|
|
12781
|
+
"outlit_get_customer_relationship",
|
|
11067
12782
|
"outlit_assign_customer_owner",
|
|
11068
12783
|
"outlit_grant_customer_access",
|
|
11069
12784
|
"outlit_update_customer_access",
|
|
@@ -11093,9 +12808,12 @@ Returns column definitions and example queries for each view.`,
|
|
|
11093
12808
|
"outlit_update_customer_activation",
|
|
11094
12809
|
"outlit_get_workspace_settings",
|
|
11095
12810
|
"outlit_update_workspace_settings",
|
|
11096
|
-
"
|
|
11097
|
-
"
|
|
11098
|
-
"
|
|
12811
|
+
"outlit_list_features",
|
|
12812
|
+
"outlit_create_feature",
|
|
12813
|
+
"outlit_archive_feature",
|
|
12814
|
+
"outlit_get_customer_features",
|
|
12815
|
+
"outlit_list_attention_items",
|
|
12816
|
+
"outlit_get_attention_item"
|
|
11099
12817
|
]
|
|
11100
12818
|
};
|
|
11101
12819
|
toolGatewayTransport = {
|
|
@@ -12522,24 +14240,159 @@ var exports_update = {};
|
|
|
12522
14240
|
__export(exports_update, {
|
|
12523
14241
|
default: () => update_default
|
|
12524
14242
|
});
|
|
12525
|
-
var update_default;
|
|
12526
|
-
var init_update = __esm(() => {
|
|
14243
|
+
var update_default;
|
|
14244
|
+
var init_update = __esm(() => {
|
|
14245
|
+
init_dist();
|
|
14246
|
+
init_auth();
|
|
14247
|
+
init_output2();
|
|
14248
|
+
init_activation();
|
|
14249
|
+
init_api();
|
|
14250
|
+
update_default = defineCommand2({
|
|
14251
|
+
meta: {
|
|
14252
|
+
name: "update",
|
|
14253
|
+
description: [
|
|
14254
|
+
"Update the exact ordinary product event used for monotonic activation.",
|
|
14255
|
+
"",
|
|
14256
|
+
"Core applies the first matching product event to eligible contacts and their resolved",
|
|
14257
|
+
"company. Applications keep sending ordinary events; the CLI does not activate subjects.",
|
|
14258
|
+
"",
|
|
14259
|
+
"Examples:",
|
|
14260
|
+
" outlit activation update --event integration_connected --json",
|
|
14261
|
+
"",
|
|
14262
|
+
AGENT_JSON_HINT
|
|
14263
|
+
].join(`
|
|
14264
|
+
`)
|
|
14265
|
+
},
|
|
14266
|
+
args: {
|
|
14267
|
+
...authArgs,
|
|
14268
|
+
...outputArgs,
|
|
14269
|
+
...activationEventArg
|
|
14270
|
+
},
|
|
14271
|
+
async run({ args }) {
|
|
14272
|
+
const json = !!args.json;
|
|
14273
|
+
const eventName = parseActivationEvent(args, json);
|
|
14274
|
+
const client = await getClientOrExit(args["api-key"], json);
|
|
14275
|
+
return runTool(client, "outlit_update_customer_activation", { eventName }, json, {
|
|
14276
|
+
spinnerMessage: "Updating activation event..."
|
|
14277
|
+
});
|
|
14278
|
+
}
|
|
14279
|
+
});
|
|
14280
|
+
});
|
|
14281
|
+
|
|
14282
|
+
// src/commands/activation/disable.ts
|
|
14283
|
+
var exports_disable = {};
|
|
14284
|
+
__export(exports_disable, {
|
|
14285
|
+
default: () => disable_default
|
|
14286
|
+
});
|
|
14287
|
+
var disable_default;
|
|
14288
|
+
var init_disable = __esm(() => {
|
|
14289
|
+
init_dist();
|
|
14290
|
+
init_auth();
|
|
14291
|
+
init_output2();
|
|
14292
|
+
init_api();
|
|
14293
|
+
disable_default = defineCommand2({
|
|
14294
|
+
meta: {
|
|
14295
|
+
name: "disable",
|
|
14296
|
+
description: [
|
|
14297
|
+
"Disable future activation matching for contacts and companies.",
|
|
14298
|
+
"",
|
|
14299
|
+
"Existing contact and company activation timestamps remain unchanged.",
|
|
14300
|
+
"",
|
|
14301
|
+
"Examples:",
|
|
14302
|
+
" outlit activation disable --json",
|
|
14303
|
+
"",
|
|
14304
|
+
AGENT_JSON_HINT
|
|
14305
|
+
].join(`
|
|
14306
|
+
`)
|
|
14307
|
+
},
|
|
14308
|
+
args: {
|
|
14309
|
+
...authArgs,
|
|
14310
|
+
...outputArgs
|
|
14311
|
+
},
|
|
14312
|
+
async run({ args }) {
|
|
14313
|
+
const json = !!args.json;
|
|
14314
|
+
const client = await getClientOrExit(args["api-key"], json);
|
|
14315
|
+
return runTool(client, "outlit_update_customer_activation", { eventName: null }, json, {
|
|
14316
|
+
spinnerMessage: "Disabling activation matching..."
|
|
14317
|
+
});
|
|
14318
|
+
}
|
|
14319
|
+
});
|
|
14320
|
+
});
|
|
14321
|
+
|
|
14322
|
+
// src/commands/activation/index.ts
|
|
14323
|
+
var exports_activation = {};
|
|
14324
|
+
__export(exports_activation, {
|
|
14325
|
+
default: () => activation_default
|
|
14326
|
+
});
|
|
14327
|
+
var activation_default;
|
|
14328
|
+
var init_activation2 = __esm(() => {
|
|
14329
|
+
init_dist();
|
|
14330
|
+
init_output2();
|
|
14331
|
+
activation_default = defineCommand2({
|
|
14332
|
+
meta: {
|
|
14333
|
+
name: "activation",
|
|
14334
|
+
description: [
|
|
14335
|
+
"Inspect, preview, and configure the product event used for activation.",
|
|
14336
|
+
"",
|
|
14337
|
+
"The same exact event activates eligible contacts and their resolved company.",
|
|
14338
|
+
"Core writes each activation timestamp once; later matches are no-ops.",
|
|
14339
|
+
"",
|
|
14340
|
+
"Commands:",
|
|
14341
|
+
" get Get the configured activation event",
|
|
14342
|
+
" preview Preview historical exact-event matches",
|
|
14343
|
+
" update Update the configured activation event",
|
|
14344
|
+
" disable Disable future activation matching",
|
|
14345
|
+
"",
|
|
14346
|
+
"Examples:",
|
|
14347
|
+
" outlit activation get --json",
|
|
14348
|
+
" outlit activation preview --event integration_connected --json",
|
|
14349
|
+
" outlit activation update --event integration_connected --json",
|
|
14350
|
+
" outlit activation disable --json",
|
|
14351
|
+
"",
|
|
14352
|
+
AGENT_JSON_HINT
|
|
14353
|
+
].join(`
|
|
14354
|
+
`)
|
|
14355
|
+
},
|
|
14356
|
+
subCommands: {
|
|
14357
|
+
get: () => Promise.resolve().then(() => (init_get(), exports_get)).then((module) => module.default),
|
|
14358
|
+
preview: () => Promise.resolve().then(() => (init_preview(), exports_preview)).then((module) => module.default),
|
|
14359
|
+
update: () => Promise.resolve().then(() => (init_update(), exports_update)).then((module) => module.default),
|
|
14360
|
+
disable: () => Promise.resolve().then(() => (init_disable(), exports_disable)).then((module) => module.default)
|
|
14361
|
+
}
|
|
14362
|
+
});
|
|
14363
|
+
});
|
|
14364
|
+
|
|
14365
|
+
// src/commands/attention/list.ts
|
|
14366
|
+
var exports_list = {};
|
|
14367
|
+
__export(exports_list, {
|
|
14368
|
+
default: () => list_default
|
|
14369
|
+
});
|
|
14370
|
+
function isOneOf(values, value) {
|
|
14371
|
+
return value !== undefined && values.includes(value);
|
|
14372
|
+
}
|
|
14373
|
+
var statuses, list_default;
|
|
14374
|
+
var init_list = __esm(() => {
|
|
14375
|
+
init_dist4();
|
|
12527
14376
|
init_dist();
|
|
12528
14377
|
init_auth();
|
|
12529
14378
|
init_output2();
|
|
12530
|
-
init_activation();
|
|
12531
14379
|
init_api();
|
|
12532
|
-
|
|
14380
|
+
init_output();
|
|
14381
|
+
statuses = ["open", "resolved"];
|
|
14382
|
+
list_default = defineCommand2({
|
|
12533
14383
|
meta: {
|
|
12534
|
-
name: "
|
|
14384
|
+
name: "list",
|
|
12535
14385
|
description: [
|
|
12536
|
-
"
|
|
14386
|
+
"List authorized open or resolved Attention items.",
|
|
12537
14387
|
"",
|
|
12538
|
-
"
|
|
12539
|
-
"
|
|
14388
|
+
"The response is bounded and includes current priority, lifecycle, customer identity,",
|
|
14389
|
+
"Core-owned ARR importance, and a prepared-action URL when review is available. It does not include email drafts,",
|
|
14390
|
+
"evidence identifiers, raw source-quote fields, or internal agent state.",
|
|
12540
14391
|
"",
|
|
12541
14392
|
"Examples:",
|
|
12542
|
-
" outlit
|
|
14393
|
+
" outlit attention list",
|
|
14394
|
+
" outlit attention list --status resolved",
|
|
14395
|
+
" outlit attention list --customer-id 550e8400-e29b-41d4-a716-446655440000 --json",
|
|
12543
14396
|
"",
|
|
12544
14397
|
AGENT_JSON_HINT
|
|
12545
14398
|
].join(`
|
|
@@ -12548,40 +14401,73 @@ var init_update = __esm(() => {
|
|
|
12548
14401
|
args: {
|
|
12549
14402
|
...authArgs,
|
|
12550
14403
|
...outputArgs,
|
|
12551
|
-
|
|
14404
|
+
status: {
|
|
14405
|
+
type: "string",
|
|
14406
|
+
description: "Lifecycle filter: open or resolved (Core default: open)"
|
|
14407
|
+
},
|
|
14408
|
+
"customer-id": {
|
|
14409
|
+
type: "string",
|
|
14410
|
+
description: "Filter by exact customer UUID"
|
|
14411
|
+
},
|
|
14412
|
+
limit: {
|
|
14413
|
+
type: "string",
|
|
14414
|
+
description: "Results per page (1-100; Core default: 25)"
|
|
14415
|
+
},
|
|
14416
|
+
cursor: {
|
|
14417
|
+
type: "string",
|
|
14418
|
+
description: "Opaque cursor from a previous response with the same filters"
|
|
14419
|
+
}
|
|
12552
14420
|
},
|
|
12553
14421
|
async run({ args }) {
|
|
12554
14422
|
const json = !!args.json;
|
|
12555
|
-
|
|
14423
|
+
if (args.status !== undefined && !isOneOf(statuses, args.status)) {
|
|
14424
|
+
return outputError({ message: `--status must be one of: ${statuses.join(", ")}`, code: "invalid_input" }, json);
|
|
14425
|
+
}
|
|
14426
|
+
const params = {};
|
|
14427
|
+
if (args.status)
|
|
14428
|
+
params.status = args.status;
|
|
14429
|
+
if (args["customer-id"])
|
|
14430
|
+
params.customerId = args["customer-id"];
|
|
14431
|
+
if (args.limit) {
|
|
14432
|
+
const limit = Number(args.limit);
|
|
14433
|
+
if (!Number.isInteger(limit) || limit < 1 || limit > 100) {
|
|
14434
|
+
return outputError({ message: "--limit must be an integer between 1 and 100", code: "invalid_input" }, json);
|
|
14435
|
+
}
|
|
14436
|
+
params.limit = limit;
|
|
14437
|
+
}
|
|
14438
|
+
if (args.cursor)
|
|
14439
|
+
params.cursor = args.cursor;
|
|
12556
14440
|
const client = await getClientOrExit(args["api-key"], json);
|
|
12557
|
-
return runTool(client,
|
|
12558
|
-
spinnerMessage: "Updating activation event..."
|
|
12559
|
-
});
|
|
14441
|
+
return runTool(client, publicToolContracts.outlit_list_attention_items.toolName, params, json);
|
|
12560
14442
|
}
|
|
12561
14443
|
});
|
|
12562
14444
|
});
|
|
12563
14445
|
|
|
12564
|
-
// src/commands/
|
|
12565
|
-
var
|
|
12566
|
-
__export(
|
|
12567
|
-
default: () =>
|
|
14446
|
+
// src/commands/attention/get.ts
|
|
14447
|
+
var exports_get2 = {};
|
|
14448
|
+
__export(exports_get2, {
|
|
14449
|
+
default: () => get_default2
|
|
12568
14450
|
});
|
|
12569
|
-
var
|
|
12570
|
-
var
|
|
14451
|
+
var get_default2;
|
|
14452
|
+
var init_get2 = __esm(() => {
|
|
14453
|
+
init_dist4();
|
|
12571
14454
|
init_dist();
|
|
12572
14455
|
init_auth();
|
|
12573
14456
|
init_output2();
|
|
12574
14457
|
init_api();
|
|
12575
|
-
|
|
14458
|
+
get_default2 = defineCommand2({
|
|
12576
14459
|
meta: {
|
|
12577
|
-
name: "
|
|
14460
|
+
name: "get",
|
|
12578
14461
|
description: [
|
|
12579
|
-
"
|
|
14462
|
+
"Get one authorized Attention item by exact ID.",
|
|
12580
14463
|
"",
|
|
12581
|
-
"
|
|
14464
|
+
"Returns the bounded current assessment, timeline, evidence summaries, Core-owned ARR",
|
|
14465
|
+
"importance, and a prepared-action URL when review is available. It does not expose email drafts, evidence IDs,",
|
|
14466
|
+
"raw source-quote fields, or internal agent state.",
|
|
12582
14467
|
"",
|
|
12583
14468
|
"Examples:",
|
|
12584
|
-
" outlit
|
|
14469
|
+
" outlit attention get 550e8400-e29b-41d4-a716-446655440000",
|
|
14470
|
+
" outlit attention get 550e8400-e29b-41d4-a716-446655440000 --json",
|
|
12585
14471
|
"",
|
|
12586
14472
|
AGENT_JSON_HINT
|
|
12587
14473
|
].join(`
|
|
@@ -12589,57 +14475,47 @@ var init_disable = __esm(() => {
|
|
|
12589
14475
|
},
|
|
12590
14476
|
args: {
|
|
12591
14477
|
...authArgs,
|
|
12592
|
-
...outputArgs
|
|
14478
|
+
...outputArgs,
|
|
14479
|
+
id: {
|
|
14480
|
+
type: "positional",
|
|
14481
|
+
description: "Exact Attention item UUID",
|
|
14482
|
+
required: true
|
|
14483
|
+
}
|
|
12593
14484
|
},
|
|
12594
14485
|
async run({ args }) {
|
|
12595
14486
|
const json = !!args.json;
|
|
12596
14487
|
const client = await getClientOrExit(args["api-key"], json);
|
|
12597
|
-
return runTool(client,
|
|
12598
|
-
spinnerMessage: "Disabling activation matching..."
|
|
12599
|
-
});
|
|
14488
|
+
return runTool(client, publicToolContracts.outlit_get_attention_item.toolName, { id: args.id }, json);
|
|
12600
14489
|
}
|
|
12601
14490
|
});
|
|
12602
14491
|
});
|
|
12603
14492
|
|
|
12604
|
-
// src/commands/
|
|
12605
|
-
var
|
|
12606
|
-
__export(
|
|
12607
|
-
default: () =>
|
|
14493
|
+
// src/commands/attention/index.ts
|
|
14494
|
+
var exports_attention = {};
|
|
14495
|
+
__export(exports_attention, {
|
|
14496
|
+
default: () => attention_default
|
|
12608
14497
|
});
|
|
12609
|
-
var
|
|
12610
|
-
var
|
|
14498
|
+
var attention_default;
|
|
14499
|
+
var init_attention = __esm(() => {
|
|
12611
14500
|
init_dist();
|
|
12612
14501
|
init_output2();
|
|
12613
|
-
|
|
14502
|
+
attention_default = defineCommand2({
|
|
12614
14503
|
meta: {
|
|
12615
|
-
name: "
|
|
14504
|
+
name: "attention",
|
|
12616
14505
|
description: [
|
|
12617
|
-
"Inspect
|
|
12618
|
-
"",
|
|
12619
|
-
"The same exact event activates eligible contacts and their resolved company.",
|
|
12620
|
-
"Core writes each activation timestamp once; later matches are no-ops.",
|
|
12621
|
-
"",
|
|
12622
|
-
"Commands:",
|
|
12623
|
-
" get Get the configured activation event",
|
|
12624
|
-
" preview Preview historical exact-event matches",
|
|
12625
|
-
" update Update the configured activation event",
|
|
12626
|
-
" disable Disable future activation matching",
|
|
14506
|
+
"Inspect authorized customer Attention items.",
|
|
12627
14507
|
"",
|
|
12628
|
-
"
|
|
12629
|
-
"
|
|
12630
|
-
"
|
|
12631
|
-
" outlit activation update --event integration_connected --json",
|
|
12632
|
-
" outlit activation disable --json",
|
|
14508
|
+
"Subcommands:",
|
|
14509
|
+
" list -- list open or resolved Attention items",
|
|
14510
|
+
" get -- get one Attention item by exact ID",
|
|
12633
14511
|
"",
|
|
12634
14512
|
AGENT_JSON_HINT
|
|
12635
14513
|
].join(`
|
|
12636
14514
|
`)
|
|
12637
14515
|
},
|
|
12638
14516
|
subCommands: {
|
|
12639
|
-
|
|
12640
|
-
|
|
12641
|
-
update: () => Promise.resolve().then(() => (init_update(), exports_update)).then((module) => module.default),
|
|
12642
|
-
disable: () => Promise.resolve().then(() => (init_disable(), exports_disable)).then((module) => module.default)
|
|
14517
|
+
list: () => Promise.resolve().then(() => (init_list(), exports_list)).then((module) => module.default),
|
|
14518
|
+
get: () => Promise.resolve().then(() => (init_get2(), exports_get2)).then((module) => module.default)
|
|
12643
14519
|
}
|
|
12644
14520
|
});
|
|
12645
14521
|
});
|
|
@@ -12865,9 +14741,9 @@ var init_platform_input = __esm(() => {
|
|
|
12865
14741
|
});
|
|
12866
14742
|
|
|
12867
14743
|
// src/commands/customers/list.ts
|
|
12868
|
-
var
|
|
12869
|
-
__export(
|
|
12870
|
-
default: () =>
|
|
14744
|
+
var exports_list2 = {};
|
|
14745
|
+
__export(exports_list2, {
|
|
14746
|
+
default: () => list_default2
|
|
12871
14747
|
});
|
|
12872
14748
|
function normalizeCustomerListResult(data) {
|
|
12873
14749
|
if (typeof data !== "object" || data === null || Array.isArray(data)) {
|
|
@@ -12896,8 +14772,8 @@ function normalizeCustomerListResult(data) {
|
|
|
12896
14772
|
})
|
|
12897
14773
|
};
|
|
12898
14774
|
}
|
|
12899
|
-
var
|
|
12900
|
-
var
|
|
14775
|
+
var list_default2;
|
|
14776
|
+
var init_list2 = __esm(() => {
|
|
12901
14777
|
init_dist4();
|
|
12902
14778
|
init_dist();
|
|
12903
14779
|
init_auth();
|
|
@@ -12907,7 +14783,7 @@ var init_list = __esm(() => {
|
|
|
12907
14783
|
init_api();
|
|
12908
14784
|
init_output();
|
|
12909
14785
|
init_platform_input();
|
|
12910
|
-
|
|
14786
|
+
list_default2 = defineCommand2({
|
|
12911
14787
|
meta: {
|
|
12912
14788
|
name: "list",
|
|
12913
14789
|
description: [
|
|
@@ -13039,38 +14915,190 @@ var init_list = __esm(() => {
|
|
|
13039
14915
|
});
|
|
13040
14916
|
|
|
13041
14917
|
// src/commands/customers/get.ts
|
|
13042
|
-
var
|
|
13043
|
-
__export(
|
|
13044
|
-
default: () =>
|
|
14918
|
+
var exports_get3 = {};
|
|
14919
|
+
__export(exports_get3, {
|
|
14920
|
+
default: () => get_default3
|
|
13045
14921
|
});
|
|
13046
|
-
var
|
|
13047
|
-
var
|
|
14922
|
+
var get_default3;
|
|
14923
|
+
var init_get3 = __esm(() => {
|
|
13048
14924
|
init_dist4();
|
|
13049
14925
|
init_dist();
|
|
13050
14926
|
init_auth();
|
|
13051
14927
|
init_output2();
|
|
13052
14928
|
init_api();
|
|
13053
14929
|
init_config();
|
|
13054
|
-
|
|
14930
|
+
get_default3 = defineCommand2({
|
|
14931
|
+
meta: {
|
|
14932
|
+
name: "get",
|
|
14933
|
+
description: [
|
|
14934
|
+
"Get details for a customer by ID, domain, or name.",
|
|
14935
|
+
"",
|
|
14936
|
+
"The customer argument accepts:",
|
|
14937
|
+
" - Customer domain (acme.com)",
|
|
14938
|
+
" - Customer ID (UUID)",
|
|
14939
|
+
" - Customer name (partial match)",
|
|
14940
|
+
"",
|
|
14941
|
+
'The primary record is returned under "customer". --include users adds "users".',
|
|
14942
|
+
"",
|
|
14943
|
+
`Available include sections: ${customerIncludeSections.join(", ")}`,
|
|
14944
|
+
`Timeframes: ${customerTimeframes.join(", ")}`,
|
|
14945
|
+
"",
|
|
14946
|
+
"Examples:",
|
|
14947
|
+
" outlit customers get acme.com",
|
|
14948
|
+
" outlit customers get acme.com --include users,revenue",
|
|
14949
|
+
" outlit customers get acme.com --include users,revenue,recentTimeline --timeframe 90d",
|
|
14950
|
+
"",
|
|
14951
|
+
AGENT_JSON_HINT
|
|
14952
|
+
].join(`
|
|
14953
|
+
`)
|
|
14954
|
+
},
|
|
14955
|
+
args: {
|
|
14956
|
+
...authArgs,
|
|
14957
|
+
...outputArgs,
|
|
14958
|
+
customer: {
|
|
14959
|
+
type: "positional",
|
|
14960
|
+
description: "Customer ID, domain (acme.com), or name",
|
|
14961
|
+
required: true
|
|
14962
|
+
},
|
|
14963
|
+
include: {
|
|
14964
|
+
type: "string",
|
|
14965
|
+
description: [
|
|
14966
|
+
"Comma-separated sections to include in response.",
|
|
14967
|
+
`Available: ${customerIncludeSections.join(", ")}`,
|
|
14968
|
+
'Included sections use their contract keys, such as "users" and "revenue".'
|
|
14969
|
+
].join(`
|
|
14970
|
+
`)
|
|
14971
|
+
},
|
|
14972
|
+
timeframe: {
|
|
14973
|
+
type: "string",
|
|
14974
|
+
description: "Timeframe for metrics (7d, 14d, 30d, 90d)",
|
|
14975
|
+
default: "30d"
|
|
14976
|
+
}
|
|
14977
|
+
},
|
|
14978
|
+
async run({ args }) {
|
|
14979
|
+
const json = !!args.json;
|
|
14980
|
+
const client = await getClientOrExit(args["api-key"], json);
|
|
14981
|
+
const params = {
|
|
14982
|
+
customer: args.customer,
|
|
14983
|
+
timeframe: args.timeframe
|
|
14984
|
+
};
|
|
14985
|
+
if (args.include) {
|
|
14986
|
+
params.include = splitCsv(args.include);
|
|
14987
|
+
}
|
|
14988
|
+
return runTool(client, publicToolContracts.outlit_get_customer.toolName, params, json);
|
|
14989
|
+
}
|
|
14990
|
+
});
|
|
14991
|
+
});
|
|
14992
|
+
|
|
14993
|
+
// src/commands/customers/relationship.ts
|
|
14994
|
+
var exports_relationship = {};
|
|
14995
|
+
__export(exports_relationship, {
|
|
14996
|
+
default: () => relationship_default
|
|
14997
|
+
});
|
|
14998
|
+
var relationship_default;
|
|
14999
|
+
var init_relationship = __esm(() => {
|
|
15000
|
+
init_dist4();
|
|
15001
|
+
init_dist();
|
|
15002
|
+
init_auth();
|
|
15003
|
+
init_output2();
|
|
15004
|
+
init_api();
|
|
15005
|
+
relationship_default = defineCommand2({
|
|
15006
|
+
meta: {
|
|
15007
|
+
name: "relationship",
|
|
15008
|
+
description: [
|
|
15009
|
+
"Get the bounded relationship for a customer.",
|
|
15010
|
+
"",
|
|
15011
|
+
"Returns the durable customer-detail read model: a relationship summary, up to eight categorized",
|
|
15012
|
+
"current statements, ISO observed-at timestamps when supported, source labels, and a compiled",
|
|
15013
|
+
"summary timestamp when available. It does not expand the compact customer get response, expose",
|
|
15014
|
+
"raw fact IDs or source quotes, or replace the chronological timeline.",
|
|
15015
|
+
"",
|
|
15016
|
+
"The customer argument accepts:",
|
|
15017
|
+
" - Customer domain (acme.com)",
|
|
15018
|
+
" - Customer ID (UUID)",
|
|
15019
|
+
" - Exact customer name",
|
|
15020
|
+
"",
|
|
15021
|
+
"Examples:",
|
|
15022
|
+
" outlit customers relationship acme.com",
|
|
15023
|
+
" outlit customers relationship acme.com --json",
|
|
15024
|
+
"",
|
|
15025
|
+
AGENT_JSON_HINT
|
|
15026
|
+
].join(`
|
|
15027
|
+
`)
|
|
15028
|
+
},
|
|
15029
|
+
args: {
|
|
15030
|
+
...authArgs,
|
|
15031
|
+
...outputArgs,
|
|
15032
|
+
customer: {
|
|
15033
|
+
type: "positional",
|
|
15034
|
+
description: "Customer ID, domain (acme.com), or name",
|
|
15035
|
+
required: true
|
|
15036
|
+
}
|
|
15037
|
+
},
|
|
15038
|
+
async run({ args }) {
|
|
15039
|
+
const json = !!args.json;
|
|
15040
|
+
const client = await getClientOrExit(args["api-key"], json);
|
|
15041
|
+
return runTool(client, publicToolContracts.outlit_get_customer_relationship.toolName, { customer: args.customer }, json);
|
|
15042
|
+
}
|
|
15043
|
+
});
|
|
15044
|
+
});
|
|
15045
|
+
|
|
15046
|
+
// src/commands/features/input.ts
|
|
15047
|
+
function parseBoundedInteger2(value, fallback, flag, min, max, json) {
|
|
15048
|
+
const parsed = parseIntegerFlag(value, fallback, flag, json);
|
|
15049
|
+
if (parsed < min || parsed > max) {
|
|
15050
|
+
return outputError({ message: `${flag} must be an integer from ${min} to ${max}`, code: "invalid_input" }, json);
|
|
15051
|
+
}
|
|
15052
|
+
return parsed;
|
|
15053
|
+
}
|
|
15054
|
+
function parsePropertyFilters(value, json) {
|
|
15055
|
+
if (!value?.trim())
|
|
15056
|
+
return [];
|
|
15057
|
+
try {
|
|
15058
|
+
const parsed = JSON.parse(value);
|
|
15059
|
+
if (!Array.isArray(parsed)) {
|
|
15060
|
+
return outputError({ message: "--property-filters must be a JSON array", code: "invalid_input" }, json);
|
|
15061
|
+
}
|
|
15062
|
+
return parsed;
|
|
15063
|
+
} catch (error) {
|
|
15064
|
+
return outputError({
|
|
15065
|
+
message: `Invalid --property-filters JSON: ${errorMessage(error, "parse failed")}`,
|
|
15066
|
+
code: "invalid_input"
|
|
15067
|
+
}, json);
|
|
15068
|
+
}
|
|
15069
|
+
}
|
|
15070
|
+
var init_input = __esm(() => {
|
|
15071
|
+
init_output();
|
|
15072
|
+
init_platform_input();
|
|
15073
|
+
});
|
|
15074
|
+
|
|
15075
|
+
// src/commands/customers/features.ts
|
|
15076
|
+
var exports_features = {};
|
|
15077
|
+
__export(exports_features, {
|
|
15078
|
+
default: () => features_default
|
|
15079
|
+
});
|
|
15080
|
+
var features_default;
|
|
15081
|
+
var init_features = __esm(() => {
|
|
15082
|
+
init_dist4();
|
|
15083
|
+
init_dist();
|
|
15084
|
+
init_auth();
|
|
15085
|
+
init_output2();
|
|
15086
|
+
init_api();
|
|
15087
|
+
init_platform_input();
|
|
15088
|
+
init_input();
|
|
15089
|
+
features_default = defineCommand2({
|
|
13055
15090
|
meta: {
|
|
13056
|
-
name: "
|
|
15091
|
+
name: "features",
|
|
13057
15092
|
description: [
|
|
13058
|
-
"
|
|
13059
|
-
"",
|
|
13060
|
-
"The customer argument accepts:",
|
|
13061
|
-
" - Customer domain (acme.com)",
|
|
13062
|
-
" - Customer ID (UUID)",
|
|
13063
|
-
" - Customer name (partial match)",
|
|
15093
|
+
"Read exact historical Feature usage for one authorized customer.",
|
|
15094
|
+
"Unavailable source evidence remains distinct from no matches in the requested window.",
|
|
13064
15095
|
"",
|
|
13065
|
-
|
|
13066
|
-
"",
|
|
13067
|
-
`Available include sections: ${customerIncludeSections.join(", ")}`,
|
|
13068
|
-
`Timeframes: ${customerTimeframes.join(", ")}`,
|
|
15096
|
+
"The customer argument accepts a customer domain, UUID, or exact name.",
|
|
13069
15097
|
"",
|
|
13070
15098
|
"Examples:",
|
|
13071
|
-
" outlit customers
|
|
13072
|
-
" outlit customers
|
|
13073
|
-
" outlit customers
|
|
15099
|
+
" outlit customers features acme.com --json",
|
|
15100
|
+
" outlit customers features acme.com --weeks 6 --json",
|
|
15101
|
+
" outlit customers features acme.com --weeks 53 --weekly --json",
|
|
13074
15102
|
"",
|
|
13075
15103
|
AGENT_JSON_HINT
|
|
13076
15104
|
].join(`
|
|
@@ -13081,35 +15109,24 @@ var init_get2 = __esm(() => {
|
|
|
13081
15109
|
...outputArgs,
|
|
13082
15110
|
customer: {
|
|
13083
15111
|
type: "positional",
|
|
13084
|
-
description: "Customer ID, domain (acme.com), or name",
|
|
15112
|
+
description: "Customer ID, domain (acme.com), or exact name",
|
|
13085
15113
|
required: true
|
|
13086
15114
|
},
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13091
|
-
|
|
13092
|
-
'Included sections use their contract keys, such as "users" and "revenue".'
|
|
13093
|
-
].join(`
|
|
13094
|
-
`)
|
|
13095
|
-
},
|
|
13096
|
-
timeframe: {
|
|
13097
|
-
type: "string",
|
|
13098
|
-
description: "Timeframe for metrics (7d, 14d, 30d, 90d)",
|
|
13099
|
-
default: "30d"
|
|
15115
|
+
weeks: { type: "string", description: "Historical usage window in weeks (1-53, default: 12)" },
|
|
15116
|
+
weekly: {
|
|
15117
|
+
type: "boolean",
|
|
15118
|
+
description: "Include ordered weekly event counts and active days",
|
|
15119
|
+
default: false
|
|
13100
15120
|
}
|
|
13101
15121
|
},
|
|
13102
15122
|
async run({ args }) {
|
|
13103
15123
|
const json = !!args.json;
|
|
13104
15124
|
const client = await getClientOrExit(args["api-key"], json);
|
|
13105
|
-
|
|
13106
|
-
customer: args.customer,
|
|
13107
|
-
|
|
13108
|
-
|
|
13109
|
-
|
|
13110
|
-
params.include = splitCsv(args.include);
|
|
13111
|
-
}
|
|
13112
|
-
return runTool(client, publicToolContracts.outlit_get_customer.toolName, params, json);
|
|
15125
|
+
return runTool(client, publicToolContracts.outlit_get_customer_features.toolName, {
|
|
15126
|
+
customer: requiredTrimmedString(args.customer, "<customer>", json),
|
|
15127
|
+
weeks: parseBoundedInteger2(args.weeks, 12, "--weeks", 1, 53, json),
|
|
15128
|
+
...args.weekly ? { includeWeeklyUsage: true } : {}
|
|
15129
|
+
}, json, { spinnerMessage: "Loading customer feature usage..." });
|
|
13113
15130
|
}
|
|
13114
15131
|
});
|
|
13115
15132
|
});
|
|
@@ -13163,7 +15180,7 @@ var init_timeline = __esm(() => {
|
|
|
13163
15180
|
" outlit customers timeline acme.com",
|
|
13164
15181
|
" outlit customers timeline acme.com --timeframe 90d",
|
|
13165
15182
|
" outlit customers timeline acme.com --channels COMMUNICATION,MEETING",
|
|
13166
|
-
" outlit customers timeline acme.com --start-date 2025-01-01T00:00:00Z --end-date 2025-03-01T23:59:
|
|
15183
|
+
" outlit customers timeline acme.com --start-date 2025-01-01T00:00:00Z --end-date 2025-03-01T23:59:59.999Z",
|
|
13167
15184
|
" outlit customers timeline acme.com --event-types PAGE_VIEW,MEETING --limit 50",
|
|
13168
15185
|
"",
|
|
13169
15186
|
AGENT_JSON_HINT
|
|
@@ -13198,7 +15215,7 @@ var init_timeline = __esm(() => {
|
|
|
13198
15215
|
},
|
|
13199
15216
|
"end-date": {
|
|
13200
15217
|
type: "string",
|
|
13201
|
-
description: "End datetime for the event range (ISO 8601, e.g. 2025-03-01T23:59:
|
|
15218
|
+
description: "End datetime for the event range (ISO 8601, e.g. 2025-03-01T23:59:59.999Z). When set, --timeframe is ignored."
|
|
13202
15219
|
}
|
|
13203
15220
|
},
|
|
13204
15221
|
async run({ args }) {
|
|
@@ -13456,6 +15473,8 @@ var init_customers = __esm(() => {
|
|
|
13456
15473
|
"Subcommands:",
|
|
13457
15474
|
" list -- list customers with filters",
|
|
13458
15475
|
" get -- get a specific customer by ID or domain",
|
|
15476
|
+
" relationship -- get the bounded relationship for a customer",
|
|
15477
|
+
" features -- get exact Feature usage for a customer",
|
|
13459
15478
|
" timeline -- show activity timeline for a customer",
|
|
13460
15479
|
" owner set -- assign a primary customer owner",
|
|
13461
15480
|
" grant -- grant or change Viewer or Editor access",
|
|
@@ -13466,8 +15485,10 @@ var init_customers = __esm(() => {
|
|
|
13466
15485
|
`)
|
|
13467
15486
|
},
|
|
13468
15487
|
subCommands: {
|
|
13469
|
-
list: () => Promise.resolve().then(() => (
|
|
13470
|
-
get: () => Promise.resolve().then(() => (
|
|
15488
|
+
list: () => Promise.resolve().then(() => (init_list2(), exports_list2)).then((m) => m.default),
|
|
15489
|
+
get: () => Promise.resolve().then(() => (init_get3(), exports_get3)).then((m) => m.default),
|
|
15490
|
+
relationship: () => Promise.resolve().then(() => (init_relationship(), exports_relationship)).then((m) => m.default),
|
|
15491
|
+
features: () => Promise.resolve().then(() => (init_features(), exports_features)).then((m) => m.default),
|
|
13471
15492
|
timeline: () => Promise.resolve().then(() => (init_timeline(), exports_timeline)).then((m) => m.default),
|
|
13472
15493
|
owner: () => Promise.resolve().then(() => (init_owner(), exports_owner)).then((m) => m.default),
|
|
13473
15494
|
grant: () => Promise.resolve().then(() => (init_grant(), exports_grant)).then((m) => m.default),
|
|
@@ -13477,12 +15498,12 @@ var init_customers = __esm(() => {
|
|
|
13477
15498
|
});
|
|
13478
15499
|
|
|
13479
15500
|
// src/commands/users/list.ts
|
|
13480
|
-
var
|
|
13481
|
-
__export(
|
|
13482
|
-
default: () =>
|
|
15501
|
+
var exports_list3 = {};
|
|
15502
|
+
__export(exports_list3, {
|
|
15503
|
+
default: () => list_default3
|
|
13483
15504
|
});
|
|
13484
|
-
var
|
|
13485
|
-
var
|
|
15505
|
+
var list_default3;
|
|
15506
|
+
var init_list3 = __esm(() => {
|
|
13486
15507
|
init_dist4();
|
|
13487
15508
|
init_dist();
|
|
13488
15509
|
init_auth();
|
|
@@ -13491,7 +15512,7 @@ var init_list2 = __esm(() => {
|
|
|
13491
15512
|
init_pagination();
|
|
13492
15513
|
init_api();
|
|
13493
15514
|
init_output();
|
|
13494
|
-
|
|
15515
|
+
list_default3 = defineCommand2({
|
|
13495
15516
|
meta: {
|
|
13496
15517
|
name: "list",
|
|
13497
15518
|
description: [
|
|
@@ -13594,15 +15615,15 @@ var init_users = __esm(() => {
|
|
|
13594
15615
|
`)
|
|
13595
15616
|
},
|
|
13596
15617
|
subCommands: {
|
|
13597
|
-
list: () => Promise.resolve().then(() => (
|
|
15618
|
+
list: () => Promise.resolve().then(() => (init_list3(), exports_list3)).then((m) => m.default)
|
|
13598
15619
|
}
|
|
13599
15620
|
});
|
|
13600
15621
|
});
|
|
13601
15622
|
|
|
13602
15623
|
// src/commands/ws-users/list.ts
|
|
13603
|
-
var
|
|
13604
|
-
__export(
|
|
13605
|
-
default: () =>
|
|
15624
|
+
var exports_list4 = {};
|
|
15625
|
+
__export(exports_list4, {
|
|
15626
|
+
default: () => list_default4
|
|
13606
15627
|
});
|
|
13607
15628
|
function isWorkspaceUserOrderField(value) {
|
|
13608
15629
|
return typeof value === "string" && workspaceUserListOrderFields.some((field) => field === value);
|
|
@@ -13610,8 +15631,8 @@ function isWorkspaceUserOrderField(value) {
|
|
|
13610
15631
|
function isOrderDirection(value) {
|
|
13611
15632
|
return typeof value === "string" && orderDirections.some((direction) => direction === value);
|
|
13612
15633
|
}
|
|
13613
|
-
var orderDirections, workspaceUserOrderArgs,
|
|
13614
|
-
var
|
|
15634
|
+
var orderDirections, workspaceUserOrderArgs, list_default4;
|
|
15635
|
+
var init_list4 = __esm(() => {
|
|
13615
15636
|
init_dist4();
|
|
13616
15637
|
init_dist();
|
|
13617
15638
|
init_auth();
|
|
@@ -13632,7 +15653,7 @@ var init_list3 = __esm(() => {
|
|
|
13632
15653
|
default: "desc"
|
|
13633
15654
|
}
|
|
13634
15655
|
};
|
|
13635
|
-
|
|
15656
|
+
list_default4 = defineCommand2({
|
|
13636
15657
|
meta: {
|
|
13637
15658
|
name: "list",
|
|
13638
15659
|
description: [
|
|
@@ -13740,7 +15761,7 @@ var init_ws_users = __esm(() => {
|
|
|
13740
15761
|
`)
|
|
13741
15762
|
},
|
|
13742
15763
|
subCommands: {
|
|
13743
|
-
list: () => Promise.resolve().then(() => (
|
|
15764
|
+
list: () => Promise.resolve().then(() => (init_list4(), exports_list4)).then((m) => m.default)
|
|
13744
15765
|
}
|
|
13745
15766
|
});
|
|
13746
15767
|
});
|
|
@@ -14898,9 +16919,9 @@ var init_upgrade = __esm(() => {
|
|
|
14898
16919
|
});
|
|
14899
16920
|
|
|
14900
16921
|
// src/commands/facts/list.ts
|
|
14901
|
-
var
|
|
14902
|
-
__export(
|
|
14903
|
-
default: () =>
|
|
16922
|
+
var exports_list5 = {};
|
|
16923
|
+
__export(exports_list5, {
|
|
16924
|
+
default: () => list_default5
|
|
14904
16925
|
});
|
|
14905
16926
|
function parseCsvArg(value) {
|
|
14906
16927
|
if (!value)
|
|
@@ -14918,7 +16939,7 @@ function normalizeSourceTypes(values) {
|
|
|
14918
16939
|
return;
|
|
14919
16940
|
return Array.from(new Set(values.map((value) => normalizeCustomerSourceType(value)))).filter((sourceType) => sourceType !== null);
|
|
14920
16941
|
}
|
|
14921
|
-
function
|
|
16942
|
+
function isOneOf2(values, value) {
|
|
14922
16943
|
return typeof value === "string" && values.includes(value);
|
|
14923
16944
|
}
|
|
14924
16945
|
function annotateFactFilterability(data) {
|
|
@@ -14939,15 +16960,15 @@ function annotateFactFilterability(data) {
|
|
|
14939
16960
|
return {
|
|
14940
16961
|
...factRecord,
|
|
14941
16962
|
filterability: {
|
|
14942
|
-
factType:
|
|
14943
|
-
factCategory:
|
|
16963
|
+
factType: isOneOf2(customerFactTypes, factRecord.factType) ? "public" : "internal",
|
|
16964
|
+
factCategory: isOneOf2(customerFactCategories, factRecord.factCategory) ? "public" : "internal"
|
|
14944
16965
|
}
|
|
14945
16966
|
};
|
|
14946
16967
|
})
|
|
14947
16968
|
};
|
|
14948
16969
|
}
|
|
14949
|
-
var sourceTypeDescription,
|
|
14950
|
-
var
|
|
16970
|
+
var sourceTypeDescription, list_default5;
|
|
16971
|
+
var init_list5 = __esm(() => {
|
|
14951
16972
|
init_dist4();
|
|
14952
16973
|
init_dist();
|
|
14953
16974
|
init_auth();
|
|
@@ -14957,7 +16978,7 @@ var init_list4 = __esm(() => {
|
|
|
14957
16978
|
init_config();
|
|
14958
16979
|
init_output();
|
|
14959
16980
|
sourceTypeDescription = `${customerSourceTypes.join(", ")} (aliases: ${customerSourceTypeAliases.join(", ")})`;
|
|
14960
|
-
|
|
16981
|
+
list_default5 = defineCommand2({
|
|
14961
16982
|
meta: {
|
|
14962
16983
|
name: "list",
|
|
14963
16984
|
description: [
|
|
@@ -15016,11 +17037,11 @@ var init_list4 = __esm(() => {
|
|
|
15016
17037
|
},
|
|
15017
17038
|
async run({ args }) {
|
|
15018
17039
|
const json = !!args.json;
|
|
15019
|
-
const
|
|
17040
|
+
const statuses2 = parseCsvArg(args.status);
|
|
15020
17041
|
const sourceTypes = parseCsvArg(args["source-types"]);
|
|
15021
17042
|
const factTypes = parseCsvArg(args["fact-types"]);
|
|
15022
17043
|
const factCategories = parseCsvArg(args["fact-categories"]);
|
|
15023
|
-
const invalidStatuses = invalidValues(
|
|
17044
|
+
const invalidStatuses = invalidValues(statuses2, customerFactStatuses);
|
|
15024
17045
|
if (invalidStatuses.length > 0) {
|
|
15025
17046
|
return outputError({
|
|
15026
17047
|
message: `Unknown fact statuses: ${invalidStatuses.join(", ")}. Allowed: ${customerFactStatuses.join(", ")}`,
|
|
@@ -15082,8 +17103,8 @@ var init_list4 = __esm(() => {
|
|
|
15082
17103
|
const params = {
|
|
15083
17104
|
customer: args.customer
|
|
15084
17105
|
};
|
|
15085
|
-
if (
|
|
15086
|
-
params.status =
|
|
17106
|
+
if (statuses2)
|
|
17107
|
+
params.status = statuses2;
|
|
15087
17108
|
if (normalizedSourceTypes)
|
|
15088
17109
|
params.sourceTypes = normalizedSourceTypes;
|
|
15089
17110
|
if (factTypes)
|
|
@@ -15103,9 +17124,9 @@ var init_list4 = __esm(() => {
|
|
|
15103
17124
|
});
|
|
15104
17125
|
|
|
15105
17126
|
// src/commands/facts/get.ts
|
|
15106
|
-
var
|
|
15107
|
-
__export(
|
|
15108
|
-
default: () =>
|
|
17127
|
+
var exports_get4 = {};
|
|
17128
|
+
__export(exports_get4, {
|
|
17129
|
+
default: () => get_default4
|
|
15109
17130
|
});
|
|
15110
17131
|
function parseCsvArg2(value) {
|
|
15111
17132
|
if (!value)
|
|
@@ -15113,15 +17134,15 @@ function parseCsvArg2(value) {
|
|
|
15113
17134
|
const items = splitCsv(value).map((item) => item.trim()).filter(Boolean);
|
|
15114
17135
|
return items.length > 0 ? items : undefined;
|
|
15115
17136
|
}
|
|
15116
|
-
var
|
|
15117
|
-
var
|
|
17137
|
+
var get_default4;
|
|
17138
|
+
var init_get4 = __esm(() => {
|
|
15118
17139
|
init_dist4();
|
|
15119
17140
|
init_dist();
|
|
15120
17141
|
init_auth();
|
|
15121
17142
|
init_output2();
|
|
15122
17143
|
init_api();
|
|
15123
17144
|
init_config();
|
|
15124
|
-
|
|
17145
|
+
get_default4 = defineCommand2({
|
|
15125
17146
|
meta: {
|
|
15126
17147
|
name: "get",
|
|
15127
17148
|
description: [
|
|
@@ -15188,16 +17209,16 @@ var init_facts = __esm(() => {
|
|
|
15188
17209
|
`)
|
|
15189
17210
|
},
|
|
15190
17211
|
subCommands: {
|
|
15191
|
-
list: () => Promise.resolve().then(() => (
|
|
15192
|
-
get: () => Promise.resolve().then(() => (
|
|
17212
|
+
list: () => Promise.resolve().then(() => (init_list5(), exports_list5)).then((m) => m.default),
|
|
17213
|
+
get: () => Promise.resolve().then(() => (init_get4(), exports_get4)).then((m) => m.default)
|
|
15193
17214
|
}
|
|
15194
17215
|
});
|
|
15195
17216
|
});
|
|
15196
17217
|
|
|
15197
17218
|
// src/commands/sources/list.ts
|
|
15198
|
-
var
|
|
15199
|
-
__export(
|
|
15200
|
-
default: () =>
|
|
17219
|
+
var exports_list6 = {};
|
|
17220
|
+
__export(exports_list6, {
|
|
17221
|
+
default: () => list_default6
|
|
15201
17222
|
});
|
|
15202
17223
|
function parseLimit(value, json) {
|
|
15203
17224
|
if (!value)
|
|
@@ -15232,8 +17253,8 @@ function parseDateArg(name, value, json) {
|
|
|
15232
17253
|
}
|
|
15233
17254
|
return date;
|
|
15234
17255
|
}
|
|
15235
|
-
var sourceTypeDescription2, ISO_8601_UTC_DATE_TIME_REGEX,
|
|
15236
|
-
var
|
|
17256
|
+
var sourceTypeDescription2, ISO_8601_UTC_DATE_TIME_REGEX, list_default6;
|
|
17257
|
+
var init_list6 = __esm(() => {
|
|
15237
17258
|
init_dist4();
|
|
15238
17259
|
init_dist();
|
|
15239
17260
|
init_auth();
|
|
@@ -15242,7 +17263,7 @@ var init_list5 = __esm(() => {
|
|
|
15242
17263
|
init_output();
|
|
15243
17264
|
sourceTypeDescription2 = `${customerSourceTypes.join(", ")} (aliases: ${customerSourceTypeAliases.join(", ")})`;
|
|
15244
17265
|
ISO_8601_UTC_DATE_TIME_REGEX = /^(?:(?:\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))$/;
|
|
15245
|
-
|
|
17266
|
+
list_default6 = defineCommand2({
|
|
15246
17267
|
meta: {
|
|
15247
17268
|
name: "list",
|
|
15248
17269
|
description: [
|
|
@@ -15366,12 +17387,12 @@ var init_list5 = __esm(() => {
|
|
|
15366
17387
|
});
|
|
15367
17388
|
|
|
15368
17389
|
// src/commands/sources/get.ts
|
|
15369
|
-
var
|
|
15370
|
-
__export(
|
|
15371
|
-
default: () =>
|
|
17390
|
+
var exports_get5 = {};
|
|
17391
|
+
__export(exports_get5, {
|
|
17392
|
+
default: () => get_default5
|
|
15372
17393
|
});
|
|
15373
|
-
var sourceTypeDescription3,
|
|
15374
|
-
var
|
|
17394
|
+
var sourceTypeDescription3, get_default5;
|
|
17395
|
+
var init_get5 = __esm(() => {
|
|
15375
17396
|
init_dist4();
|
|
15376
17397
|
init_dist();
|
|
15377
17398
|
init_auth();
|
|
@@ -15379,7 +17400,7 @@ var init_get4 = __esm(() => {
|
|
|
15379
17400
|
init_api();
|
|
15380
17401
|
init_output();
|
|
15381
17402
|
sourceTypeDescription3 = `${customerSourceTypes.join(", ")} (aliases: ${customerSourceTypeAliases.join(", ")})`;
|
|
15382
|
-
|
|
17403
|
+
get_default5 = defineCommand2({
|
|
15383
17404
|
meta: {
|
|
15384
17405
|
name: "get",
|
|
15385
17406
|
description: [
|
|
@@ -15472,8 +17493,8 @@ var init_sources = __esm(() => {
|
|
|
15472
17493
|
`)
|
|
15473
17494
|
},
|
|
15474
17495
|
subCommands: {
|
|
15475
|
-
list: () => Promise.resolve().then(() => (
|
|
15476
|
-
get: () => Promise.resolve().then(() => (
|
|
17496
|
+
list: () => Promise.resolve().then(() => (init_list6(), exports_list6)).then((m) => m.default),
|
|
17497
|
+
get: () => Promise.resolve().then(() => (init_get5(), exports_get5)).then((m) => m.default)
|
|
15477
17498
|
}
|
|
15478
17499
|
});
|
|
15479
17500
|
});
|
|
@@ -15705,17 +17726,17 @@ var init_schema = __esm(() => {
|
|
|
15705
17726
|
});
|
|
15706
17727
|
|
|
15707
17728
|
// src/commands/destinations/list.ts
|
|
15708
|
-
var
|
|
15709
|
-
__export(
|
|
15710
|
-
default: () =>
|
|
17729
|
+
var exports_list7 = {};
|
|
17730
|
+
__export(exports_list7, {
|
|
17731
|
+
default: () => list_default7
|
|
15711
17732
|
});
|
|
15712
|
-
var
|
|
15713
|
-
var
|
|
17733
|
+
var list_default7;
|
|
17734
|
+
var init_list7 = __esm(() => {
|
|
15714
17735
|
init_dist();
|
|
15715
17736
|
init_auth();
|
|
15716
17737
|
init_output2();
|
|
15717
17738
|
init_api();
|
|
15718
|
-
|
|
17739
|
+
list_default7 = defineCommand2({
|
|
15719
17740
|
meta: {
|
|
15720
17741
|
name: "list",
|
|
15721
17742
|
description: [
|
|
@@ -15756,17 +17777,17 @@ var init_list6 = __esm(() => {
|
|
|
15756
17777
|
});
|
|
15757
17778
|
|
|
15758
17779
|
// src/commands/destinations/get.ts
|
|
15759
|
-
var
|
|
15760
|
-
__export(
|
|
15761
|
-
default: () =>
|
|
17780
|
+
var exports_get6 = {};
|
|
17781
|
+
__export(exports_get6, {
|
|
17782
|
+
default: () => get_default6
|
|
15762
17783
|
});
|
|
15763
|
-
var
|
|
15764
|
-
var
|
|
17784
|
+
var get_default6;
|
|
17785
|
+
var init_get6 = __esm(() => {
|
|
15765
17786
|
init_dist();
|
|
15766
17787
|
init_auth();
|
|
15767
17788
|
init_output2();
|
|
15768
17789
|
init_api();
|
|
15769
|
-
|
|
17790
|
+
get_default6 = defineCommand2({
|
|
15770
17791
|
meta: {
|
|
15771
17792
|
name: "get",
|
|
15772
17793
|
description: [
|
|
@@ -16121,8 +18142,8 @@ var init_destinations = __esm(() => {
|
|
|
16121
18142
|
`)
|
|
16122
18143
|
},
|
|
16123
18144
|
subCommands: {
|
|
16124
|
-
list: () => Promise.resolve().then(() => (
|
|
16125
|
-
get: () => Promise.resolve().then(() => (
|
|
18145
|
+
list: () => Promise.resolve().then(() => (init_list7(), exports_list7)).then((m) => m.default),
|
|
18146
|
+
get: () => Promise.resolve().then(() => (init_get6(), exports_get6)).then((m) => m.default),
|
|
16126
18147
|
create: () => Promise.resolve().then(() => (init_create(), exports_create)).then((m) => m.default),
|
|
16127
18148
|
update: () => Promise.resolve().then(() => (init_update3(), exports_update2)).then((m) => m.default),
|
|
16128
18149
|
enable: () => Promise.resolve().then(() => (init_enable(), exports_enable)).then((m) => m.default),
|
|
@@ -16132,69 +18153,88 @@ var init_destinations = __esm(() => {
|
|
|
16132
18153
|
});
|
|
16133
18154
|
});
|
|
16134
18155
|
|
|
16135
|
-
// src/commands/
|
|
16136
|
-
var
|
|
16137
|
-
__export(
|
|
16138
|
-
default: () =>
|
|
18156
|
+
// src/commands/features/list.ts
|
|
18157
|
+
var exports_list8 = {};
|
|
18158
|
+
__export(exports_list8, {
|
|
18159
|
+
default: () => list_default8
|
|
16139
18160
|
});
|
|
16140
|
-
var
|
|
16141
|
-
var
|
|
18161
|
+
var list_default8;
|
|
18162
|
+
var init_list8 = __esm(() => {
|
|
18163
|
+
init_dist4();
|
|
16142
18164
|
init_dist();
|
|
16143
18165
|
init_auth();
|
|
16144
18166
|
init_output2();
|
|
16145
18167
|
init_api();
|
|
16146
|
-
|
|
18168
|
+
init_platform_input();
|
|
18169
|
+
init_input();
|
|
18170
|
+
list_default8 = defineCommand2({
|
|
16147
18171
|
meta: {
|
|
16148
|
-
name: "
|
|
18172
|
+
name: "list",
|
|
16149
18173
|
description: [
|
|
16150
|
-
"List
|
|
18174
|
+
"List configured Features, their exact historical usage, and event candidates.",
|
|
18175
|
+
"When exactly one eligible source exists, Core selects it automatically.",
|
|
18176
|
+
"Candidate discovery returns ready or partial items, or an unavailable reason.",
|
|
18177
|
+
"Unavailable evidence remains distinct from zero usage.",
|
|
16151
18178
|
"",
|
|
16152
|
-
"
|
|
18179
|
+
"Examples:",
|
|
18180
|
+
" outlit features list --json",
|
|
18181
|
+
" outlit features list --source metric_source_v1_0123456789abcdef0123456789abcdef --weeks 4 --candidate-limit 20 --json",
|
|
16153
18182
|
"",
|
|
16154
18183
|
AGENT_JSON_HINT
|
|
16155
18184
|
].join(`
|
|
16156
18185
|
`)
|
|
16157
18186
|
},
|
|
16158
|
-
args: {
|
|
18187
|
+
args: {
|
|
18188
|
+
...authArgs,
|
|
18189
|
+
...outputArgs,
|
|
18190
|
+
source: { type: "string", description: "Optional product-event source key" },
|
|
18191
|
+
weeks: { type: "string", description: "Historical usage window in weeks (1-53, default: 12)" },
|
|
18192
|
+
"candidate-limit": {
|
|
18193
|
+
type: "string",
|
|
18194
|
+
description: "Maximum event candidates (1-100, default: 100)"
|
|
18195
|
+
}
|
|
18196
|
+
},
|
|
16159
18197
|
async run({ args }) {
|
|
16160
18198
|
const json = !!args.json;
|
|
16161
18199
|
const client = await getClientOrExit(args["api-key"], json);
|
|
16162
|
-
|
|
16163
|
-
|
|
18200
|
+
const input = {
|
|
18201
|
+
weeks: parseBoundedInteger2(args.weeks, 12, "--weeks", 1, 53, json),
|
|
18202
|
+
candidateLimit: parseBoundedInteger2(args["candidate-limit"], 100, "--candidate-limit", 1, 100, json)
|
|
18203
|
+
};
|
|
18204
|
+
const sourceKey = optionalTrimmedString(args.source);
|
|
18205
|
+
if (sourceKey)
|
|
18206
|
+
input.sourceKey = sourceKey;
|
|
18207
|
+
return runTool(client, publicToolContracts.outlit_list_features.toolName, input, json, {
|
|
18208
|
+
spinnerMessage: "Loading Features..."
|
|
16164
18209
|
});
|
|
16165
18210
|
}
|
|
16166
18211
|
});
|
|
16167
18212
|
});
|
|
16168
18213
|
|
|
16169
|
-
// src/commands/
|
|
16170
|
-
var
|
|
16171
|
-
__export(
|
|
16172
|
-
default: () =>
|
|
18214
|
+
// src/commands/features/create.ts
|
|
18215
|
+
var exports_create2 = {};
|
|
18216
|
+
__export(exports_create2, {
|
|
18217
|
+
default: () => create_default2
|
|
16173
18218
|
});
|
|
16174
|
-
|
|
16175
|
-
|
|
16176
|
-
|
|
16177
|
-
return outputError({ message: `${flag} must be an integer from ${min} to ${max}`, code: "invalid_input" }, json);
|
|
16178
|
-
}
|
|
16179
|
-
return parsed;
|
|
16180
|
-
}
|
|
16181
|
-
var events_default;
|
|
16182
|
-
var init_events = __esm(() => {
|
|
18219
|
+
var create_default2;
|
|
18220
|
+
var init_create2 = __esm(() => {
|
|
18221
|
+
init_dist4();
|
|
16183
18222
|
init_dist();
|
|
16184
18223
|
init_auth();
|
|
16185
18224
|
init_output2();
|
|
16186
18225
|
init_api();
|
|
16187
|
-
init_output();
|
|
16188
18226
|
init_platform_input();
|
|
16189
|
-
|
|
18227
|
+
init_input();
|
|
18228
|
+
create_default2 = defineCommand2({
|
|
16190
18229
|
meta: {
|
|
16191
|
-
name: "
|
|
18230
|
+
name: "create",
|
|
16192
18231
|
description: [
|
|
16193
|
-
"
|
|
18232
|
+
"Create or idempotently return one Feature observed by one exact event rule.",
|
|
18233
|
+
"Outlit creates the supporting weekly event-count and active-days metrics internally.",
|
|
16194
18234
|
"",
|
|
16195
18235
|
"Examples:",
|
|
16196
|
-
" outlit
|
|
16197
|
-
|
|
18236
|
+
" outlit features create --source metric_source_v1_0123456789abcdef0123456789abcdef --event report_exported --key reports_exported --name 'Reports exported' --json",
|
|
18237
|
+
` outlit features create --source metric_source_v1_0123456789abcdef0123456789abcdef --event report_exported --key production_reports_exported --name 'Production reports exported' --property-filters '[{"property":"environment","operator":"equals","value":{"type":"string","value":"production"}}]' --json`,
|
|
16198
18238
|
"",
|
|
16199
18239
|
AGENT_JSON_HINT
|
|
16200
18240
|
].join(`
|
|
@@ -16203,60 +18243,52 @@ var init_events = __esm(() => {
|
|
|
16203
18243
|
args: {
|
|
16204
18244
|
...authArgs,
|
|
16205
18245
|
...outputArgs,
|
|
16206
|
-
source: { type: "string", description: "
|
|
16207
|
-
|
|
16208
|
-
|
|
18246
|
+
source: { type: "string", description: "Product-event source key" },
|
|
18247
|
+
event: { type: "string", description: "Exact tracked event name" },
|
|
18248
|
+
key: { type: "string", description: "Stable lower_snake_case feature key" },
|
|
18249
|
+
name: { type: "string", description: "Human-readable Feature name" },
|
|
18250
|
+
"property-filters": {
|
|
18251
|
+
type: "string",
|
|
18252
|
+
description: "Optional JSON array of exact or exists property filters"
|
|
18253
|
+
}
|
|
16209
18254
|
},
|
|
16210
18255
|
async run({ args }) {
|
|
16211
18256
|
const json = !!args.json;
|
|
16212
18257
|
const client = await getClientOrExit(args["api-key"], json);
|
|
16213
|
-
return runTool(client,
|
|
18258
|
+
return runTool(client, publicToolContracts.outlit_create_feature.toolName, {
|
|
16214
18259
|
sourceKey: requiredTrimmedString(args.source, "--source", json),
|
|
16215
|
-
|
|
16216
|
-
|
|
16217
|
-
|
|
18260
|
+
eventName: requiredString(args.event, "--event", json),
|
|
18261
|
+
featureKey: requiredTrimmedString(args.key, "--key", json),
|
|
18262
|
+
name: requiredTrimmedString(args.name, "--name", json),
|
|
18263
|
+
propertyFilters: parsePropertyFilters(args["property-filters"], json)
|
|
18264
|
+
}, json, { spinnerMessage: "Creating Feature..." });
|
|
16218
18265
|
}
|
|
16219
18266
|
});
|
|
16220
18267
|
});
|
|
16221
18268
|
|
|
16222
|
-
// src/commands/
|
|
16223
|
-
var
|
|
16224
|
-
__export(
|
|
16225
|
-
default: () =>
|
|
18269
|
+
// src/commands/features/archive.ts
|
|
18270
|
+
var exports_archive2 = {};
|
|
18271
|
+
__export(exports_archive2, {
|
|
18272
|
+
default: () => archive_default2
|
|
16226
18273
|
});
|
|
16227
|
-
|
|
16228
|
-
|
|
16229
|
-
|
|
16230
|
-
try {
|
|
16231
|
-
const parsed = JSON.parse(value);
|
|
16232
|
-
if (!Array.isArray(parsed)) {
|
|
16233
|
-
return outputError({ message: "--property-filters must be a JSON array", code: "invalid_input" }, json);
|
|
16234
|
-
}
|
|
16235
|
-
return parsed;
|
|
16236
|
-
} catch (error) {
|
|
16237
|
-
return outputError({
|
|
16238
|
-
message: `Invalid --property-filters JSON: ${errorMessage(error, "parse failed")}`,
|
|
16239
|
-
code: "invalid_input"
|
|
16240
|
-
}, json);
|
|
16241
|
-
}
|
|
16242
|
-
}
|
|
16243
|
-
var create_default2;
|
|
16244
|
-
var init_create2 = __esm(() => {
|
|
18274
|
+
var archive_default2;
|
|
18275
|
+
var init_archive2 = __esm(() => {
|
|
18276
|
+
init_dist4();
|
|
16245
18277
|
init_dist();
|
|
16246
18278
|
init_auth();
|
|
16247
18279
|
init_output2();
|
|
16248
18280
|
init_api();
|
|
16249
|
-
init_output();
|
|
16250
18281
|
init_platform_input();
|
|
16251
|
-
|
|
18282
|
+
archive_default2 = defineCommand2({
|
|
16252
18283
|
meta: {
|
|
16253
|
-
name: "
|
|
18284
|
+
name: "archive",
|
|
16254
18285
|
description: [
|
|
16255
|
-
"
|
|
18286
|
+
"Archive a Feature using its opaque id and current revision.",
|
|
18287
|
+
"Core rejects stale revisions and prevents archiving the final active feature.",
|
|
18288
|
+
"Self-service restore is not available in the MVP; retained historical usage is not deleted.",
|
|
16256
18289
|
"",
|
|
16257
|
-
"
|
|
16258
|
-
" outlit
|
|
16259
|
-
` outlit metrics create --source metric_source_v1_0123456789abcdef0123456789abcdef --event report_exported --key production_reports_exported --label 'Production reports exported' --property-filters '[{"property":"environment","operator":"equals","value":{"type":"string","value":"production"}}]' --json`,
|
|
18290
|
+
"Example:",
|
|
18291
|
+
" outlit features archive value_feature_v1_0123456789abcdef0123456789abcdef --revision value_feature_revision_v1_fedcba9876543210fedcba9876543210 --json",
|
|
16260
18292
|
"",
|
|
16261
18293
|
AGENT_JSON_HINT
|
|
16262
18294
|
].join(`
|
|
@@ -16265,81 +18297,66 @@ var init_create2 = __esm(() => {
|
|
|
16265
18297
|
args: {
|
|
16266
18298
|
...authArgs,
|
|
16267
18299
|
...outputArgs,
|
|
16268
|
-
|
|
16269
|
-
|
|
16270
|
-
key: { type: "string", description: "Stable lower_snake_case metric key" },
|
|
16271
|
-
label: { type: "string", description: "Human-readable metric label" },
|
|
16272
|
-
"property-filters": {
|
|
16273
|
-
type: "string",
|
|
16274
|
-
description: "Optional JSON array of event property filters"
|
|
16275
|
-
}
|
|
18300
|
+
id: { type: "positional", description: "Opaque Feature id", required: true },
|
|
18301
|
+
revision: { type: "string", description: "Current opaque Feature revision" }
|
|
16276
18302
|
},
|
|
16277
18303
|
async run({ args }) {
|
|
16278
18304
|
const json = !!args.json;
|
|
16279
18305
|
const client = await getClientOrExit(args["api-key"], json);
|
|
16280
|
-
|
|
16281
|
-
|
|
16282
|
-
|
|
16283
|
-
|
|
16284
|
-
label: requiredTrimmedString(args.label, "--label", json),
|
|
16285
|
-
propertyFilters: parsePropertyFilters(args["property-filters"], json)
|
|
16286
|
-
};
|
|
16287
|
-
return runTool(client, "outlit_create_behavior_metric", input, json, {
|
|
16288
|
-
spinnerMessage: "Creating Behavior Metric..."
|
|
16289
|
-
});
|
|
18306
|
+
return runTool(client, publicToolContracts.outlit_archive_feature.toolName, {
|
|
18307
|
+
id: requiredTrimmedString(args.id, "<id>", json),
|
|
18308
|
+
revision: requiredTrimmedString(args.revision, "--revision", json)
|
|
18309
|
+
}, json, { spinnerMessage: "Archiving Feature..." });
|
|
16290
18310
|
}
|
|
16291
18311
|
});
|
|
16292
18312
|
});
|
|
16293
18313
|
|
|
16294
|
-
// src/commands/
|
|
16295
|
-
var
|
|
16296
|
-
__export(
|
|
16297
|
-
default: () =>
|
|
18314
|
+
// src/commands/features/index.ts
|
|
18315
|
+
var exports_features2 = {};
|
|
18316
|
+
__export(exports_features2, {
|
|
18317
|
+
default: () => features_default2
|
|
16298
18318
|
});
|
|
16299
|
-
var
|
|
16300
|
-
var
|
|
18319
|
+
var features_default2;
|
|
18320
|
+
var init_features2 = __esm(() => {
|
|
16301
18321
|
init_dist();
|
|
16302
18322
|
init_output2();
|
|
16303
|
-
|
|
18323
|
+
features_default2 = defineCommand2({
|
|
16304
18324
|
meta: {
|
|
16305
|
-
name: "
|
|
18325
|
+
name: "features",
|
|
16306
18326
|
description: [
|
|
16307
|
-
"Configure
|
|
18327
|
+
"Configure workspace Features and inspect their exact historical usage.",
|
|
16308
18328
|
"",
|
|
16309
18329
|
"Commands:",
|
|
16310
|
-
" sources
|
|
16311
|
-
"
|
|
16312
|
-
"
|
|
18330
|
+
" list Read features, evidence, sources, and event candidates",
|
|
18331
|
+
" create Create one event-based Feature",
|
|
18332
|
+
" archive <id> Archive a non-final Feature",
|
|
16313
18333
|
"",
|
|
16314
|
-
"
|
|
16315
|
-
" outlit metrics sources --json",
|
|
16316
|
-
" outlit metrics events --source metric_source_v1_0123456789abcdef0123456789abcdef --json",
|
|
16317
|
-
" outlit metrics create --source metric_source_v1_0123456789abcdef0123456789abcdef --event report_exported --key reports_exported --label 'Reports exported' --json",
|
|
18334
|
+
"Customer-level usage is available with `outlit customers features <customer>`.",
|
|
16318
18335
|
"",
|
|
16319
18336
|
AGENT_JSON_HINT
|
|
16320
18337
|
].join(`
|
|
16321
18338
|
`)
|
|
16322
18339
|
},
|
|
16323
18340
|
subCommands: {
|
|
16324
|
-
|
|
16325
|
-
|
|
16326
|
-
|
|
18341
|
+
list: () => Promise.resolve().then(() => (init_list8(), exports_list8)).then((module) => module.default),
|
|
18342
|
+
create: () => Promise.resolve().then(() => (init_create2(), exports_create2)).then((module) => module.default),
|
|
18343
|
+
archive: () => Promise.resolve().then(() => (init_archive2(), exports_archive2)).then((module) => module.default)
|
|
16327
18344
|
}
|
|
16328
18345
|
});
|
|
16329
18346
|
});
|
|
16330
18347
|
|
|
16331
18348
|
// src/commands/settings/get.ts
|
|
16332
|
-
var
|
|
16333
|
-
__export(
|
|
16334
|
-
default: () =>
|
|
18349
|
+
var exports_get7 = {};
|
|
18350
|
+
__export(exports_get7, {
|
|
18351
|
+
default: () => get_default7
|
|
16335
18352
|
});
|
|
16336
|
-
var
|
|
16337
|
-
var
|
|
18353
|
+
var get_default7;
|
|
18354
|
+
var init_get7 = __esm(() => {
|
|
16338
18355
|
init_dist();
|
|
16339
18356
|
init_auth();
|
|
16340
18357
|
init_output2();
|
|
16341
18358
|
init_api();
|
|
16342
|
-
|
|
18359
|
+
get_default7 = defineCommand2({
|
|
16343
18360
|
meta: {
|
|
16344
18361
|
name: "get",
|
|
16345
18362
|
description: [
|
|
@@ -16439,7 +18456,7 @@ var init_settings = __esm(() => {
|
|
|
16439
18456
|
`)
|
|
16440
18457
|
},
|
|
16441
18458
|
subCommands: {
|
|
16442
|
-
get: () => Promise.resolve().then(() => (
|
|
18459
|
+
get: () => Promise.resolve().then(() => (init_get7(), exports_get7)).then((m) => m.default),
|
|
16443
18460
|
update: () => Promise.resolve().then(() => (init_update4(), exports_update3)).then((m) => m.default)
|
|
16444
18461
|
}
|
|
16445
18462
|
});
|
|
@@ -17402,6 +19419,20 @@ var init_completions = __esm(() => {
|
|
|
17402
19419
|
{ name: "--timeframe", desc: "Metrics timeframe" }
|
|
17403
19420
|
]
|
|
17404
19421
|
},
|
|
19422
|
+
{
|
|
19423
|
+
name: "relationship",
|
|
19424
|
+
desc: "Get a bounded customer relationship",
|
|
19425
|
+
flags: [...COMMON]
|
|
19426
|
+
},
|
|
19427
|
+
{
|
|
19428
|
+
name: "features",
|
|
19429
|
+
desc: "Get exact Feature usage for a customer",
|
|
19430
|
+
flags: [
|
|
19431
|
+
...COMMON,
|
|
19432
|
+
{ name: "--weeks", desc: "Historical usage window (1-53 weeks)" },
|
|
19433
|
+
{ name: "--weekly", desc: "Include ordered weekly usage" }
|
|
19434
|
+
]
|
|
19435
|
+
},
|
|
17405
19436
|
{
|
|
17406
19437
|
name: "timeline",
|
|
17407
19438
|
desc: "Show activity timeline",
|
|
@@ -17441,6 +19472,22 @@ var init_completions = __esm(() => {
|
|
|
17441
19472
|
}
|
|
17442
19473
|
]
|
|
17443
19474
|
},
|
|
19475
|
+
{
|
|
19476
|
+
name: "attention",
|
|
19477
|
+
desc: "Inspect customer Attention items",
|
|
19478
|
+
subs: [
|
|
19479
|
+
{
|
|
19480
|
+
name: "list",
|
|
19481
|
+
desc: "List open or resolved Attention items",
|
|
19482
|
+
flags: [
|
|
19483
|
+
...PAGINATED,
|
|
19484
|
+
{ name: "--status", desc: "Lifecycle: open or resolved" },
|
|
19485
|
+
{ name: "--customer-id", desc: "Filter by exact customer UUID" }
|
|
19486
|
+
]
|
|
19487
|
+
},
|
|
19488
|
+
{ name: "get", desc: "Get one Attention item by exact ID", flags: [...COMMON] }
|
|
19489
|
+
]
|
|
19490
|
+
},
|
|
17444
19491
|
{
|
|
17445
19492
|
name: "activation",
|
|
17446
19493
|
desc: "Configure contact and company activation",
|
|
@@ -17656,35 +19703,35 @@ var init_completions = __esm(() => {
|
|
|
17656
19703
|
]
|
|
17657
19704
|
},
|
|
17658
19705
|
{
|
|
17659
|
-
name: "
|
|
17660
|
-
desc: "Configure
|
|
19706
|
+
name: "features",
|
|
19707
|
+
desc: "Configure Features",
|
|
17661
19708
|
subs: [
|
|
17662
19709
|
{
|
|
17663
|
-
name: "
|
|
17664
|
-
desc: "
|
|
17665
|
-
flags: [...COMMON]
|
|
17666
|
-
},
|
|
17667
|
-
{
|
|
17668
|
-
name: "events",
|
|
17669
|
-
desc: "List attributed event candidates for a Behavior Metric source",
|
|
19710
|
+
name: "list",
|
|
19711
|
+
desc: "Read workspace Features and usage evidence",
|
|
17670
19712
|
flags: [
|
|
17671
19713
|
...COMMON,
|
|
17672
|
-
{ name: "--source", desc: "
|
|
17673
|
-
{ name: "--weeks", desc: "
|
|
17674
|
-
{ name: "--limit", desc: "Maximum event candidates (1-100
|
|
19714
|
+
{ name: "--source", desc: "Optional product-event source key" },
|
|
19715
|
+
{ name: "--weeks", desc: "Historical usage window (1-53 weeks)" },
|
|
19716
|
+
{ name: "--candidate-limit", desc: "Maximum event candidates (1-100)" }
|
|
17675
19717
|
]
|
|
17676
19718
|
},
|
|
17677
19719
|
{
|
|
17678
19720
|
name: "create",
|
|
17679
|
-
desc: "Create
|
|
19721
|
+
desc: "Create one event-based Feature",
|
|
17680
19722
|
flags: [
|
|
17681
19723
|
...COMMON,
|
|
17682
|
-
{ name: "--source", desc: "
|
|
19724
|
+
{ name: "--source", desc: "Product-event source key" },
|
|
17683
19725
|
{ name: "--event", desc: "Exact tracked event name" },
|
|
17684
|
-
{ name: "--key", desc: "Stable lower_snake_case
|
|
17685
|
-
{ name: "--
|
|
17686
|
-
{ name: "--property-filters", desc: "Optional JSON
|
|
19726
|
+
{ name: "--key", desc: "Stable lower_snake_case feature key" },
|
|
19727
|
+
{ name: "--name", desc: "Human-readable Feature name" },
|
|
19728
|
+
{ name: "--property-filters", desc: "Optional JSON exact or exists filters" }
|
|
17687
19729
|
]
|
|
19730
|
+
},
|
|
19731
|
+
{
|
|
19732
|
+
name: "archive",
|
|
19733
|
+
desc: "Archive a non-final Feature",
|
|
19734
|
+
flags: [...COMMON, { name: "--revision", desc: "Current opaque feature revision" }]
|
|
17688
19735
|
}
|
|
17689
19736
|
]
|
|
17690
19737
|
},
|
|
@@ -18486,34 +20533,39 @@ async function startCli() {
|
|
|
18486
20533
|
meta: {
|
|
18487
20534
|
name: "outlit",
|
|
18488
20535
|
version: CLI_VERSION,
|
|
18489
|
-
description:
|
|
18490
|
-
|
|
18491
|
-
|
|
18492
|
-
|
|
18493
|
-
outlit
|
|
18494
|
-
outlit customers
|
|
18495
|
-
outlit customers
|
|
18496
|
-
outlit
|
|
18497
|
-
outlit
|
|
18498
|
-
outlit
|
|
18499
|
-
outlit
|
|
18500
|
-
outlit
|
|
18501
|
-
outlit
|
|
18502
|
-
outlit
|
|
18503
|
-
outlit
|
|
18504
|
-
outlit
|
|
18505
|
-
outlit
|
|
18506
|
-
outlit
|
|
18507
|
-
outlit
|
|
18508
|
-
outlit
|
|
18509
|
-
outlit
|
|
18510
|
-
outlit
|
|
18511
|
-
|
|
18512
|
-
|
|
20536
|
+
description: [
|
|
20537
|
+
"Outlit CLI -- customer intelligence from the terminal.",
|
|
20538
|
+
"",
|
|
20539
|
+
"Usage examples:",
|
|
20540
|
+
" outlit onboard --agent codex --json",
|
|
20541
|
+
" outlit customers list --billing-status PAYING --no-activity-in 30d",
|
|
20542
|
+
" outlit customers get acme.com --include users,revenue",
|
|
20543
|
+
" outlit customers relationship acme.com",
|
|
20544
|
+
" outlit customers timeline acme.com --timeframe 90d",
|
|
20545
|
+
" outlit users list --journey-stage ENGAGED",
|
|
20546
|
+
" outlit ws-users list --role CSM --has-owned-customers",
|
|
20547
|
+
" outlit facts list acme.com --fact-types CHURN_RISK,EXPANSION",
|
|
20548
|
+
" outlit facts get --fact-id fact_123 --include evidence",
|
|
20549
|
+
" outlit sources get --source-type OPPORTUNITY --source-id opp_123",
|
|
20550
|
+
" outlit search 'pricing objections last quarter' --source-types CALL,OPPORTUNITY",
|
|
20551
|
+
" outlit sql 'SELECT * FROM activity LIMIT 10'",
|
|
20552
|
+
" outlit schema activity",
|
|
20553
|
+
" outlit activation get --json",
|
|
20554
|
+
" outlit activation preview --event integration_connected --json",
|
|
20555
|
+
" outlit destinations disable 10000000-0000-4000-8000-000000000003 --json",
|
|
20556
|
+
" outlit features list --json",
|
|
20557
|
+
" outlit features create --source metric_source_v1_0123456789abcdef0123456789abcdef --event report_exported --key reports_exported --name 'Reports exported' --json",
|
|
20558
|
+
" outlit customers features acme.com --weekly --json",
|
|
20559
|
+
" outlit doctor --json",
|
|
20560
|
+
"",
|
|
20561
|
+
"For AI agents: commands auto-output JSON when stdout is piped. No --json flag needed."
|
|
20562
|
+
].join(`
|
|
20563
|
+
`)
|
|
18513
20564
|
},
|
|
18514
20565
|
subCommands: {
|
|
18515
20566
|
auth: () => Promise.resolve().then(() => (init_auth2(), exports_auth)).then((m) => m.default),
|
|
18516
20567
|
activation: () => Promise.resolve().then(() => (init_activation2(), exports_activation)).then((m) => m.default),
|
|
20568
|
+
attention: () => Promise.resolve().then(() => (init_attention(), exports_attention)).then((m) => m.default),
|
|
18517
20569
|
customers: () => Promise.resolve().then(() => (init_customers(), exports_customers)).then((m) => m.default),
|
|
18518
20570
|
users: () => Promise.resolve().then(() => (init_users(), exports_users)).then((m) => m.default),
|
|
18519
20571
|
"ws-users": () => Promise.resolve().then(() => (init_ws_users(), exports_ws_users)).then((m) => m.default),
|
|
@@ -18526,7 +20578,7 @@ For AI agents: commands auto-output JSON when stdout is piped. No --json flag ne
|
|
|
18526
20578
|
sql: () => Promise.resolve().then(() => (init_sql(), exports_sql)).then((m) => m.default),
|
|
18527
20579
|
schema: () => Promise.resolve().then(() => (init_schema(), exports_schema)).then((m) => m.default),
|
|
18528
20580
|
destinations: () => Promise.resolve().then(() => (init_destinations(), exports_destinations)).then((m) => m.default),
|
|
18529
|
-
|
|
20581
|
+
features: () => Promise.resolve().then(() => (init_features2(), exports_features2)).then((module) => module.default),
|
|
18530
20582
|
settings: () => Promise.resolve().then(() => (init_settings(), exports_settings)).then((m) => m.default),
|
|
18531
20583
|
integrations: () => Promise.resolve().then(() => (init_integrations(), exports_integrations)).then((m) => m.default),
|
|
18532
20584
|
completions: () => Promise.resolve().then(() => (init_completions(), exports_completions)).then((m) => m.default),
|