@smartbear/mcp 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/bugsnag/client/api/Error.js +1 -1
- package/dist/bugsnag/client/api/Project.js +152 -0
- package/dist/bugsnag/client/api/api.js +130 -3
- package/dist/bugsnag/client/api/base.js +19 -0
- package/dist/bugsnag/client/api/index.js +1 -1
- package/dist/bugsnag/client.js +514 -11
- package/dist/bugsnag/input-schemas.js +14 -6
- package/dist/common/transport-stdio.js +5 -0
- package/dist/qmetry/client/auto-resolve.js +10 -0
- package/dist/qmetry/client/automation.js +171 -0
- package/dist/qmetry/client/handlers.js +9 -2
- package/dist/qmetry/client/project.js +87 -1
- package/dist/qmetry/client/testsuite.js +37 -1
- package/dist/qmetry/client/tools/automation-tools.js +290 -0
- package/dist/qmetry/client/tools/index.js +3 -0
- package/dist/qmetry/client/tools/issue-tools.js +1 -1
- package/dist/qmetry/client/tools/project-tools.js +311 -1
- package/dist/qmetry/client/tools/requirement-tools.js +1 -1
- package/dist/qmetry/client/tools/testcase-tools.js +311 -39
- package/dist/qmetry/client/tools/testsuite-tools.js +337 -23
- package/dist/qmetry/config/constants.js +6 -0
- package/dist/qmetry/config/rest-endpoints.js +8 -0
- package/dist/qmetry/types/automation.js +8 -0
- package/dist/qmetry/types/common.js +299 -4
- package/dist/qmetry/types/issues.js +5 -0
- package/dist/qmetry/types/project.js +13 -0
- package/dist/qmetry/types/requirements.js +5 -0
- package/dist/qmetry/types/testcase.js +5 -0
- package/dist/qmetry/types/testsuite.js +9 -0
- package/dist/swagger/client/api.js +93 -36
- package/dist/swagger/client/configuration.js +3 -1
- package/dist/swagger/client/portal-types.js +7 -6
- package/dist/swagger/client/registry-types.js +26 -0
- package/dist/swagger/client/tools.js +15 -16
- package/dist/swagger/client.js +6 -6
- package/dist/tests/unit/bugsnag/utils/factories.js +86 -0
- package/dist/zephyr/client.js +4 -0
- package/dist/zephyr/tool/environment/get-environments.js +68 -0
- package/dist/zephyr/tool/test-execution/get-test-executions.js +45 -0
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@ See individual guides for suggested prompts and supported tools and resources:
|
|
|
32
32
|
- [Test Hub](https://developer.smartbear.com/smartbear-mcp/docs/test-hub-integration) - Test management and execution capabilities
|
|
33
33
|
- **Swagger**
|
|
34
34
|
- [Portal](https://developer.smartbear.com/smartbear-mcp/docs/swagger-portal-integration) - Portal and product management capabilities
|
|
35
|
-
- [Studio](https://developer.smartbear.com/smartbear-mcp/docs/swagger-studio-integration) - API and Domain management capabilities
|
|
35
|
+
- [Studio](https://developer.smartbear.com/smartbear-mcp/docs/swagger-studio-integration) - API and Domain management capabilities, including AI-powered API generation from prompts and automatic standardization
|
|
36
36
|
- [Contract Testing (PactFlow)](https://developer.smartbear.com/pactflow/default/getting-started) - Contract testing capabilities
|
|
37
37
|
- [QMetry](https://developer.smartbear.com/smartbear-mcp/docs/qmetry-integration) - QMetry Test Management capabilities
|
|
38
38
|
- [Zephyr](https://developer.smartbear.com/smartbear-mcp/docs/zephyr-integration) - Zephyr Test Management capabilities
|
|
@@ -42,7 +42,7 @@ export class ErrorAPI extends BaseAPI {
|
|
|
42
42
|
sort = undefined;
|
|
43
43
|
base = undefined;
|
|
44
44
|
}
|
|
45
|
-
const localVarFetchArgs = ErrorsApiFetchParamCreator(this.configuration).listProjectErrors(projectId, base ?? undefined, sort, direction, perPage, undefined, options);
|
|
45
|
+
const localVarFetchArgs = ErrorsApiFetchParamCreator(this.configuration).listProjectErrors(projectId, base ?? undefined, sort, direction, perPage, undefined, undefined, options);
|
|
46
46
|
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, false);
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { toUrlSearchParams } from "../filters.js";
|
|
1
2
|
import { ProjectsApiFetchParamCreator } from "./api.js";
|
|
2
3
|
import { BaseAPI, getQueryParams } from "./base.js";
|
|
3
4
|
export class ProjectAPI extends BaseAPI {
|
|
@@ -104,4 +105,155 @@ export class ProjectAPI extends BaseAPI {
|
|
|
104
105
|
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).getReleaseGroup(releaseId);
|
|
105
106
|
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, true, ProjectAPI.buildFields);
|
|
106
107
|
}
|
|
108
|
+
// ============================================================================
|
|
109
|
+
// Performance API Methods
|
|
110
|
+
// ============================================================================
|
|
111
|
+
/**
|
|
112
|
+
* List span groups for a project with optional filtering and pagination.
|
|
113
|
+
* GET /projects/{project_id}/span_groups
|
|
114
|
+
* @param projectId The ID of the project to which the Span Groups belong.
|
|
115
|
+
* @param sort The field to sort the span groups by.
|
|
116
|
+
* @param direction The direction to sort the span groups by.
|
|
117
|
+
* @param perPage The number of results per page.
|
|
118
|
+
* @param offset The offset for the next page of results.
|
|
119
|
+
* @param filters The current filters that are being applied.
|
|
120
|
+
* @param starredOnly Whether to only return Span Groups the requesting user has starred.
|
|
121
|
+
* @param nextUrl Optional URL for next page (overrides other pagination params).
|
|
122
|
+
* @returns A promise that resolves to an array of span groups.
|
|
123
|
+
*/
|
|
124
|
+
async listProjectSpanGroups(projectId, sort, direction, perPage, offset, filters, starredOnly, nextUrl) {
|
|
125
|
+
const options = getQueryParams(nextUrl);
|
|
126
|
+
if (nextUrl) {
|
|
127
|
+
options.query.per_page = perPage ? perPage.toString() : undefined;
|
|
128
|
+
}
|
|
129
|
+
// Serialize filters if provided
|
|
130
|
+
if (filters) {
|
|
131
|
+
Object.assign(options.query, toUrlSearchParams(filters));
|
|
132
|
+
}
|
|
133
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).listProjectSpanGroups(projectId, sort, direction, perPage, offset, undefined, // Don't pass filters to API - already serialized in options
|
|
134
|
+
starredOnly, options);
|
|
135
|
+
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, false);
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Get detailed information about a specific span group.
|
|
139
|
+
* GET /projects/{project_id}/span_groups/{id}
|
|
140
|
+
* @param projectId The ID of the project to which the Span Group belongs.
|
|
141
|
+
* @param id The ID of the Span Group.
|
|
142
|
+
* @param filters The current filters that are being applied.
|
|
143
|
+
* @returns A promise that resolves to the span group.
|
|
144
|
+
*/
|
|
145
|
+
async getProjectSpanGroup(projectId, id, filters) {
|
|
146
|
+
const options = {};
|
|
147
|
+
if (filters) {
|
|
148
|
+
options.query = toUrlSearchParams(filters);
|
|
149
|
+
}
|
|
150
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).getProjectSpanGroup(projectId, id, undefined, options);
|
|
151
|
+
return await this.requestObject(localVarFetchArgs.url, localVarFetchArgs.options);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Get time-series performance metrics for a span group.
|
|
155
|
+
* GET /projects/{project_id}/span_groups/{id}/timeline
|
|
156
|
+
* @param projectId The ID of the project to which the Span Group belongs.
|
|
157
|
+
* @param id The ID of the Span Group.
|
|
158
|
+
* @param filters The current filters that are being applied.
|
|
159
|
+
* @returns A promise that resolves to the timeline data.
|
|
160
|
+
*/
|
|
161
|
+
async getProjectSpanGroupTimeline(projectId, id, filters) {
|
|
162
|
+
const options = {};
|
|
163
|
+
if (filters) {
|
|
164
|
+
options.query = toUrlSearchParams(filters);
|
|
165
|
+
}
|
|
166
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).getProjectSpanGroupTimeline(projectId, id, undefined, options);
|
|
167
|
+
return await this.requestObject(localVarFetchArgs.url, localVarFetchArgs.options);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Get distribution histogram of span durations for a span group.
|
|
171
|
+
* GET /projects/{project_id}/span_groups/{id}/distribution
|
|
172
|
+
* @param projectId The ID of the project to which the Span Group belongs.
|
|
173
|
+
* @param id The ID of the Span Group.
|
|
174
|
+
* @param filters The current filters that are being applied.
|
|
175
|
+
* @returns A promise that resolves to the distribution data.
|
|
176
|
+
*/
|
|
177
|
+
async getProjectSpanGroupDistribution(projectId, id, filters) {
|
|
178
|
+
const options = {};
|
|
179
|
+
if (filters) {
|
|
180
|
+
options.query = toUrlSearchParams(filters);
|
|
181
|
+
}
|
|
182
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).getProjectSpanGroupDistribution(projectId, id, undefined, options);
|
|
183
|
+
return await this.requestObject(localVarFetchArgs.url, localVarFetchArgs.options);
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* List individual spans for a specific span group with filtering and sorting.
|
|
187
|
+
* GET /projects/{project_id}/span_groups/{id}/spans
|
|
188
|
+
* @param projectId The ID of the project to which the spans belong.
|
|
189
|
+
* @param id The ID of the Span Group.
|
|
190
|
+
* @param filters The current filters that are being applied.
|
|
191
|
+
* @param sort The field to sort the spans by.
|
|
192
|
+
* @param direction The direction to sort the spans by.
|
|
193
|
+
* @param perPage The number of results per page.
|
|
194
|
+
* @param nextUrl Optional URL for next page (overrides other pagination params).
|
|
195
|
+
* @returns A promise that resolves to an array of spans.
|
|
196
|
+
*/
|
|
197
|
+
async listSpansBySpanGroupId(projectId, id, filters, sort, direction, perPage, nextUrl) {
|
|
198
|
+
const options = getQueryParams(nextUrl);
|
|
199
|
+
if (nextUrl) {
|
|
200
|
+
options.query.per_page = perPage ? perPage.toString() : undefined;
|
|
201
|
+
}
|
|
202
|
+
if (filters) {
|
|
203
|
+
Object.assign(options.query, toUrlSearchParams(filters));
|
|
204
|
+
}
|
|
205
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).listSpansBySpanGroupId(projectId, id, undefined, sort, direction, perPage, options);
|
|
206
|
+
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, false);
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* List all spans that belong to a specific trace.
|
|
210
|
+
* GET /projects/{project_id}/traces/{trace_id}/spans
|
|
211
|
+
* @param projectId The ID of the project to which the spans belong.
|
|
212
|
+
* @param traceId The ID of the Trace to which the spans belong.
|
|
213
|
+
* @param from Beginning of window to return spans from (ISO 8601 timestamp).
|
|
214
|
+
* @param to End of window to return spans from (ISO 8601 timestamp).
|
|
215
|
+
* @param targetSpanId The ID of a Span within the Trace to focus on.
|
|
216
|
+
* @param perPage The number of results to return per page.
|
|
217
|
+
* @param nextUrl Optional URL for next page (overrides other pagination params).
|
|
218
|
+
* @returns A promise that resolves to an array of spans.
|
|
219
|
+
*/
|
|
220
|
+
async listSpansByTraceId(projectId, traceId, from, to, targetSpanId, perPage, nextUrl) {
|
|
221
|
+
const options = getQueryParams(nextUrl);
|
|
222
|
+
if (nextUrl) {
|
|
223
|
+
options.query.per_page = perPage ? perPage.toString() : undefined;
|
|
224
|
+
}
|
|
225
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).listSpansByTraceId(projectId, traceId, from, to, targetSpanId, perPage, options);
|
|
226
|
+
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, false);
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* List all trace fields available for filtering spans on a project.
|
|
230
|
+
* GET /projects/{project_id}/trace_fields
|
|
231
|
+
* @param projectId The ID of the project to which the Trace Field belongs.
|
|
232
|
+
* @returns A promise that resolves to an array of trace field definitions.
|
|
233
|
+
*/
|
|
234
|
+
async listProjectTraceFields(projectId) {
|
|
235
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).listProjectTraceFields(projectId);
|
|
236
|
+
return await this.requestArray(localVarFetchArgs.url, localVarFetchArgs.options, true);
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Get the network endpoint grouping rules for a project.
|
|
240
|
+
* GET /projects/{project_id}/network_endpoint_grouping
|
|
241
|
+
* @param projectId The ID of the project to retrieve the endpoints for.
|
|
242
|
+
* @returns A promise that resolves to the network grouping ruleset.
|
|
243
|
+
*/
|
|
244
|
+
async getProjectNetworkGroupingRuleset(projectId) {
|
|
245
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).getProjectNetworkGroupingRuleset(projectId);
|
|
246
|
+
return await this.requestObject(localVarFetchArgs.url, localVarFetchArgs.options);
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Update the network endpoint grouping rules for a project.
|
|
250
|
+
* PUT /projects/{project_id}/network_endpoint_grouping
|
|
251
|
+
* @param projectId The ID of the project to update the endpoints for.
|
|
252
|
+
* @param endpoints Array of URL patterns by which network spans are grouped.
|
|
253
|
+
* @returns A promise that resolves to the updated network grouping ruleset.
|
|
254
|
+
*/
|
|
255
|
+
async updateProjectNetworkGroupingRuleset(projectId, endpoints) {
|
|
256
|
+
const localVarFetchArgs = ProjectsApiFetchParamCreator(this.configuration).updateProjectNetworkGroupingRuleset(projectId, { endpoints });
|
|
257
|
+
return await this.requestObject(localVarFetchArgs.url, localVarFetchArgs.options);
|
|
258
|
+
}
|
|
107
259
|
}
|
|
@@ -298,12 +298,38 @@ var PerformanceFilterValue;
|
|
|
298
298
|
MatchTypeEnum[MatchTypeEnum["Empty"] = "empty"] = "Empty";
|
|
299
299
|
})(MatchTypeEnum = PerformanceFilterValue.MatchTypeEnum || (PerformanceFilterValue.MatchTypeEnum = {}));
|
|
300
300
|
})(PerformanceFilterValue || (PerformanceFilterValue = {}));
|
|
301
|
+
/**
|
|
302
|
+
* @export
|
|
303
|
+
* @namespace PerformanceTargetConfiguration
|
|
304
|
+
*/
|
|
305
|
+
var PerformanceTargetConfiguration;
|
|
306
|
+
(function (PerformanceTargetConfiguration) {
|
|
307
|
+
/**
|
|
308
|
+
* @export
|
|
309
|
+
* @enum {string}
|
|
310
|
+
*/
|
|
311
|
+
let StateEnum;
|
|
312
|
+
(function (StateEnum) {
|
|
313
|
+
StateEnum[StateEnum["Enabled"] = "enabled"] = "Enabled";
|
|
314
|
+
StateEnum[StateEnum["Disabled"] = "disabled"] = "Disabled";
|
|
315
|
+
})(StateEnum = PerformanceTargetConfiguration.StateEnum || (PerformanceTargetConfiguration.StateEnum = {}));
|
|
316
|
+
})(PerformanceTargetConfiguration || (PerformanceTargetConfiguration = {}));
|
|
317
|
+
/**
|
|
318
|
+
*
|
|
319
|
+
* @export
|
|
320
|
+
* @enum {string}
|
|
321
|
+
*/
|
|
322
|
+
var PerformanceTargetType;
|
|
323
|
+
(function (PerformanceTargetType) {
|
|
324
|
+
PerformanceTargetType[PerformanceTargetType["Category"] = "category"] = "Category";
|
|
325
|
+
PerformanceTargetType[PerformanceTargetType["SpanGroup"] = "span_group"] = "SpanGroup";
|
|
326
|
+
})(PerformanceTargetType || (PerformanceTargetType = {}));
|
|
301
327
|
/**
|
|
302
328
|
* used for Projects that use a framework other than those listed above
|
|
303
329
|
* @export
|
|
304
330
|
* @enum {string}
|
|
305
331
|
*/
|
|
306
|
-
var ProjectType;
|
|
332
|
+
export var ProjectType;
|
|
307
333
|
(function (ProjectType) {
|
|
308
334
|
ProjectType[ProjectType["Android"] = "android"] = "Android";
|
|
309
335
|
ProjectType[ProjectType["Angular"] = "angular"] = "Angular";
|
|
@@ -333,6 +359,7 @@ var ProjectType;
|
|
|
333
359
|
ProjectType[ProjectType["Java"] = "java"] = "Java";
|
|
334
360
|
ProjectType[ProjectType["JavaDesktop"] = "java_desktop"] = "JavaDesktop";
|
|
335
361
|
ProjectType[ProjectType["Js"] = "js"] = "Js";
|
|
362
|
+
ProjectType[ProjectType["Vega"] = "vega"] = "Vega";
|
|
336
363
|
ProjectType[ProjectType["Koa"] = "koa"] = "Koa";
|
|
337
364
|
ProjectType[ProjectType["Laravel"] = "laravel"] = "Laravel";
|
|
338
365
|
ProjectType[ProjectType["Lumen"] = "lumen"] = "Lumen";
|
|
@@ -410,6 +437,102 @@ var SeverityOptions;
|
|
|
410
437
|
SeverityOptions[SeverityOptions["Warning"] = "warning"] = "Warning";
|
|
411
438
|
SeverityOptions[SeverityOptions["Error"] = "error"] = "Error";
|
|
412
439
|
})(SeverityOptions || (SeverityOptions = {}));
|
|
440
|
+
/**
|
|
441
|
+
* @export
|
|
442
|
+
* @namespace Span
|
|
443
|
+
*/
|
|
444
|
+
var Span;
|
|
445
|
+
(function (Span) {
|
|
446
|
+
/**
|
|
447
|
+
* @export
|
|
448
|
+
* @enum {string}
|
|
449
|
+
*/
|
|
450
|
+
let TimeAdjustmentTypeEnum;
|
|
451
|
+
(function (TimeAdjustmentTypeEnum) {
|
|
452
|
+
TimeAdjustmentTypeEnum[TimeAdjustmentTypeEnum["Adjusted"] = "adjusted"] = "Adjusted";
|
|
453
|
+
TimeAdjustmentTypeEnum[TimeAdjustmentTypeEnum["Device"] = "device"] = "Device";
|
|
454
|
+
TimeAdjustmentTypeEnum[TimeAdjustmentTypeEnum["Received"] = "received"] = "Received";
|
|
455
|
+
TimeAdjustmentTypeEnum[TimeAdjustmentTypeEnum["Unadjusted"] = "unadjusted"] = "Unadjusted";
|
|
456
|
+
})(TimeAdjustmentTypeEnum = Span.TimeAdjustmentTypeEnum || (Span.TimeAdjustmentTypeEnum = {}));
|
|
457
|
+
})(Span || (Span = {}));
|
|
458
|
+
/**
|
|
459
|
+
*
|
|
460
|
+
* @export
|
|
461
|
+
* @enum {string}
|
|
462
|
+
*/
|
|
463
|
+
var SpanGroupCategory;
|
|
464
|
+
(function (SpanGroupCategory) {
|
|
465
|
+
SpanGroupCategory[SpanGroupCategory["AppStart"] = "app_start"] = "AppStart";
|
|
466
|
+
SpanGroupCategory[SpanGroupCategory["ViewLoad"] = "view_load"] = "ViewLoad";
|
|
467
|
+
SpanGroupCategory[SpanGroupCategory["PageLoad"] = "page_load"] = "PageLoad";
|
|
468
|
+
SpanGroupCategory[SpanGroupCategory["RouteChange"] = "route_change"] = "RouteChange";
|
|
469
|
+
SpanGroupCategory[SpanGroupCategory["FullPageLoad"] = "full_page_load"] = "FullPageLoad";
|
|
470
|
+
SpanGroupCategory[SpanGroupCategory["Network"] = "network"] = "Network";
|
|
471
|
+
SpanGroupCategory[SpanGroupCategory["Custom"] = "custom"] = "Custom";
|
|
472
|
+
SpanGroupCategory[SpanGroupCategory["Navigation"] = "navigation"] = "Navigation";
|
|
473
|
+
SpanGroupCategory[SpanGroupCategory["InboundHttp"] = "inbound_http"] = "InboundHttp";
|
|
474
|
+
SpanGroupCategory[SpanGroupCategory["OutboundHttp"] = "outbound_http"] = "OutboundHttp";
|
|
475
|
+
SpanGroupCategory[SpanGroupCategory["InboundRpc"] = "inbound_rpc"] = "InboundRpc";
|
|
476
|
+
SpanGroupCategory[SpanGroupCategory["OutboundRpc"] = "outbound_rpc"] = "OutboundRpc";
|
|
477
|
+
SpanGroupCategory[SpanGroupCategory["CustomServer"] = "custom_server"] = "CustomServer";
|
|
478
|
+
SpanGroupCategory[SpanGroupCategory["FrozenFrame"] = "frozen_frame"] = "FrozenFrame";
|
|
479
|
+
})(SpanGroupCategory || (SpanGroupCategory = {}));
|
|
480
|
+
/**
|
|
481
|
+
*
|
|
482
|
+
* @export
|
|
483
|
+
* @enum {string}
|
|
484
|
+
*/
|
|
485
|
+
var SpanMetadataLevel;
|
|
486
|
+
(function (SpanMetadataLevel) {
|
|
487
|
+
SpanMetadataLevel[SpanMetadataLevel["Unspecified"] = "unspecified"] = "Unspecified";
|
|
488
|
+
SpanMetadataLevel[SpanMetadataLevel["Resource"] = "resource"] = "Resource";
|
|
489
|
+
SpanMetadataLevel[SpanMetadataLevel["Span"] = "span"] = "Span";
|
|
490
|
+
})(SpanMetadataLevel || (SpanMetadataLevel = {}));
|
|
491
|
+
/**
|
|
492
|
+
* @export
|
|
493
|
+
* @namespace TraceField
|
|
494
|
+
*/
|
|
495
|
+
export var TraceField;
|
|
496
|
+
(function (TraceField) {
|
|
497
|
+
/**
|
|
498
|
+
* @export
|
|
499
|
+
* @enum {string}
|
|
500
|
+
*/
|
|
501
|
+
let MetadataLocationEnum;
|
|
502
|
+
(function (MetadataLocationEnum) {
|
|
503
|
+
MetadataLocationEnum[MetadataLocationEnum["SpanAttribute"] = "span_attribute"] = "SpanAttribute";
|
|
504
|
+
MetadataLocationEnum[MetadataLocationEnum["ResourceAttribute"] = "resource_attribute"] = "ResourceAttribute";
|
|
505
|
+
})(MetadataLocationEnum = TraceField.MetadataLocationEnum || (TraceField.MetadataLocationEnum = {}));
|
|
506
|
+
/**
|
|
507
|
+
* @export
|
|
508
|
+
* @enum {string}
|
|
509
|
+
*/
|
|
510
|
+
let FieldTypeEnum;
|
|
511
|
+
(function (FieldTypeEnum) {
|
|
512
|
+
FieldTypeEnum[FieldTypeEnum["String"] = "string"] = "String";
|
|
513
|
+
FieldTypeEnum[FieldTypeEnum["Boolean"] = "boolean"] = "Boolean";
|
|
514
|
+
FieldTypeEnum[FieldTypeEnum["Number"] = "number"] = "Number";
|
|
515
|
+
})(FieldTypeEnum = TraceField.FieldTypeEnum || (TraceField.FieldTypeEnum = {}));
|
|
516
|
+
})(TraceField || (TraceField = {}));
|
|
517
|
+
/**
|
|
518
|
+
* @export
|
|
519
|
+
* @namespace TraceFieldOptions
|
|
520
|
+
*/
|
|
521
|
+
export var TraceFieldOptions;
|
|
522
|
+
(function (TraceFieldOptions) {
|
|
523
|
+
/**
|
|
524
|
+
* @export
|
|
525
|
+
* @enum {string}
|
|
526
|
+
*/
|
|
527
|
+
let MatchTypesEnum;
|
|
528
|
+
(function (MatchTypesEnum) {
|
|
529
|
+
MatchTypesEnum[MatchTypesEnum["Eq"] = "eq"] = "Eq";
|
|
530
|
+
MatchTypesEnum[MatchTypesEnum["Ne"] = "ne"] = "Ne";
|
|
531
|
+
MatchTypesEnum[MatchTypesEnum["Lt"] = "lt"] = "Lt";
|
|
532
|
+
MatchTypesEnum[MatchTypesEnum["Gt"] = "gt"] = "Gt";
|
|
533
|
+
MatchTypesEnum[MatchTypesEnum["Empty"] = "empty"] = "Empty";
|
|
534
|
+
})(MatchTypesEnum = TraceFieldOptions.MatchTypesEnum || (TraceFieldOptions.MatchTypesEnum = {}));
|
|
535
|
+
})(TraceFieldOptions || (TraceFieldOptions = {}));
|
|
413
536
|
/**
|
|
414
537
|
* CurrentUserApi - fetch parameter creator
|
|
415
538
|
* @export
|
|
@@ -599,7 +722,7 @@ export const CurrentUserApiFetchParamCreator = (configuration) => ({
|
|
|
599
722
|
};
|
|
600
723
|
},
|
|
601
724
|
/**
|
|
602
|
-
* Returns the saved searches for a given project sorted by name in
|
|
725
|
+
* Returns the saved searches for a given project sorted by name in lexicographic order.
|
|
603
726
|
* @summary List Saved Searches on a Project
|
|
604
727
|
* @param {string} projectId
|
|
605
728
|
* @param {string} [shared] Limit Saved Searches returned to only those with this `shared` property
|
|
@@ -1328,10 +1451,11 @@ export const ErrorsApiFetchParamCreator = (configuration) => ({
|
|
|
1328
1451
|
* @param {string} [direction]
|
|
1329
1452
|
* @param {number} [perPage]
|
|
1330
1453
|
* @param {Filters} [filters]
|
|
1454
|
+
* @param {string} [histogram] The type of histogram to include in the response. Only specific values are accepted. When provided, adds trend data to each error in the response.
|
|
1331
1455
|
* @param {*} [options] Override http request option.
|
|
1332
1456
|
* @throws {RequiredError}
|
|
1333
1457
|
*/
|
|
1334
|
-
listProjectErrors(projectId, base, sort, direction, perPage, filters, options = {}) {
|
|
1458
|
+
listProjectErrors(projectId, base, sort, direction, perPage, filters, histogram, options = {}) {
|
|
1335
1459
|
// verify required parameter 'projectId' is not null or undefined
|
|
1336
1460
|
if (projectId === null || projectId === undefined) {
|
|
1337
1461
|
throw new RequiredError("projectId", "Required parameter projectId was null or undefined when calling listProjectErrors.");
|
|
@@ -1363,6 +1487,9 @@ export const ErrorsApiFetchParamCreator = (configuration) => ({
|
|
|
1363
1487
|
if (filters !== undefined) {
|
|
1364
1488
|
localVarQueryParameter["filters"] = filters;
|
|
1365
1489
|
}
|
|
1490
|
+
if (histogram !== undefined) {
|
|
1491
|
+
localVarQueryParameter["histogram"] = histogram;
|
|
1492
|
+
}
|
|
1366
1493
|
localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
|
|
1367
1494
|
// fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
|
|
1368
1495
|
localVarUrlObj.search = null;
|
|
@@ -119,6 +119,25 @@ export class BaseAPI {
|
|
|
119
119
|
}
|
|
120
120
|
return apiResponse;
|
|
121
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* Fetches an array of resources from the API with support for pagination and field filtering.
|
|
124
|
+
*
|
|
125
|
+
* @template T - The type of objects in the response array, must extend Record<string, any>
|
|
126
|
+
* @param url - The API endpoint URL to fetch data from
|
|
127
|
+
* @param options - Optional request configuration including headers and other fetch options
|
|
128
|
+
* @param fetchAll - Whether to automatically fetch all pages of paginated results (default: false)
|
|
129
|
+
* @param fields - Optional array of field names to include in the response objects
|
|
130
|
+
* @returns A Promise resolving to an ApiResponse containing an array of type T
|
|
131
|
+
*
|
|
132
|
+
* @throws {ToolError} When the HTTP request fails with a non-ok status
|
|
133
|
+
* @throws {Error} When the response data is not an array
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```typescript
|
|
137
|
+
* const response = await client.requestArray<User>('/users', {}, true, ['id', 'name']);
|
|
138
|
+
* console.log(response.body); // Array of User objects with only id and name fields
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
122
141
|
async requestArray(url, options = {}, fetchAll = true, fields) {
|
|
123
142
|
let results = [];
|
|
124
143
|
let nextUrl = url;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Exporting all the types required outside of the api module - all imports from the tool should come from here
|
|
2
|
-
export { ErrorUpdateRequest } from "./api.js";
|
|
2
|
+
export { ErrorUpdateRequest, TraceField, } from "./api.js";
|
|
3
3
|
export { CurrentUserAPI } from "./CurrentUser.js";
|
|
4
4
|
export { Configuration } from "./configuration.js";
|
|
5
5
|
export { ErrorAPI } from "./Error.js";
|