@coval/sdk 0.4.5 → 0.5.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.
Files changed (192) hide show
  1. package/dist/CovalClient.d.ts +3 -2
  2. package/dist/CovalClient.d.ts.map +1 -1
  3. package/dist/CovalClient.js +4 -1
  4. package/dist/CovalClient.js.map +1 -1
  5. package/dist/generated/apis/ConversationsApi.d.ts +27 -5
  6. package/dist/generated/apis/ConversationsApi.d.ts.map +1 -1
  7. package/dist/generated/apis/ConversationsApi.js +22 -2
  8. package/dist/generated/apis/ConversationsApi.js.map +1 -1
  9. package/dist/generated/apis/MetricOutputsApi.d.ts +11 -0
  10. package/dist/generated/apis/MetricOutputsApi.d.ts.map +1 -1
  11. package/dist/generated/apis/MetricOutputsApi.js +10 -0
  12. package/dist/generated/apis/MetricOutputsApi.js.map +1 -1
  13. package/dist/generated/apis/MetricsApi.d.ts +12 -12
  14. package/dist/generated/apis/MetricsApi.js +6 -6
  15. package/dist/generated/apis/RunsApi.d.ts +11 -10
  16. package/dist/generated/apis/RunsApi.d.ts.map +1 -1
  17. package/dist/generated/apis/RunsApi.js +4 -3
  18. package/dist/generated/apis/RunsApi.js.map +1 -1
  19. package/dist/generated/apis/SimulationsApi.d.ts +4 -4
  20. package/dist/generated/apis/SimulationsApi.js +2 -2
  21. package/dist/generated/apis/WorkspacesApi.d.ts +256 -0
  22. package/dist/generated/apis/WorkspacesApi.d.ts.map +1 -0
  23. package/dist/generated/apis/WorkspacesApi.js +254 -0
  24. package/dist/generated/apis/WorkspacesApi.js.map +1 -0
  25. package/dist/generated/apis/index.d.ts +1 -0
  26. package/dist/generated/apis/index.d.ts.map +1 -1
  27. package/dist/generated/apis/index.js +1 -0
  28. package/dist/generated/apis/index.js.map +1 -1
  29. package/dist/generated/models/CovalAgentsAPICreateAgentRequest.d.ts +11 -6
  30. package/dist/generated/models/CovalAgentsAPICreateAgentRequest.d.ts.map +1 -1
  31. package/dist/generated/models/CovalAgentsAPICreateAgentRequest.js.map +1 -1
  32. package/dist/generated/models/CovalAgentsAPISimulatorType.d.ts +2 -0
  33. package/dist/generated/models/CovalAgentsAPISimulatorType.d.ts.map +1 -1
  34. package/dist/generated/models/CovalAgentsAPISimulatorType.js +3 -1
  35. package/dist/generated/models/CovalAgentsAPISimulatorType.js.map +1 -1
  36. package/dist/generated/models/CovalConversationsAPIFilteredSubmitResponse.d.ts +47 -0
  37. package/dist/generated/models/CovalConversationsAPIFilteredSubmitResponse.d.ts.map +1 -0
  38. package/dist/generated/models/CovalConversationsAPIFilteredSubmitResponse.js +52 -0
  39. package/dist/generated/models/CovalConversationsAPIFilteredSubmitResponse.js.map +1 -0
  40. package/dist/generated/models/CovalConversationsAPISubmitConversationRequest.d.ts +6 -0
  41. package/dist/generated/models/CovalConversationsAPISubmitConversationRequest.d.ts.map +1 -1
  42. package/dist/generated/models/CovalConversationsAPISubmitConversationRequest.js.map +1 -1
  43. package/dist/generated/models/CovalDashboardsAPIChartWidgetConfig.d.ts +6 -0
  44. package/dist/generated/models/CovalDashboardsAPIChartWidgetConfig.d.ts.map +1 -1
  45. package/dist/generated/models/CovalDashboardsAPIChartWidgetConfig.js +2 -0
  46. package/dist/generated/models/CovalDashboardsAPIChartWidgetConfig.js.map +1 -1
  47. package/dist/generated/models/CovalDashboardsAPITableWidgetConfig.d.ts +6 -0
  48. package/dist/generated/models/CovalDashboardsAPITableWidgetConfig.d.ts.map +1 -1
  49. package/dist/generated/models/CovalDashboardsAPITableWidgetConfig.js +2 -0
  50. package/dist/generated/models/CovalDashboardsAPITableWidgetConfig.js.map +1 -1
  51. package/dist/generated/models/CovalDashboardsAPIUpdateWidgetRequest.d.ts +1 -1
  52. package/dist/generated/models/CovalDashboardsAPIWidgetConfig.d.ts +6 -0
  53. package/dist/generated/models/CovalDashboardsAPIWidgetConfig.d.ts.map +1 -1
  54. package/dist/generated/models/CovalDashboardsAPIWidgetConfig.js +2 -0
  55. package/dist/generated/models/CovalDashboardsAPIWidgetConfig.js.map +1 -1
  56. package/dist/generated/models/CovalMetricsAPICreateMetricRequest.d.ts +127 -1
  57. package/dist/generated/models/CovalMetricsAPICreateMetricRequest.d.ts.map +1 -1
  58. package/dist/generated/models/CovalMetricsAPICreateMetricRequest.js +71 -1
  59. package/dist/generated/models/CovalMetricsAPICreateMetricRequest.js.map +1 -1
  60. package/dist/generated/models/CovalMetricsAPICreateMetricRequestExpectedBody.d.ts +24 -0
  61. package/dist/generated/models/CovalMetricsAPICreateMetricRequestExpectedBody.d.ts.map +1 -0
  62. package/dist/generated/models/CovalMetricsAPICreateMetricRequestExpectedBody.js +38 -0
  63. package/dist/generated/models/CovalMetricsAPICreateMetricRequestExpectedBody.js.map +1 -0
  64. package/dist/generated/models/CovalMetricsAPIMetricResource.d.ts +125 -1
  65. package/dist/generated/models/CovalMetricsAPIMetricResource.d.ts.map +1 -1
  66. package/dist/generated/models/CovalMetricsAPIMetricResource.js +69 -1
  67. package/dist/generated/models/CovalMetricsAPIMetricResource.js.map +1 -1
  68. package/dist/generated/models/CovalMetricsAPIMetricResourceExpectedBody.d.ts +24 -0
  69. package/dist/generated/models/CovalMetricsAPIMetricResourceExpectedBody.d.ts.map +1 -0
  70. package/dist/generated/models/CovalMetricsAPIMetricResourceExpectedBody.js +38 -0
  71. package/dist/generated/models/CovalMetricsAPIMetricResourceExpectedBody.js.map +1 -0
  72. package/dist/generated/models/CovalMetricsAPIMetricThresholdResource.d.ts +6 -0
  73. package/dist/generated/models/CovalMetricsAPIMetricThresholdResource.d.ts.map +1 -1
  74. package/dist/generated/models/CovalMetricsAPIMetricThresholdResource.js +4 -0
  75. package/dist/generated/models/CovalMetricsAPIMetricThresholdResource.js.map +1 -1
  76. package/dist/generated/models/CovalMetricsAPIMetricType.d.ts +10 -0
  77. package/dist/generated/models/CovalMetricsAPIMetricType.d.ts.map +1 -1
  78. package/dist/generated/models/CovalMetricsAPIMetricType.js +11 -1
  79. package/dist/generated/models/CovalMetricsAPIMetricType.js.map +1 -1
  80. package/dist/generated/models/CovalMetricsAPIUpdateMetricRequest.d.ts +126 -0
  81. package/dist/generated/models/CovalMetricsAPIUpdateMetricRequest.d.ts.map +1 -1
  82. package/dist/generated/models/CovalMetricsAPIUpdateMetricRequest.js +71 -1
  83. package/dist/generated/models/CovalMetricsAPIUpdateMetricRequest.js.map +1 -1
  84. package/dist/generated/models/CovalPersonasAPIAudioDegradationConfig.d.ts +57 -0
  85. package/dist/generated/models/CovalPersonasAPIAudioDegradationConfig.d.ts.map +1 -0
  86. package/dist/generated/models/CovalPersonasAPIAudioDegradationConfig.js +54 -0
  87. package/dist/generated/models/CovalPersonasAPIAudioDegradationConfig.js.map +1 -0
  88. package/dist/generated/models/CovalPersonasAPICreatePersonaRequest.d.ts +11 -0
  89. package/dist/generated/models/CovalPersonasAPICreatePersonaRequest.d.ts.map +1 -1
  90. package/dist/generated/models/CovalPersonasAPICreatePersonaRequest.js +3 -0
  91. package/dist/generated/models/CovalPersonasAPICreatePersonaRequest.js.map +1 -1
  92. package/dist/generated/models/CovalPersonasAPIPersonaResource.d.ts +7 -0
  93. package/dist/generated/models/CovalPersonasAPIPersonaResource.d.ts.map +1 -1
  94. package/dist/generated/models/CovalPersonasAPIPersonaResource.js +3 -0
  95. package/dist/generated/models/CovalPersonasAPIPersonaResource.js.map +1 -1
  96. package/dist/generated/models/CovalPersonasAPIUpdatePersonaRequest.d.ts +12 -0
  97. package/dist/generated/models/CovalPersonasAPIUpdatePersonaRequest.d.ts.map +1 -1
  98. package/dist/generated/models/CovalPersonasAPIUpdatePersonaRequest.js +3 -0
  99. package/dist/generated/models/CovalPersonasAPIUpdatePersonaRequest.js.map +1 -1
  100. package/dist/generated/models/CovalRunsAPIMonitoringRunTagUpdateResource.d.ts +45 -0
  101. package/dist/generated/models/CovalRunsAPIMonitoringRunTagUpdateResource.d.ts.map +1 -0
  102. package/dist/generated/models/CovalRunsAPIMonitoringRunTagUpdateResource.js +52 -0
  103. package/dist/generated/models/CovalRunsAPIMonitoringRunTagUpdateResource.js.map +1 -0
  104. package/dist/generated/models/CovalSimulationsAPIErrorInfo.d.ts +1 -0
  105. package/dist/generated/models/CovalSimulationsAPIErrorInfo.d.ts.map +1 -1
  106. package/dist/generated/models/CovalSimulationsAPIErrorInfo.js +1 -0
  107. package/dist/generated/models/CovalSimulationsAPIErrorInfo.js.map +1 -1
  108. package/dist/generated/models/CovalWorkspacesAPICreateWorkspaceRequest.d.ts +39 -0
  109. package/dist/generated/models/CovalWorkspacesAPICreateWorkspaceRequest.d.ts.map +1 -0
  110. package/dist/generated/models/CovalWorkspacesAPICreateWorkspaceRequest.js +48 -0
  111. package/dist/generated/models/CovalWorkspacesAPICreateWorkspaceRequest.js.map +1 -0
  112. package/dist/generated/models/CovalWorkspacesAPIErrorResponse.d.ts +34 -0
  113. package/dist/generated/models/CovalWorkspacesAPIErrorResponse.d.ts.map +1 -0
  114. package/dist/generated/models/CovalWorkspacesAPIErrorResponse.js +45 -0
  115. package/dist/generated/models/CovalWorkspacesAPIErrorResponse.js.map +1 -0
  116. package/dist/generated/models/CovalWorkspacesAPIErrorResponseError.d.ts +58 -0
  117. package/dist/generated/models/CovalWorkspacesAPIErrorResponseError.d.ts.map +1 -0
  118. package/dist/generated/models/CovalWorkspacesAPIErrorResponseError.js +64 -0
  119. package/dist/generated/models/CovalWorkspacesAPIErrorResponseError.js.map +1 -0
  120. package/dist/generated/models/CovalWorkspacesAPIListWorkspacesResponse.d.ts +34 -0
  121. package/dist/generated/models/CovalWorkspacesAPIListWorkspacesResponse.d.ts.map +1 -0
  122. package/dist/generated/models/CovalWorkspacesAPIListWorkspacesResponse.js +45 -0
  123. package/dist/generated/models/CovalWorkspacesAPIListWorkspacesResponse.js.map +1 -0
  124. package/dist/generated/models/CovalWorkspacesAPIUpdateWorkspaceRequest.d.ts +33 -0
  125. package/dist/generated/models/CovalWorkspacesAPIUpdateWorkspaceRequest.d.ts.map +1 -0
  126. package/dist/generated/models/CovalWorkspacesAPIUpdateWorkspaceRequest.js +44 -0
  127. package/dist/generated/models/CovalWorkspacesAPIUpdateWorkspaceRequest.js.map +1 -0
  128. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResource.d.ts +86 -0
  129. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResource.d.ts.map +1 -0
  130. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResource.js +83 -0
  131. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResource.js.map +1 -0
  132. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResponse.d.ts +34 -0
  133. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResponse.d.ts.map +1 -0
  134. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResponse.js +45 -0
  135. package/dist/generated/models/CovalWorkspacesAPIWorkspaceResponse.js.map +1 -0
  136. package/dist/generated/models/SubmitConversation200Response.d.ts +24 -0
  137. package/dist/generated/models/SubmitConversation200Response.d.ts.map +1 -0
  138. package/dist/generated/models/SubmitConversation200Response.js +52 -0
  139. package/dist/generated/models/SubmitConversation200Response.js.map +1 -0
  140. package/dist/generated/models/UpdateRun200Response.d.ts +34 -0
  141. package/dist/generated/models/UpdateRun200Response.d.ts.map +1 -0
  142. package/dist/generated/models/UpdateRun200Response.js +45 -0
  143. package/dist/generated/models/UpdateRun200Response.js.map +1 -0
  144. package/dist/generated/models/UpdateRun200ResponseRun.d.ts +24 -0
  145. package/dist/generated/models/UpdateRun200ResponseRun.d.ts.map +1 -0
  146. package/dist/generated/models/UpdateRun200ResponseRun.js +52 -0
  147. package/dist/generated/models/UpdateRun200ResponseRun.js.map +1 -0
  148. package/dist/generated/models/index.d.ts +15 -0
  149. package/dist/generated/models/index.d.ts.map +1 -1
  150. package/dist/generated/models/index.js +15 -0
  151. package/dist/generated/models/index.js.map +1 -1
  152. package/package.json +1 -1
  153. package/src/CovalClient.ts +4 -0
  154. package/src/generated/apis/ConversationsApi.ts +40 -10
  155. package/src/generated/apis/MetricOutputsApi.ts +16 -0
  156. package/src/generated/apis/MetricsApi.ts +12 -12
  157. package/src/generated/apis/RunsApi.ts +16 -11
  158. package/src/generated/apis/SimulationsApi.ts +4 -4
  159. package/src/generated/apis/WorkspacesApi.ts +531 -0
  160. package/src/generated/apis/index.ts +1 -0
  161. package/src/generated/models/CovalAgentsAPICreateAgentRequest.ts +11 -6
  162. package/src/generated/models/CovalAgentsAPISimulatorType.ts +3 -1
  163. package/src/generated/models/CovalConversationsAPIFilteredSubmitResponse.ts +86 -0
  164. package/src/generated/models/CovalConversationsAPISubmitConversationRequest.ts +6 -0
  165. package/src/generated/models/CovalDashboardsAPIChartWidgetConfig.ts +8 -0
  166. package/src/generated/models/CovalDashboardsAPITableWidgetConfig.ts +8 -0
  167. package/src/generated/models/CovalDashboardsAPIUpdateWidgetRequest.ts +1 -1
  168. package/src/generated/models/CovalDashboardsAPIWidgetConfig.ts +8 -0
  169. package/src/generated/models/CovalMetricsAPICreateMetricRequest.ts +164 -2
  170. package/src/generated/models/CovalMetricsAPICreateMetricRequestExpectedBody.ts +49 -0
  171. package/src/generated/models/CovalMetricsAPIMetricResource.ts +161 -1
  172. package/src/generated/models/CovalMetricsAPIMetricResourceExpectedBody.ts +49 -0
  173. package/src/generated/models/CovalMetricsAPIMetricThresholdResource.ts +9 -0
  174. package/src/generated/models/CovalMetricsAPIMetricType.ts +11 -1
  175. package/src/generated/models/CovalMetricsAPIUpdateMetricRequest.ts +163 -1
  176. package/src/generated/models/CovalPersonasAPIAudioDegradationConfig.ts +95 -0
  177. package/src/generated/models/CovalPersonasAPICreatePersonaRequest.ts +20 -0
  178. package/src/generated/models/CovalPersonasAPIPersonaResource.ts +16 -0
  179. package/src/generated/models/CovalPersonasAPIUpdatePersonaRequest.ts +21 -0
  180. package/src/generated/models/CovalRunsAPIMonitoringRunTagUpdateResource.ts +84 -0
  181. package/src/generated/models/CovalSimulationsAPIErrorInfo.ts +1 -0
  182. package/src/generated/models/CovalWorkspacesAPICreateWorkspaceRequest.ts +75 -0
  183. package/src/generated/models/CovalWorkspacesAPIErrorResponse.ts +74 -0
  184. package/src/generated/models/CovalWorkspacesAPIErrorResponseError.ts +107 -0
  185. package/src/generated/models/CovalWorkspacesAPIListWorkspacesResponse.ts +74 -0
  186. package/src/generated/models/CovalWorkspacesAPIUpdateWorkspaceRequest.ts +66 -0
  187. package/src/generated/models/CovalWorkspacesAPIWorkspaceResource.ts +141 -0
  188. package/src/generated/models/CovalWorkspacesAPIWorkspaceResponse.ts +74 -0
  189. package/src/generated/models/SubmitConversation200Response.ts +76 -0
  190. package/src/generated/models/UpdateRun200Response.ts +74 -0
  191. package/src/generated/models/UpdateRun200ResponseRun.ts +76 -0
  192. package/src/generated/models/index.ts +15 -0
