@amigo-ai/platform-sdk 0.27.0 → 0.29.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.
@@ -547,40 +547,40 @@ export interface paths {
547
547
  patch?: never;
548
548
  trace?: never;
549
549
  };
550
- "/v1/workspaces": {
550
+ "/v1/me/workspaces": {
551
551
  parameters: {
552
552
  query?: never;
553
553
  header?: never;
554
554
  path?: never;
555
555
  cookie?: never;
556
556
  };
557
+ get?: never;
558
+ put?: never;
557
559
  /**
558
- * List workspaces
559
- * @description List workspaces accessible to this API key. Requires `Workspace.view` permission.
560
+ * Create a workspace under the authenticated identity
561
+ * @description Create a new workspace and attach the authenticated caller as the owner.
560
562
  */
561
- get: operations["list-workspaces"];
562
- put?: never;
563
- post?: never;
563
+ post: operations["create-my-workspace"];
564
564
  delete?: never;
565
565
  options?: never;
566
566
  head?: never;
567
567
  patch?: never;
568
568
  trace?: never;
569
569
  };
570
- "/v1/workspaces/self-service": {
570
+ "/v1/workspaces": {
571
571
  parameters: {
572
572
  query?: never;
573
573
  header?: never;
574
574
  path?: never;
575
575
  cookie?: never;
576
576
  };
577
- get?: never;
578
- put?: never;
579
577
  /**
580
- * Create a workspace for the authenticated user
581
- * @description Create a new workspace and attach the authenticated caller as the owner.
578
+ * List workspaces
579
+ * @description List workspaces accessible to this API key. Requires `Workspace.view` permission.
582
580
  */
583
- post: operations["create-self-service-workspace"];
581
+ get: operations["list-workspaces"];
582
+ put?: never;
583
+ post?: never;
584
584
  delete?: never;
585
585
  options?: never;
586
586
  head?: never;
@@ -782,7 +782,7 @@ export interface paths {
782
782
  put?: never;
783
783
  /**
784
784
  * Create an agent version
785
- * @description Create a new version of an agent. Version number is auto-incremented. Requires `Agent.update` permission.
785
+ * @description Create a new version of an agent. Version number is auto-incremented. Requires `Agent.create` permission for the first version and `Agent.update` permission afterward.
786
786
  */
787
787
  post: operations["create-agent-version"];
788
788
  delete?: never;
@@ -1928,7 +1928,7 @@ export interface paths {
1928
1928
  put?: never;
1929
1929
  /**
1930
1930
  * Create a context graph version
1931
- * @description Create a new version of a context graph. Version number is auto-incremented. Requires `ContextGraph.update` permission.
1931
+ * @description Create a new version of a context graph. Version number is auto-incremented. Requires `ContextGraph.create` permission for the first version and `ContextGraph.update` permission afterward.
1932
1932
  */
1933
1933
  post: operations["create-context_graph-version"];
1934
1934
  delete?: never;
@@ -11955,8 +11955,7 @@ export interface components {
11955
11955
  */
11956
11956
  email: string;
11957
11957
  name: components["schemas"]["NameString"];
11958
- /** Phone Number */
11959
- phone_number?: string | null;
11958
+ phone_number?: components["schemas"]["PhoneE164"] | null;
11960
11959
  /**
11961
11960
  * Role
11962
11961
  * @default operator
@@ -12353,11 +12352,7 @@ export interface components {
12353
12352
  };
12354
12353
  /** CreateSurfaceResponse */
12355
12354
  CreateSurfaceResponse: {
12356
- /**
12357
- * Channel
12358
- * @enum {string}
12359
- */
12360
- channel: "sms" | "whatsapp" | "imessage" | "email" | "voice" | "web";
12355
+ channel: components["schemas"]["ChannelType"];
12361
12356
  /** Created At */
12362
12357
  created_at: string;
12363
12358
  /** Description */
@@ -12381,11 +12376,7 @@ export interface components {
12381
12376
  * Format: uuid
12382
12377
  */
12383
12378
  id: string;
12384
- /**
12385
- * Status
12386
- * @enum {string}
12387
- */
12388
- status: "created" | "pending_review" | "delivered" | "opened" | "partial" | "completed" | "expired" | "archived";
12379
+ status: components["schemas"]["SurfaceStatus"];
12389
12380
  /** Title */
12390
12381
  title: string;
12391
12382
  /** Token */
@@ -13531,8 +13522,7 @@ export interface components {
13531
13522
  };
13532
13523
  /** DeliverSurfaceResponse */
13533
13524
  DeliverSurfaceResponse: {
13534
- /** Channel */
13535
- channel?: ("sms" | "whatsapp" | "imessage" | "email" | "voice" | "web") | null;
13525
+ channel?: components["schemas"]["ChannelType"] | null;
13536
13526
  /** Channel Address */
13537
13527
  channel_address: string;
13538
13528
  /** Delivered At */
@@ -14007,30 +13997,38 @@ export interface components {
14007
13997
  /**
14008
13998
  * EmotionSummary
14009
13999
  * @description Aggregated emotional analysis across the call.
14000
+ *
14001
+ * Free-form residual on the raw ``emotion_summary`` JSONB:
14002
+ * ``compound_emotions: list[{name, score}]``. Not exposed via this
14003
+ * typed shape — readers wanting it consume the JSONB endpoint.
14010
14004
  */
14011
14005
  EmotionSummary: {
14012
14006
  /**
14013
- * Avg Valence
14007
+ * Average Arousal
14008
+ * @description Average emotional arousal 0.0 to 1.0
14009
+ */
14010
+ average_arousal?: number | null;
14011
+ /**
14012
+ * Average Valence
14014
14013
  * @description Average emotional valence -1.0 to 1.0
14015
14014
  */
14016
- avg_valence?: number | null;
14015
+ average_valence?: number | null;
14017
14016
  /**
14018
- * Caller Distress Detected
14019
- * @description Whether caller distress was detected
14020
- * @default false
14017
+ * Barge In Count
14018
+ * @description Number of caller interruptions (emotion-tagged)
14019
+ * @default 0
14021
14020
  */
14022
- caller_distress_detected?: boolean;
14021
+ barge_in_count?: number;
14023
14022
  /**
14024
14023
  * Dominant Emotion
14025
- * @description Most frequent emotion
14024
+ * @description Most frequent emotion (e.g. 'neutral', 'happy', 'angry')
14026
14025
  */
14027
14026
  dominant_emotion?: string | null;
14028
14027
  /**
14029
- * Emotion Shifts
14030
- * @description Number of significant emotion transitions
14031
- * @default 0
14028
+ * Peak Negative Valence
14029
+ * @description Most negative valence observed
14032
14030
  */
14033
- emotion_shifts?: number;
14031
+ peak_negative_valence?: number | null;
14034
14032
  };
14035
14033
  /**
14036
14034
  * EmotionalShift
@@ -17359,29 +17357,59 @@ export interface components {
17359
17357
  };
17360
17358
  /**
17361
17359
  * LatencySummary
17362
- * @description Audio latency and silence metrics.
17360
+ * @description Audio + engine latency metrics (one entry per turn averaged).
17363
17361
  */
17364
17362
  LatencySummary: {
17363
+ /**
17364
+ * Avg Audio Ttfb Ms
17365
+ * @description Average audio time-to-first-byte (ms)
17366
+ */
17367
+ avg_audio_ttfb_ms?: number | null;
17368
+ /**
17369
+ * Avg Engine Ms
17370
+ * @description Average reasoning-engine latency (ms)
17371
+ */
17372
+ avg_engine_ms?: number | null;
17373
+ /**
17374
+ * Avg Nav Ms
17375
+ * @description Average navigation latency (ms)
17376
+ */
17377
+ avg_nav_ms?: number | null;
17378
+ /**
17379
+ * Avg Render Ms
17380
+ * @description Average render latency (ms)
17381
+ */
17382
+ avg_render_ms?: number | null;
17365
17383
  /**
17366
17384
  * P50 Audio Ttfb Ms
17367
- * @description Median audio time-to-first-byte (ms)
17385
+ * @description Median audio TTFB (ms)
17368
17386
  */
17369
17387
  p50_audio_ttfb_ms?: number | null;
17388
+ /**
17389
+ * P50 Engine Ms
17390
+ * @description Median engine latency (ms)
17391
+ */
17392
+ p50_engine_ms?: number | null;
17370
17393
  /**
17371
17394
  * P95 Audio Ttfb Ms
17372
17395
  * @description 95th percentile audio TTFB (ms)
17373
17396
  */
17374
17397
  p95_audio_ttfb_ms?: number | null;
17398
+ /**
17399
+ * P95 Engine Ms
17400
+ * @description 95th percentile engine latency (ms)
17401
+ */
17402
+ p95_engine_ms?: number | null;
17375
17403
  /**
17376
17404
  * Silence Ratio
17377
17405
  * @description Fraction of call spent in silence
17378
17406
  */
17379
17407
  silence_ratio?: number | null;
17380
17408
  /**
17381
- * Total Silence Seconds
17382
- * @description Total silence duration in seconds
17409
+ * Turn Count
17410
+ * @description Number of turns the latency averages were computed over
17383
17411
  */
17384
- total_silence_seconds?: number | null;
17412
+ turn_count?: number | null;
17385
17413
  };
17386
17414
  /**
17387
17415
  * LeaveCallRequest
@@ -17935,7 +17963,7 @@ export interface components {
17935
17963
  event_types: string[];
17936
17964
  /**
17937
17965
  * Extract Path
17938
- * @description JSONB path for static extraction (e.g. '$.quality_score', '$.emotion_summary.dominant_emotion'). Used when extraction_mode='static'.
17966
+ * @description JSON path for static extraction (e.g. `$.quality_score`, `$.risk_level`). For `call_intelligence` and `world_events`, single-segment paths resolve to typed columns when available and fall back to JSONB extraction otherwise. Used when `extraction_mode='static'`.
17939
17967
  */
17940
17968
  extract_path?: string | null;
17941
17969
  /**
@@ -18400,19 +18428,25 @@ export interface components {
18400
18428
  /**
18401
18429
  * OperatorIntelligenceSummary
18402
18430
  * @description Operator intervention summary.
18431
+ *
18432
+ * Three-valued semantics on ``operator_active``:
18433
+ * - ``True`` — escalation occurred and an operator was active.
18434
+ * - ``False`` — escalation occurred but no operator picked up.
18435
+ * - ``None`` — no escalation occurred (producer omits the key).
18436
+ * Readers must distinguish; do not coerce ``None`` → ``False``.
18403
18437
  */
18404
18438
  OperatorIntelligenceSummary: {
18405
18439
  /**
18406
18440
  * Escalated
18407
- * @description Whether the call was escalated
18441
+ * @description Whether the call was escalated to a human operator
18408
18442
  * @default false
18409
18443
  */
18410
18444
  escalated?: boolean;
18411
18445
  /**
18412
- * Operator Handle Time Seconds
18413
- * @description Operator handle time
18446
+ * Operator Active
18447
+ * @description Whether an operator was active during escalation. True = active; False = escalation occurred but no operator picked up; None = no escalation occurred (do NOT coerce to False).
18414
18448
  */
18415
- operator_handle_time_seconds?: number | null;
18449
+ operator_active?: boolean | null;
18416
18450
  };
18417
18451
  /** OperatorJoinedCallEvent */
18418
18452
  OperatorJoinedCallEvent: {
@@ -20868,11 +20902,7 @@ export interface components {
20868
20902
  * @enum {string}
20869
20903
  */
20870
20904
  action: "approved" | "rejected";
20871
- /**
20872
- * Status
20873
- * @enum {string}
20874
- */
20875
- status: "created" | "pending_review" | "delivered" | "opened" | "partial" | "completed" | "expired" | "archived";
20905
+ status: components["schemas"]["SurfaceStatus"];
20876
20906
  /**
20877
20907
  * Surface Id
20878
20908
  * Format: uuid
@@ -21058,6 +21088,12 @@ export interface components {
21058
21088
  /**
21059
21089
  * RiskSummary
21060
21090
  * @description Aggregated risk signals across the call.
21091
+ *
21092
+ * Free-form residual on the raw ``risk_summary`` JSONB:
21093
+ * ``signals: list[{name, raw_score, weight, weighted_score, detail}]``
21094
+ * — the per-signal breakdown that aggregates into ``composite_score``.
21095
+ * Not exposed via this typed shape; consumers needing per-signal
21096
+ * detail read the JSONB endpoint.
21061
21097
  */
21062
21098
  RiskSummary: {
21063
21099
  /**
@@ -21066,11 +21102,6 @@ export interface components {
21066
21102
  * @default 0
21067
21103
  */
21068
21104
  composite_score?: number;
21069
- /**
21070
- * Flags
21071
- * @description Specific risk flags raised
21072
- */
21073
- flags?: string[];
21074
21105
  /**
21075
21106
  * Level
21076
21107
  * @description Risk level
@@ -21196,13 +21227,12 @@ export interface components {
21196
21227
  /**
21197
21228
  * SafetySummary
21198
21229
  * @description Safety filter results.
21230
+ *
21231
+ * Free-form residual on the raw ``safety_summary`` JSONB:
21232
+ * ``actions: dict | list`` — escalation handler actions taken
21233
+ * when ``match_count > 0``. Not exposed via this typed shape.
21199
21234
  */
21200
21235
  SafetySummary: {
21201
- /**
21202
- * Categories
21203
- * @description Safety categories matched
21204
- */
21205
- categories?: string[];
21206
21236
  /**
21207
21237
  * Match Count
21208
21238
  * @description Number of safety filter matches
@@ -23344,8 +23374,7 @@ export interface components {
23344
23374
  };
23345
23375
  /** SurfaceResponse */
23346
23376
  SurfaceResponse: {
23347
- /** Channel */
23348
- channel?: ("sms" | "whatsapp" | "imessage" | "email" | "voice" | "web") | null;
23377
+ channel?: components["schemas"]["ChannelType"] | null;
23349
23378
  /**
23350
23379
  * Context
23351
23380
  * @default {}
@@ -23390,11 +23419,7 @@ export interface components {
23390
23419
  opened_at?: string | null;
23391
23420
  /** Resource Type */
23392
23421
  resource_type?: string | null;
23393
- /**
23394
- * Status
23395
- * @enum {string}
23396
- */
23397
- status: "created" | "pending_review" | "delivered" | "opened" | "partial" | "completed" | "expired" | "archived";
23422
+ status: components["schemas"]["SurfaceStatus"];
23398
23423
  /** Submitted At */
23399
23424
  submitted_at?: string | null;
23400
23425
  /** Submitted Data */
@@ -23509,6 +23534,12 @@ export interface components {
23509
23534
  /** Surface Id */
23510
23535
  surface_id?: string | null;
23511
23536
  };
23537
+ /**
23538
+ * SurfaceStatus
23539
+ * @description Lifecycle status of a surface.
23540
+ * @enum {string}
23541
+ */
23542
+ SurfaceStatus: "created" | "pending_review" | "delivered" | "opened" | "partial" | "completed" | "expired" | "archived";
23512
23543
  /** SurfaceSubmittedEvent */
23513
23544
  SurfaceSubmittedEvent: {
23514
23545
  /**
@@ -24402,6 +24433,10 @@ export interface components {
24402
24433
  /**
24403
24434
  * ToolSummary
24404
24435
  * @description Tool usage statistics.
24436
+ *
24437
+ * Free-form residual on the raw ``tool_summary`` JSONB:
24438
+ * ``by_tool: list[{name, calls, succeeded, failed, avg_duration_ms}]``
24439
+ * — per-tool breakdown. Not exposed via this typed shape.
24405
24440
  */
24406
24441
  ToolSummary: {
24407
24442
  /**
@@ -24416,6 +24451,12 @@ export interface components {
24416
24451
  * @default 0
24417
24452
  */
24418
24453
  failure_rate?: number;
24454
+ /**
24455
+ * Succeeded
24456
+ * @description Successful tool invocations
24457
+ * @default 0
24458
+ */
24459
+ succeeded?: number;
24419
24460
  /**
24420
24461
  * Total Calls
24421
24462
  * @description Total tool invocations
@@ -25424,8 +25465,7 @@ export interface components {
25424
25465
  /** Email */
25425
25466
  email?: string | null;
25426
25467
  name?: components["schemas"]["NameString"] | null;
25427
- /** Phone Number */
25428
- phone_number?: string | null;
25468
+ phone_number?: components["schemas"]["PhoneE164"] | null;
25429
25469
  /** Role */
25430
25470
  role?: ("operator" | "supervisor" | "admin") | null;
25431
25471
  /** Skills */
@@ -27017,13 +27057,15 @@ export interface components {
27017
27057
  /**
27018
27058
  * ConversationSummary
27019
27059
  * @description Conversation flow metrics.
27060
+ *
27061
+ * Free-form residual on the raw ``conversation_summary`` JSONB:
27062
+ * ``text_intelligence: dict`` (text-channel intelligence
27063
+ * sub-payload), and on the simulation path ``transcript_text:
27064
+ * str`` (PHI), ``tool_calls: list``, ``score``,
27065
+ * ``score_rationale``, ``terminal_reached``, ``states_visited``.
27066
+ * Not exposed via this typed shape.
27020
27067
  */
27021
27068
  src__routes__calls__ConversationSummary: {
27022
- /**
27023
- * Avg Turn Duration Seconds
27024
- * @description Average turn duration
27025
- */
27026
- avg_turn_duration_seconds?: number | null;
27027
27069
  /**
27028
27070
  * Barge In Count
27029
27071
  * @description Number of caller interruptions
@@ -27032,16 +27074,28 @@ export interface components {
27032
27074
  barge_in_count?: number;
27033
27075
  /**
27034
27076
  * Loop Count
27035
- * @description Number of detected conversation loops
27077
+ * @description Number of detected state loops
27036
27078
  * @default 0
27037
27079
  */
27038
27080
  loop_count?: number;
27039
27081
  /**
27040
- * Topic Changes
27041
- * @description Number of topic transitions
27082
+ * States Visited Count
27083
+ * @description Number of states visited (including repeats)
27042
27084
  * @default 0
27043
27085
  */
27044
- topic_changes?: number;
27086
+ states_visited_count?: number;
27087
+ /**
27088
+ * Turn Count
27089
+ * @description Total turn count for the call
27090
+ * @default 0
27091
+ */
27092
+ turn_count?: number;
27093
+ /**
27094
+ * Unique States
27095
+ * @description Number of distinct states visited
27096
+ * @default 0
27097
+ */
27098
+ unique_states?: number;
27045
27099
  };
27046
27100
  /** ConversationSummary */
27047
27101
  src__routes__conversations__ConversationSummary: {
@@ -28479,101 +28533,101 @@ export interface operations {
28479
28533
  };
28480
28534
  };
28481
28535
  };
28482
- "list-workspaces": {
28536
+ "create-my-workspace": {
28483
28537
  parameters: {
28484
- query?: {
28485
- limit?: number;
28486
- continuation_token?: number;
28487
- };
28538
+ query?: never;
28488
28539
  header?: never;
28489
28540
  path?: never;
28490
28541
  cookie?: never;
28491
28542
  };
28492
- requestBody?: never;
28543
+ requestBody: {
28544
+ content: {
28545
+ "application/json": components["schemas"]["CreateWorkspaceRequest"];
28546
+ };
28547
+ };
28493
28548
  responses: {
28494
28549
  /** @description Successful Response */
28495
- 200: {
28550
+ 201: {
28496
28551
  headers: {
28497
28552
  [name: string]: unknown;
28498
28553
  };
28499
28554
  content: {
28500
- "application/json": components["schemas"]["PaginatedResponse_WorkspaceResponse_"];
28555
+ "application/json": components["schemas"]["WorkspaceResponse"];
28501
28556
  };
28502
28557
  };
28503
- /** @description Missing or invalid API key. */
28504
- 401: {
28558
+ /** @description Insufficient permissions or unsupported principal type. */
28559
+ 403: {
28505
28560
  headers: {
28506
28561
  [name: string]: unknown;
28507
28562
  };
28508
28563
  content?: never;
28509
28564
  };
28510
- /** @description Insufficient permissions. */
28511
- 403: {
28565
+ /** @description Workspace slug already taken. */
28566
+ 409: {
28512
28567
  headers: {
28513
28568
  [name: string]: unknown;
28514
28569
  };
28515
28570
  content?: never;
28516
28571
  };
28517
- /** @description Validation Error */
28572
+ /** @description Invalid request body. */
28518
28573
  422: {
28519
28574
  headers: {
28520
28575
  [name: string]: unknown;
28521
28576
  };
28522
- content: {
28523
- "application/json": components["schemas"]["HTTPValidationError"];
28577
+ content?: never;
28578
+ };
28579
+ /** @description Identity service unavailable. */
28580
+ 503: {
28581
+ headers: {
28582
+ [name: string]: unknown;
28524
28583
  };
28584
+ content?: never;
28525
28585
  };
28526
28586
  };
28527
28587
  };
28528
- "create-self-service-workspace": {
28588
+ "list-workspaces": {
28529
28589
  parameters: {
28530
- query?: never;
28590
+ query?: {
28591
+ limit?: number;
28592
+ continuation_token?: number;
28593
+ };
28531
28594
  header?: never;
28532
28595
  path?: never;
28533
28596
  cookie?: never;
28534
28597
  };
28535
- requestBody: {
28536
- content: {
28537
- "application/json": components["schemas"]["CreateWorkspaceRequest"];
28538
- };
28539
- };
28598
+ requestBody?: never;
28540
28599
  responses: {
28541
28600
  /** @description Successful Response */
28542
- 201: {
28601
+ 200: {
28543
28602
  headers: {
28544
28603
  [name: string]: unknown;
28545
28604
  };
28546
28605
  content: {
28547
- "application/json": components["schemas"]["WorkspaceResponse"];
28606
+ "application/json": components["schemas"]["PaginatedResponse_WorkspaceResponse_"];
28548
28607
  };
28549
28608
  };
28550
- /** @description Insufficient permissions or unsupported principal type. */
28551
- 403: {
28609
+ /** @description Missing or invalid API key. */
28610
+ 401: {
28552
28611
  headers: {
28553
28612
  [name: string]: unknown;
28554
28613
  };
28555
28614
  content?: never;
28556
28615
  };
28557
- /** @description Workspace slug already taken. */
28558
- 409: {
28616
+ /** @description Insufficient permissions. */
28617
+ 403: {
28559
28618
  headers: {
28560
28619
  [name: string]: unknown;
28561
28620
  };
28562
28621
  content?: never;
28563
28622
  };
28564
- /** @description Invalid request body. */
28623
+ /** @description Validation Error */
28565
28624
  422: {
28566
28625
  headers: {
28567
28626
  [name: string]: unknown;
28568
28627
  };
28569
- content?: never;
28570
- };
28571
- /** @description Identity service unavailable. */
28572
- 503: {
28573
- headers: {
28574
- [name: string]: unknown;
28628
+ content: {
28629
+ "application/json": components["schemas"]["HTTPValidationError"];
28575
28630
  };
28576
- content?: never;
28577
28631
  };
28578
28632
  };
28579
28633
  };