@@ -0,0 +1,86 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Coval Agents API
5
+ * Manage configurations for simulations and evaluations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@coval.dev
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ * Returned with HTTP 200 when a submit is dropped by the simulation
18
+ * filter. No conversation is created and nothing is billed.
19
+ *
20
+ * @export
21
+ * @interface CovalConversationsAPIFilteredSubmitResponse
22
+ */
23
+ export interface CovalConversationsAPIFilteredSubmitResponse {
24
+ /**
25
+ * Always true; the conversation was not created
26
+ * @type {boolean}
27
+ * @memberof CovalConversationsAPIFilteredSubmitResponse
28
+ */
29
+ filtered: boolean;
30
+ /**
31
+ * Why the submit was filtered
32
+ * @type {string}
33
+ * @memberof CovalConversationsAPIFilteredSubmitResponse
34
+ */
35
+ reason: string;
36
+ /**
37
+ * The platform simulation the submit matched
38
+ * @type {string}
39
+ * @memberof CovalConversationsAPIFilteredSubmitResponse
40
+ */
41
+ simulation_id: string;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the CovalConversationsAPIFilteredSubmitResponse interface.
46
+ */
47
+ export function instanceOfCovalConversationsAPIFilteredSubmitResponse(value: object): value is CovalConversationsAPIFilteredSubmitResponse {
48
+ if (!('filtered' in value) || value['filtered'] === undefined) return false;
49
+ if (!('reason' in value) || value['reason'] === undefined) return false;
50
+ if (!('simulation_id' in value) || value['simulation_id'] === undefined) return false;
51
+ return true;
52
+ }
53
+
54
+ export function CovalConversationsAPIFilteredSubmitResponseFromJSON(json: any): CovalConversationsAPIFilteredSubmitResponse {
55
+ return CovalConversationsAPIFilteredSubmitResponseFromJSONTyped(json, false);
56
+ }
57
+
58
+ export function CovalConversationsAPIFilteredSubmitResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CovalConversationsAPIFilteredSubmitResponse {
59
+ if (json == null) {
60
+ return json;
61
+ }
62
+ return {
63
+
64
+ 'filtered': json['filtered'],
65
+ 'reason': json['reason'],
66
+ 'simulation_id': json['simulation_id'],
67
+ };
68
+ }
69
+
70
+ export function CovalConversationsAPIFilteredSubmitResponseToJSON(json: any): CovalConversationsAPIFilteredSubmitResponse {
71
+ return CovalConversationsAPIFilteredSubmitResponseToJSONTyped(json, false);
72
+ }
73
+
74
+ export function CovalConversationsAPIFilteredSubmitResponseToJSONTyped(value?: CovalConversationsAPIFilteredSubmitResponse | null, ignoreDiscriminator: boolean = false): any {
75
+ if (value == null) {
76
+ return value;
77
+ }
78
+
79
+ return {
80
+
81
+ 'filtered': value['filtered'],
82
+ 'reason': value['reason'],
83
+ 'simulation_id': value['simulation_id'],
84
+ };
85
+ }
86
+
@@ -119,6 +119,12 @@ export interface CovalConversationsAPISubmitConversationRequest {
119
119
  * - Filtering conversations
120
120
  * - Custom analytics and reporting
121
121
  *
122
+ * Reserved key `coval_simulation_id`: set it to the value of the
123
+ * `X-Coval-Simulation-Id` SIP header delivered with every inbound
124
+ * simulation call. Organizations that opt in to the simulation
125
+ * filter have submits carrying a matching platform-simulation id
126
+ * dropped without creating a conversation (see the 200 response).
127
+ *
122
128
  * @type {{ [key: string]: any; }}
123
129
  * @memberof CovalConversationsAPISubmitConversationRequest
124
130
  */
@@ -129,6 +129,12 @@ export interface CovalDashboardsAPIChartWidgetConfig {
129
129
  * @memberof CovalDashboardsAPIChartWidgetConfig
130
130
  */
131
131
  groupBy?: CovalDashboardsAPIGroupByType;
132
+ /**
133
+ * Customer metadata key to group by; mutually exclusive with groupBy. Rows fall into one of three groups: the 20 most common values are separate groups, remaining values are combined as a synthetic Other group distinct from a literal customer value named Other, and rows that do not carry the key at all form their own group with a null value, which clients render as Unknown. That last group never occupies one of the 20 slots.
134
+ * @type {string}
135
+ * @memberof CovalDashboardsAPIChartWidgetConfig
136
+ */
137
+ groupByMetadataKey?: string;
132
138
  /**
133
139
  * Custom color assignments for series (max 200 entries)
134
140
  * @type {{ [key: string]: string; }}
@@ -255,6 +261,7 @@ export function CovalDashboardsAPIChartWidgetConfigFromJSONTyped(json: any, igno
255
261
  'grouped': json['grouped'] == null ? undefined : json['grouped'],
256
262
  'showAsPercentage': json['showAsPercentage'] == null ? undefined : json['showAsPercentage'],
257
263
  'groupBy': json['groupBy'] == null ? undefined : CovalDashboardsAPIGroupByTypeFromJSON(json['groupBy']),
264
+ 'groupByMetadataKey': json['groupByMetadataKey'] == null ? undefined : json['groupByMetadataKey'],
258
265
  'customColorMap': json['customColorMap'] == null ? undefined : json['customColorMap'],
259
266
  'xAxisLabel': json['xAxisLabel'] == null ? undefined : json['xAxisLabel'],
260
267
  'yAxisLabel': json['yAxisLabel'] == null ? undefined : json['yAxisLabel'],
@@ -293,6 +300,7 @@ export function CovalDashboardsAPIChartWidgetConfigToJSONTyped(value?: CovalDash
293
300
  'grouped': value['grouped'],
294
301
  'showAsPercentage': value['showAsPercentage'],
295
302
  'groupBy': CovalDashboardsAPIGroupByTypeToJSON(value['groupBy']),
303
+ 'groupByMetadataKey': value['groupByMetadataKey'],
296
304
  'customColorMap': value['customColorMap'],
297
305
  'xAxisLabel': value['xAxisLabel'],
298
306
  'yAxisLabel': value['yAxisLabel'],
@@ -79,6 +79,12 @@ export interface CovalDashboardsAPITableWidgetConfig {
79
79
  * @memberof CovalDashboardsAPITableWidgetConfig
80
80
  */
81
81
  groupBy?: CovalDashboardsAPIGroupByType;
82
+ /**
83
+ * Customer metadata key to group by; mutually exclusive with groupBy. Rows fall into one of three groups: the 20 most common values are separate groups, remaining values are combined as a synthetic Other group distinct from a literal customer value named Other, and rows that do not carry the key at all form their own group with a null value, which clients render as Unknown. That last group never occupies one of the 20 slots.
84
+ * @type {string}
85
+ * @memberof CovalDashboardsAPITableWidgetConfig
86
+ */
87
+ groupByMetadataKey?: string;
82
88
  /**
83
89
  *
84
90
  * @type {CovalDashboardsAPIFilterConfig}
@@ -116,6 +122,7 @@ export function CovalDashboardsAPITableWidgetConfigFromJSONTyped(json: any, igno
116
122
  'monitoring': json['monitoring'] == null ? undefined : CovalDashboardsAPIDataSourceTypeFromJSON(json['monitoring']),
117
123
  'aggregation': json['aggregation'] == null ? undefined : CovalDashboardsAPIAggregationTypeFromJSON(json['aggregation']),
118
124
  'groupBy': json['groupBy'] == null ? undefined : CovalDashboardsAPIGroupByTypeFromJSON(json['groupBy']),
125
+ 'groupByMetadataKey': json['groupByMetadataKey'] == null ? undefined : json['groupByMetadataKey'],
119
126
  'filters': json['filters'] == null ? undefined : CovalDashboardsAPIFilterConfigFromJSON(json['filters']),
120
127
  'metricFilter': json['metricFilter'] == null ? undefined : ((json['metricFilter'] as Array<any>).map(CovalDashboardsAPIMetricFilterFromJSON)),
121
128
  };
@@ -136,6 +143,7 @@ export function CovalDashboardsAPITableWidgetConfigToJSONTyped(value?: CovalDash
136
143
  'monitoring': CovalDashboardsAPIDataSourceTypeToJSON(value['monitoring']),
137
144
  'aggregation': CovalDashboardsAPIAggregationTypeToJSON(value['aggregation']),
138
145
  'groupBy': CovalDashboardsAPIGroupByTypeToJSON(value['groupBy']),
146
+ 'groupByMetadataKey': value['groupByMetadataKey'],
139
147
  'filters': CovalDashboardsAPIFilterConfigToJSON(value['filters']),
140
148
  'metricFilter': value['metricFilter'] == null ? undefined : ((value['metricFilter'] as Array<any>).map(CovalDashboardsAPIMetricFilterToJSON)),
141
149
  };
@@ -29,7 +29,7 @@ import {
29
29
  } from './CovalDashboardsAPIWidgetConfig.js';
30
30
 
31
31
  /**
32
- *
32
+ * All fields optional (PATCH semantics). Unlike the dashboard-level config, which is replaced, config is MERGED into the stored blob one key at a time: a key you send replaces its stored value and a key you omit keeps its stored value. Three exceptions are worth knowing before you rely on that. Null-valued keys are dropped before the merge, so they do not clear anything -- and if dropping them leaves the object empty, the result is an empty object, which clears the whole blob. Sending "type": "table" validates config as a table widget, whose metricIds defaults to an empty list, so any table-widget PATCH that omits metricIds overwrites it with []; omitting "type" validates against the chart shape instead and leaves metricIds alone. Clearing a single key requires sending an empty value for it (for example "metricFilter": []), which is only possible for the list- and object-valued keys -- scalar keys such as metricId, aggregation or groupByMetadataKey have no empty value and cannot be individually cleared. To clear the whole blob, send an empty object.
33
33
  * @export
34
34
  * @interface CovalDashboardsAPIUpdateWidgetRequest
35
35
  */
@@ -150,6 +150,12 @@ export interface CovalDashboardsAPIWidgetConfig {
150
150
  * @memberof CovalDashboardsAPIWidgetConfig
151
151
  */
152
152
  groupBy?: CovalDashboardsAPIGroupByType;
153
+ /**
154
+ * Customer metadata key to group by; mutually exclusive with groupBy. Rows fall into one of three groups: the 20 most common values are separate groups, remaining values are combined as a synthetic Other group distinct from a literal customer value named Other, and rows that do not carry the key at all form their own group with a null value, which clients render as Unknown. That last group never occupies one of the 20 slots.
155
+ * @type {string}
156
+ * @memberof CovalDashboardsAPIWidgetConfig
157
+ */
158
+ groupByMetadataKey?: string;
153
159
  /**
154
160
  * Custom color assignments for series (max 200 entries)
155
161
  * @type {{ [key: string]: string; }}
@@ -288,6 +294,7 @@ export function CovalDashboardsAPIWidgetConfigFromJSONTyped(json: any, ignoreDis
288
294
  'grouped': json['grouped'] == null ? undefined : json['grouped'],
289
295
  'showAsPercentage': json['showAsPercentage'] == null ? undefined : json['showAsPercentage'],
290
296
  'groupBy': json['groupBy'] == null ? undefined : CovalDashboardsAPIGroupByTypeFromJSON(json['groupBy']),
297
+ 'groupByMetadataKey': json['groupByMetadataKey'] == null ? undefined : json['groupByMetadataKey'],
291
298
  'customColorMap': json['customColorMap'] == null ? undefined : json['customColorMap'],
292
299
  'xAxisLabel': json['xAxisLabel'] == null ? undefined : json['xAxisLabel'],
293
300
  'yAxisLabel': json['yAxisLabel'] == null ? undefined : json['yAxisLabel'],
@@ -328,6 +335,7 @@ export function CovalDashboardsAPIWidgetConfigToJSONTyped(value?: CovalDashboard
328
335
  'grouped': value['grouped'],
329
336
  'showAsPercentage': value['showAsPercentage'],
330
337
  'groupBy': CovalDashboardsAPIGroupByTypeToJSON(value['groupBy']),
338
+ 'groupByMetadataKey': value['groupByMetadataKey'],
331
339
  'customColorMap': value['customColorMap'],
332
340
  'xAxisLabel': value['xAxisLabel'],
333
341
  'yAxisLabel': value['yAxisLabel'],
@@ -20,6 +20,13 @@ import {
20
20
  CovalMetricsAPIMetricRuntimeConfigToJSON,
21
21
  CovalMetricsAPIMetricRuntimeConfigToJSONTyped,
22
22
  } from './CovalMetricsAPIMetricRuntimeConfig.js';
23
+ import type { CovalMetricsAPICreateMetricRequestExpectedBody } from './CovalMetricsAPICreateMetricRequestExpectedBody.js';
24
+ import {
25
+ CovalMetricsAPICreateMetricRequestExpectedBodyFromJSON,
26
+ CovalMetricsAPICreateMetricRequestExpectedBodyFromJSONTyped,
27
+ CovalMetricsAPICreateMetricRequestExpectedBodyToJSON,
28
+ CovalMetricsAPICreateMetricRequestExpectedBodyToJSONTyped,
29
+ } from './CovalMetricsAPICreateMetricRequestExpectedBody.js';
23
30
  import type { CovalMetricsAPITargetCondition } from './CovalMetricsAPITargetCondition.js';
24
31
  import {
25
32
  CovalMetricsAPITargetConditionFromJSON,
@@ -109,7 +116,7 @@ export interface CovalMetricsAPICreateMetricRequest {
109
116
  */
110
117
  regex_pattern?: string;
111
118
  /**
112
- * Speaker role filter. Optional for METRIC_TRANSCRIPT_REGEX.
119
+ * Speaker role filter. Aliases user and assistant are normalized on write.
113
120
  * @type {CovalMetricsAPICreateMetricRequestRoleEnum}
114
121
  * @memberof CovalMetricsAPICreateMetricRequest
115
122
  */
@@ -120,6 +127,84 @@ export interface CovalMetricsAPICreateMetricRequest {
120
127
  * @memberof CovalMetricsAPICreateMetricRequest
121
128
  */
122
129
  min_pause_duration_seconds?: number;
130
+ /**
131
+ *
132
+ * @type {number}
133
+ * @memberof CovalMetricsAPICreateMetricRequest
134
+ */
135
+ max_silence_duration_seconds?: number;
136
+ /**
137
+ *
138
+ * @type {number}
139
+ * @memberof CovalMetricsAPICreateMetricRequest
140
+ */
141
+ min_silence_gap_seconds?: number;
142
+ /**
143
+ *
144
+ * @type {number}
145
+ * @memberof CovalMetricsAPICreateMetricRequest
146
+ */
147
+ frequency_threshold?: number;
148
+ /**
149
+ *
150
+ * @type {CovalMetricsAPICreateMetricRequestDirectionEnum}
151
+ * @memberof CovalMetricsAPICreateMetricRequest
152
+ */
153
+ direction?: CovalMetricsAPICreateMetricRequestDirectionEnum;
154
+ /**
155
+ *
156
+ * @type {Array<CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum>}
157
+ * @memberof CovalMetricsAPICreateMetricRequest
158
+ */
159
+ success_sentiments?: Array<CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum>;
160
+ /**
161
+ *
162
+ * @type {number}
163
+ * @memberof CovalMetricsAPICreateMetricRequest
164
+ */
165
+ percent_above?: number;
166
+ /**
167
+ *
168
+ * @type {Array<CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum>}
169
+ * @memberof CovalMetricsAPICreateMetricRequest
170
+ */
171
+ success_end_reasons?: Array<CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum>;
172
+ /**
173
+ *
174
+ * @type {string}
175
+ * @memberof CovalMetricsAPICreateMetricRequest
176
+ */
177
+ observation_name?: string;
178
+ /**
179
+ *
180
+ * @type {CovalMetricsAPICreateMetricRequestExpectedBody}
181
+ * @memberof CovalMetricsAPICreateMetricRequest
182
+ */
183
+ expected_body?: CovalMetricsAPICreateMetricRequestExpectedBody;
184
+ /**
185
+ * Optional dot path; brackets must contain an integer index or comma-separated key=value filters.
186
+ * @type {string}
187
+ * @memberof CovalMetricsAPICreateMetricRequest
188
+ */
189
+ match_path?: string;
190
+ /**
191
+ *
192
+ * @type {number}
193
+ * @memberof CovalMetricsAPICreateMetricRequest
194
+ */
195
+ min_volume_change_for_pitch_misalignment?: number;
196
+ /**
197
+ *
198
+ * @type {number}
199
+ * @memberof CovalMetricsAPICreateMetricRequest
200
+ */
201
+ threshold?: number;
202
+ /**
203
+ *
204
+ * @type {CovalMetricsAPICreateMetricRequestOperatorEnum}
205
+ * @memberof CovalMetricsAPICreateMetricRequest
206
+ */
207
+ operator?: CovalMetricsAPICreateMetricRequestOperatorEnum;
123
208
  /**
124
209
  * SQL query run against the simulation's data. Required for METRIC_SQL_FLOAT.
125
210
  * The query returns one row per timestamp with a numeric `value` and a
@@ -213,10 +298,61 @@ export interface CovalMetricsAPICreateMetricRequest {
213
298
  */
214
299
  export const CovalMetricsAPICreateMetricRequestRoleEnum = {
215
300
  Agent: 'agent',
216
- User: 'user'
301
+ Persona: 'persona',
302
+ User: 'user',
303
+ Assistant: 'assistant'
217
304
  } as const;
218
305
  export type CovalMetricsAPICreateMetricRequestRoleEnum = typeof CovalMetricsAPICreateMetricRequestRoleEnum[keyof typeof CovalMetricsAPICreateMetricRequestRoleEnum];
219
306
 
307
+ /**
308
+ * @export
309
+ */
310
+ export const CovalMetricsAPICreateMetricRequestDirectionEnum = {
311
+ Above: 'above',
312
+ Below: 'below'
313
+ } as const;
314
+ export type CovalMetricsAPICreateMetricRequestDirectionEnum = typeof CovalMetricsAPICreateMetricRequestDirectionEnum[keyof typeof CovalMetricsAPICreateMetricRequestDirectionEnum];
315
+
316
+ /**
317
+ * @export
318
+ */
319
+ export const CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum = {
320
+ Neutral: 'Neutral',
321
+ Happy: 'Happy',
322
+ Angry: 'Angry',
323
+ Sad: 'Sad'
324
+ } as const;
325
+ export type CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum = typeof CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum[keyof typeof CovalMetricsAPICreateMetricRequestSuccessSentimentsEnum];
326
+
327
+ /**
328
+ * @export
329
+ */
330
+ export const CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum = {
331
+ Unknown: 'UNKNOWN',
332
+ IdleTimeout: 'IDLE_TIMEOUT',
333
+ PersonaDisconnected: 'PERSONA_DISCONNECTED',
334
+ AgentDisconnected: 'AGENT_DISCONNECTED',
335
+ PipelineError: 'PIPELINE_ERROR',
336
+ RepetitionLoop: 'REPETITION_LOOP',
337
+ AudioUploadPlaybackCompleted: 'AUDIO_UPLOAD_PLAYBACK_COMPLETED',
338
+ ScriptCompleted: 'SCRIPT_COMPLETED',
339
+ ScriptDiverged: 'SCRIPT_DIVERGED'
340
+ } as const;
341
+ export type CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum = typeof CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum[keyof typeof CovalMetricsAPICreateMetricRequestSuccessEndReasonsEnum];
342
+
343
+ /**
344
+ * @export
345
+ */
346
+ export const CovalMetricsAPICreateMetricRequestOperatorEnum = {
347
+ LessThan: '<',
348
+ LessThanOrEqualTo: '<=',
349
+ GreaterThan: '>',
350
+ GreaterThanOrEqualTo: '>=',
351
+ DoubleEqual: '==',
352
+ NotEqual: '!='
353
+ } as const;
354
+ export type CovalMetricsAPICreateMetricRequestOperatorEnum = typeof CovalMetricsAPICreateMetricRequestOperatorEnum[keyof typeof CovalMetricsAPICreateMetricRequestOperatorEnum];
355
+
220
356
  /**
221
357
  * @export
222
358
  */
@@ -270,6 +406,19 @@ export function CovalMetricsAPICreateMetricRequestFromJSONTyped(json: any, ignor
270
406
  'regex_pattern': json['regex_pattern'] == null ? undefined : json['regex_pattern'],
271
407
  'role': json['role'] == null ? undefined : json['role'],
272
408
  'min_pause_duration_seconds': json['min_pause_duration_seconds'] == null ? undefined : json['min_pause_duration_seconds'],
409
+ 'max_silence_duration_seconds': json['max_silence_duration_seconds'] == null ? undefined : json['max_silence_duration_seconds'],
410
+ 'min_silence_gap_seconds': json['min_silence_gap_seconds'] == null ? undefined : json['min_silence_gap_seconds'],
411
+ 'frequency_threshold': json['frequency_threshold'] == null ? undefined : json['frequency_threshold'],
412
+ 'direction': json['direction'] == null ? undefined : json['direction'],
413
+ 'success_sentiments': json['success_sentiments'] == null ? undefined : json['success_sentiments'],
414
+ 'percent_above': json['percent_above'] == null ? undefined : json['percent_above'],
415
+ 'success_end_reasons': json['success_end_reasons'] == null ? undefined : json['success_end_reasons'],
416
+ 'observation_name': json['observation_name'] == null ? undefined : json['observation_name'],
417
+ 'expected_body': json['expected_body'] == null ? undefined : CovalMetricsAPICreateMetricRequestExpectedBodyFromJSON(json['expected_body']),
418
+ 'match_path': json['match_path'] == null ? undefined : json['match_path'],
419
+ 'min_volume_change_for_pitch_misalignment': json['min_volume_change_for_pitch_misalignment'] == null ? undefined : json['min_volume_change_for_pitch_misalignment'],
420
+ 'threshold': json['threshold'] == null ? undefined : json['threshold'],
421
+ 'operator': json['operator'] == null ? undefined : json['operator'],
273
422
  'sql_query': json['sql_query'] == null ? undefined : json['sql_query'],
274
423
  'criteria_source': json['criteria_source'] == null ? undefined : json['criteria_source'],
275
424
  'criteria_path': json['criteria_path'] == null ? undefined : json['criteria_path'],
@@ -306,6 +455,19 @@ export function CovalMetricsAPICreateMetricRequestToJSONTyped(value?: CovalMetri
306
455
  'regex_pattern': value['regex_pattern'],
307
456
  'role': value['role'],
308
457
  'min_pause_duration_seconds': value['min_pause_duration_seconds'],
458
+ 'max_silence_duration_seconds': value['max_silence_duration_seconds'],
459
+ 'min_silence_gap_seconds': value['min_silence_gap_seconds'],
460
+ 'frequency_threshold': value['frequency_threshold'],
461
+ 'direction': value['direction'],
462
+ 'success_sentiments': value['success_sentiments'],
463
+ 'percent_above': value['percent_above'],
464
+ 'success_end_reasons': value['success_end_reasons'],
465
+ 'observation_name': value['observation_name'],
466
+ 'expected_body': CovalMetricsAPICreateMetricRequestExpectedBodyToJSON(value['expected_body']),
467
+ 'match_path': value['match_path'],
468
+ 'min_volume_change_for_pitch_misalignment': value['min_volume_change_for_pitch_misalignment'],
469
+ 'threshold': value['threshold'],
470
+ 'operator': value['operator'],
309
471
  'sql_query': value['sql_query'],
310
472
  'criteria_source': value['criteria_source'],
311
473
  'criteria_path': value['criteria_path'],
@@ -0,0 +1,49 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Coval Agents API
5
+ * Manage configurations for simulations and evaluations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@coval.dev
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ /**
16
+ * @type CovalMetricsAPICreateMetricRequestExpectedBody
17
+ *
18
+ * @export
19
+ */
20
+ export type CovalMetricsAPICreateMetricRequestExpectedBody = string | { [key: string]: any; };
21
+
22
+ export function CovalMetricsAPICreateMetricRequestExpectedBodyFromJSON(json: any): CovalMetricsAPICreateMetricRequestExpectedBody {
23
+ return CovalMetricsAPICreateMetricRequestExpectedBodyFromJSONTyped(json, false);
24
+ }
25
+
26
+ export function CovalMetricsAPICreateMetricRequestExpectedBodyFromJSONTyped(json: any, ignoreDiscriminator: boolean): CovalMetricsAPICreateMetricRequestExpectedBody {
27
+ if (json == null) {
28
+ return json;
29
+ }
30
+ if (typeof json === 'string') {
31
+ return json;
32
+ }
33
+ return {} as any;
34
+ }
35
+
36
+ export function CovalMetricsAPICreateMetricRequestExpectedBodyToJSON(json: any): any {
37
+ return CovalMetricsAPICreateMetricRequestExpectedBodyToJSONTyped(json, false);
38
+ }
39
+
40
+ export function CovalMetricsAPICreateMetricRequestExpectedBodyToJSONTyped(value?: CovalMetricsAPICreateMetricRequestExpectedBody | null, ignoreDiscriminator: boolean = false): any {
41
+ if (value == null) {
42
+ return value;
43
+ }
44
+ if (typeof value === 'string') {
45
+ return value;
46
+ }
47
+ return {};
48
+ }
49
+
@@ -41,6 +41,13 @@ import {
41
41
  CovalMetricsAPIMetadataFieldTypeToJSON,
42
42
  CovalMetricsAPIMetadataFieldTypeToJSONTyped,
43
43
  } from './CovalMetricsAPIMetadataFieldType.js';
44
+ import type { CovalMetricsAPIMetricResourceExpectedBody } from './CovalMetricsAPIMetricResourceExpectedBody.js';
45
+ import {
46
+ CovalMetricsAPIMetricResourceExpectedBodyFromJSON,
47
+ CovalMetricsAPIMetricResourceExpectedBodyFromJSONTyped,
48
+ CovalMetricsAPIMetricResourceExpectedBodyToJSON,
49
+ CovalMetricsAPIMetricResourceExpectedBodyToJSONTyped,
50
+ } from './CovalMetricsAPIMetricResourceExpectedBody.js';
44
51
  import type { CovalMetricsAPIMetricType } from './CovalMetricsAPIMetricType.js';
45
52
  import {
46
53
  CovalMetricsAPIMetricTypeFromJSON,
@@ -139,6 +146,84 @@ export interface CovalMetricsAPIMetricResource {
139
146
  * @memberof CovalMetricsAPIMetricResource
140
147
  */
141
148
  min_pause_duration_seconds?: number | null;
149
+ /**
150
+ *
151
+ * @type {number}
152
+ * @memberof CovalMetricsAPIMetricResource
153
+ */
154
+ max_silence_duration_seconds?: number | null;
155
+ /**
156
+ *
157
+ * @type {number}
158
+ * @memberof CovalMetricsAPIMetricResource
159
+ */
160
+ min_silence_gap_seconds?: number | null;
161
+ /**
162
+ *
163
+ * @type {number}
164
+ * @memberof CovalMetricsAPIMetricResource
165
+ */
166
+ frequency_threshold?: number | null;
167
+ /**
168
+ *
169
+ * @type {CovalMetricsAPIMetricResourceDirectionEnum}
170
+ * @memberof CovalMetricsAPIMetricResource
171
+ */
172
+ direction?: CovalMetricsAPIMetricResourceDirectionEnum | null;
173
+ /**
174
+ *
175
+ * @type {Array<CovalMetricsAPIMetricResourceSuccessSentimentsEnum>}
176
+ * @memberof CovalMetricsAPIMetricResource
177
+ */
178
+ success_sentiments?: Array<CovalMetricsAPIMetricResourceSuccessSentimentsEnum> | null;
179
+ /**
180
+ *
181
+ * @type {number}
182
+ * @memberof CovalMetricsAPIMetricResource
183
+ */
184
+ percent_above?: number | null;
185
+ /**
186
+ *
187
+ * @type {Array<CovalMetricsAPIMetricResourceSuccessEndReasonsEnum>}
188
+ * @memberof CovalMetricsAPIMetricResource
189
+ */
190
+ success_end_reasons?: Array<CovalMetricsAPIMetricResourceSuccessEndReasonsEnum> | null;
191
+ /**
192
+ *
193
+ * @type {string}
194
+ * @memberof CovalMetricsAPIMetricResource
195
+ */
196
+ observation_name?: string | null;
197
+ /**
198
+ *
199
+ * @type {CovalMetricsAPIMetricResourceExpectedBody}
200
+ * @memberof CovalMetricsAPIMetricResource
201
+ */
202
+ expected_body?: CovalMetricsAPIMetricResourceExpectedBody | null;
203
+ /**
204
+ * Optional dot path; brackets contain an integer index or comma-separated key=value filters.
205
+ * @type {string}
206
+ * @memberof CovalMetricsAPIMetricResource
207
+ */
208
+ match_path?: string | null;
209
+ /**
210
+ *
211
+ * @type {number}
212
+ * @memberof CovalMetricsAPIMetricResource
213
+ */
214
+ min_volume_change_for_pitch_misalignment?: number | null;
215
+ /**
216
+ *
217
+ * @type {number}
218
+ * @memberof CovalMetricsAPIMetricResource
219
+ */
220
+ threshold?: number | null;
221
+ /**
222
+ *
223
+ * @type {CovalMetricsAPIMetricResourceOperatorEnum}
224
+ * @memberof CovalMetricsAPIMetricResource
225
+ */
226
+ operator?: CovalMetricsAPIMetricResourceOperatorEnum | null;
142
227
  /**
143
228
  * SQL query that defines the metric (for METRIC_SQL_FLOAT)
144
229
  * @type {string}
@@ -239,10 +324,59 @@ export interface CovalMetricsAPIMetricResource {
239
324
  */
240
325
  export const CovalMetricsAPIMetricResourceRoleEnum = {
241
326
  Agent: 'agent',
242
- User: 'user'
327
+ Persona: 'persona'
243
328
  } as const;
244
329
  export type CovalMetricsAPIMetricResourceRoleEnum = typeof CovalMetricsAPIMetricResourceRoleEnum[keyof typeof CovalMetricsAPIMetricResourceRoleEnum];
245
330
 
331
+ /**
332
+ * @export
333
+ */
334
+ export const CovalMetricsAPIMetricResourceDirectionEnum = {
335
+ Above: 'above',
336
+ Below: 'below'
337
+ } as const;
338
+ export type CovalMetricsAPIMetricResourceDirectionEnum = typeof CovalMetricsAPIMetricResourceDirectionEnum[keyof typeof CovalMetricsAPIMetricResourceDirectionEnum];
339
+
340
+ /**
341
+ * @export
342
+ */
343
+ export const CovalMetricsAPIMetricResourceSuccessSentimentsEnum = {
344
+ Neutral: 'Neutral',
345
+ Happy: 'Happy',
346
+ Angry: 'Angry',
347
+ Sad: 'Sad'
348
+ } as const;
349
+ export type CovalMetricsAPIMetricResourceSuccessSentimentsEnum = typeof CovalMetricsAPIMetricResourceSuccessSentimentsEnum[keyof typeof CovalMetricsAPIMetricResourceSuccessSentimentsEnum];
350
+
351
+ /**
352
+ * @export
353
+ */
354
+ export const CovalMetricsAPIMetricResourceSuccessEndReasonsEnum = {
355
+ Unknown: 'UNKNOWN',
356
+ IdleTimeout: 'IDLE_TIMEOUT',
357
+ PersonaDisconnected: 'PERSONA_DISCONNECTED',
358
+ AgentDisconnected: 'AGENT_DISCONNECTED',
359
+ PipelineError: 'PIPELINE_ERROR',
360
+ RepetitionLoop: 'REPETITION_LOOP',
361
+ AudioUploadPlaybackCompleted: 'AUDIO_UPLOAD_PLAYBACK_COMPLETED',
362
+ ScriptCompleted: 'SCRIPT_COMPLETED',
363
+ ScriptDiverged: 'SCRIPT_DIVERGED'
364
+ } as const;
365
+ export type CovalMetricsAPIMetricResourceSuccessEndReasonsEnum = typeof CovalMetricsAPIMetricResourceSuccessEndReasonsEnum[keyof typeof CovalMetricsAPIMetricResourceSuccessEndReasonsEnum];
366
+
367
+ /**
368
+ * @export
369
+ */
370
+ export const CovalMetricsAPIMetricResourceOperatorEnum = {
371
+ LessThan: '<',
372
+ LessThanOrEqualTo: '<=',
373
+ GreaterThan: '>',
374
+ GreaterThanOrEqualTo: '>=',
375
+ DoubleEqual: '==',
376
+ NotEqual: '!='
377
+ } as const;
378
+ export type CovalMetricsAPIMetricResourceOperatorEnum = typeof CovalMetricsAPIMetricResourceOperatorEnum[keyof typeof CovalMetricsAPIMetricResourceOperatorEnum];
379
+
246
380
  /**
247
381
  * @export
248
382
  */
@@ -295,6 +429,19 @@ export function CovalMetricsAPIMetricResourceFromJSONTyped(json: any, ignoreDisc
295
429
  'regex_pattern': json['regex_pattern'] == null ? undefined : json['regex_pattern'],
296
430
  'role': json['role'] == null ? undefined : json['role'],
297
431
  'min_pause_duration_seconds': json['min_pause_duration_seconds'] == null ? undefined : json['min_pause_duration_seconds'],
432
+ 'max_silence_duration_seconds': json['max_silence_duration_seconds'] == null ? undefined : json['max_silence_duration_seconds'],
433
+ 'min_silence_gap_seconds': json['min_silence_gap_seconds'] == null ? undefined : json['min_silence_gap_seconds'],
434
+ 'frequency_threshold': json['frequency_threshold'] == null ? undefined : json['frequency_threshold'],
435
+ 'direction': json['direction'] == null ? undefined : json['direction'],
436
+ 'success_sentiments': json['success_sentiments'] == null ? undefined : json['success_sentiments'],
437
+ 'percent_above': json['percent_above'] == null ? undefined : json['percent_above'],
438
+ 'success_end_reasons': json['success_end_reasons'] == null ? undefined : json['success_end_reasons'],
439
+ 'observation_name': json['observation_name'] == null ? undefined : json['observation_name'],
440
+ 'expected_body': json['expected_body'] == null ? undefined : CovalMetricsAPIMetricResourceExpectedBodyFromJSON(json['expected_body']),
441
+ 'match_path': json['match_path'] == null ? undefined : json['match_path'],
442
+ 'min_volume_change_for_pitch_misalignment': json['min_volume_change_for_pitch_misalignment'] == null ? undefined : json['min_volume_change_for_pitch_misalignment'],
443
+ 'threshold': json['threshold'] == null ? undefined : json['threshold'],
444
+ 'operator': json['operator'] == null ? undefined : json['operator'],
298
445
  'sql_query': json['sql_query'] == null ? undefined : json['sql_query'],
299
446
  'criteria_source': json['criteria_source'] == null ? undefined : json['criteria_source'],
300
447
  'criteria_path': json['criteria_path'] == null ? undefined : json['criteria_path'],
@@ -337,6 +484,19 @@ export function CovalMetricsAPIMetricResourceToJSONTyped(value?: CovalMetricsAPI
337
484
  'regex_pattern': value['regex_pattern'],
338
485
  'role': value['role'],
339
486
  'min_pause_duration_seconds': value['min_pause_duration_seconds'],
487
+ 'max_silence_duration_seconds': value['max_silence_duration_seconds'],
488
+ 'min_silence_gap_seconds': value['min_silence_gap_seconds'],
489
+ 'frequency_threshold': value['frequency_threshold'],
490
+ 'direction': value['direction'],
491
+ 'success_sentiments': value['success_sentiments'],
492
+ 'percent_above': value['percent_above'],
493
+ 'success_end_reasons': value['success_end_reasons'],
494
+ 'observation_name': value['observation_name'],
495
+ 'expected_body': CovalMetricsAPIMetricResourceExpectedBodyToJSON(value['expected_body']),
496
+ 'match_path': value['match_path'],
497
+ 'min_volume_change_for_pitch_misalignment': value['min_volume_change_for_pitch_misalignment'],
498
+ 'threshold': value['threshold'],
499
+ 'operator': value['operator'],
340
500
  'sql_query': value['sql_query'],
341
501
  'criteria_source': value['criteria_source'],
342
502
  'criteria_path': value['criteria_path'],