@thinkai/tai-api-contract 2.191.0 → 2.192.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.
@@ -2363,6 +2363,46 @@ export interface paths {
2363
2363
  patch?: never;
2364
2364
  trace?: never;
2365
2365
  };
2366
+ "/workspaces/{workspaceId}/integrations/sentry": {
2367
+ parameters: {
2368
+ query?: never;
2369
+ header?: never;
2370
+ path?: never;
2371
+ cookie?: never;
2372
+ };
2373
+ /**
2374
+ * Sentry monitoring integration status
2375
+ * @description Returns whether Sentry is connected for the workspace (org slug + auth token) and the last monitoring ingest sync outcome (incidents/deployments pulled into Quality and DORA metrics).
2376
+ */
2377
+ get: operations["getWorkspaceSentryIntegrationStatus"];
2378
+ put?: never;
2379
+ post?: never;
2380
+ delete?: never;
2381
+ options?: never;
2382
+ head?: never;
2383
+ patch?: never;
2384
+ trace?: never;
2385
+ };
2386
+ "/workspaces/{workspaceId}/integrations/sentry/sync": {
2387
+ parameters: {
2388
+ query?: never;
2389
+ header?: never;
2390
+ path?: never;
2391
+ cookie?: never;
2392
+ };
2393
+ get?: never;
2394
+ put?: never;
2395
+ /**
2396
+ * Trigger Sentry monitoring ingest now
2397
+ * @description Manually polls Sentry for issues (incidents) and releases (deployments), persists canonical monitoring events, and refreshes org-level Quality/DORA dashboard buckets. Requires editor role.
2398
+ */
2399
+ post: operations["postWorkspaceSentryIntegrationSync"];
2400
+ delete?: never;
2401
+ options?: never;
2402
+ head?: never;
2403
+ patch?: never;
2404
+ trace?: never;
2405
+ };
2366
2406
  "/integrations/github/webhook": {
2367
2407
  parameters: {
2368
2408
  query?: never;
@@ -8253,6 +8293,47 @@ export interface components {
8253
8293
  /** @description Error message when status is error. */
8254
8294
  error?: string;
8255
8295
  };
8296
+ SentryIntegrationStatusDto: {
8297
+ /** @description True when a type:sentry workspace source is configured. */
8298
+ connected: boolean;
8299
+ /** @description Configured Sentry organization slug when connected. */
8300
+ orgSlug?: string;
8301
+ /** @description Org display name when known from the last successful verify. */
8302
+ orgName?: string;
8303
+ /**
8304
+ * Format: date-time
8305
+ * @description Timestamp of the last monitoring ingest attempt (success or failure).
8306
+ */
8307
+ lastSyncAt?: string | null;
8308
+ /**
8309
+ * @description Outcome of the most recent sync (`never` when not yet synced).
8310
+ * @enum {string}
8311
+ */
8312
+ status: "ok" | "error" | "never";
8313
+ lastError?: string | null;
8314
+ /** @description Issues (incidents) fetched on the last successful sync (30d lookback). */
8315
+ issueCount?: number | null;
8316
+ /** @description Releases (deployments) fetched on the last successful sync (30d lookback). */
8317
+ deploymentCount?: number | null;
8318
+ /** @description Canonical monitoring events upserted on the last successful sync. */
8319
+ eventCount?: number | null;
8320
+ };
8321
+ SentryTriggerSyncResultDto: {
8322
+ /** @enum {string} */
8323
+ status: "ok" | "skipped" | "error";
8324
+ /** @description Stable machine-readable code (e.g. `sentry_not_connected`). */
8325
+ code?: string;
8326
+ /** @description Human-readable skip reason when status is skipped. */
8327
+ reason?: string;
8328
+ issueCount?: number;
8329
+ deploymentCount?: number;
8330
+ eventCount?: number;
8331
+ /** @description Weekly dashboard metric buckets updated from monitoring events. */
8332
+ bucketsWritten?: number;
8333
+ durationMs?: number;
8334
+ /** @description Error message when status is error. */
8335
+ error?: string;
8336
+ };
8256
8337
  GithubActionsEnableResponseDto: {
8257
8338
  /** @enum {string} */
8258
8339
  outcome: "enabled" | "needs_github" | "permissions_missing" | "error";
@@ -10045,7 +10126,7 @@ export interface components {
10045
10126
  * @description Type of workspace lifecycle event.
10046
10127
  * @enum {string}
10047
10128
  */
10048
- ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.suspended" | "integration.github.unsuspended" | "integration.github.repo_added" | "integration.github.repo_removed" | "fix.requested" | "fix.generating" | "fix.pr_created" | "fix.merged" | "fix.failed" | "readiness.scan_started" | "readiness.scan_completed" | "readiness.scan_failed" | "readiness.scan_partial" | "code_insights.design_run_started" | "integrations.agent_execution.provider_changed" | "integrations.repo_eligibility.overrides_changed" | "integrations.repo_eligibility.languages_refresh_requested" | "rules_skills.soft_quality.override" | "integrations.cursor.platform_key_enabled" | "integrations.cursor.platform_key_disabled" | "member.invited" | "member.invite_accepted" | "member.invite_rejected" | "member.role_changed" | "member.removed" | "hris.personio.sync_started" | "hris.personio.sync_completed" | "hris.personio.sync_failed" | "hris.zenhr.sync_started" | "hris.zenhr.sync_completed" | "hris.zenhr.sync_failed" | "hris.zelt.sync_started" | "hris.zelt.sync_completed" | "hris.zelt.sync_failed" | "hris.hibob.sync_started" | "hris.hibob.sync_completed" | "hris.hibob.sync_failed" | "hris.sync_started" | "hris.sync_completed" | "hris.sync_failed" | "repo.sync_skipped" | "integrations.cursor.execution_key.added" | "integrations.cursor.execution_key.updated" | "integrations.cursor.execution_key.removed" | "integrations.cursor.execution_key.check_failed" | "integrations.cursor.admin_key.added" | "integrations.cursor.admin_key.updated" | "integrations.cursor.admin_key.removed" | "integrations.claude.execution_key.added" | "integrations.claude.execution_key.updated" | "integrations.claude.execution_key.removed" | "integrations.claude.execution_key.check_failed" | "integrations.claude.admin_key.added" | "integrations.claude.admin_key.updated" | "integrations.claude.admin_key.removed" | "integrations.claude.analytics_key.added" | "integrations.claude.analytics_key.updated" | "integrations.claude.analytics_key.removed" | "integrations.code_intelligence.settings_changed" | "integrations.code_intelligence.execution_key.added" | "integrations.code_intelligence.execution_key.updated" | "integrations.code_intelligence.execution_key.removed" | "integrations.code_intelligence.execution_key.check_failed" | "readiness.scan_precheck_failed" | "productivity.ingest.completed" | "productivity.ingest.failed" | "productivity.ingest.skipped" | "productivity.ingest.repo_skipped" | "productivity.ingest.coverage_gap_detected" | "integrations.newrelic.added" | "integrations.newrelic.removed" | "integrations.newrelic.sync_completed" | "integrations.newrelic.sync_failed" | "integrations.prometheus.added" | "integrations.prometheus.removed" | "integrations.prometheus.sync_completed" | "integrations.prometheus.sync_failed" | "integrations.grafana.added" | "integrations.grafana.removed" | "integrations.grafana.sync_completed" | "integrations.grafana.sync_failed" | "integrations.datadog.added" | "integrations.datadog.removed" | "integrations.datadog.sync_completed" | "integrations.datadog.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed" | "report.exported" | "report.assessment_stored" | "report.assessment_link_sent" | "report.assessment_link_revoked" | "report.assessment_downloaded" | "report.assessment_hidden" | "report.assessment_restored" | "workspace.aggregate_use.changed" | "workspace.assessment_rollout.changed";
10129
+ ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "integration.github.suspended" | "integration.github.unsuspended" | "integration.github.repo_added" | "integration.github.repo_removed" | "fix.requested" | "fix.generating" | "fix.pr_created" | "fix.merged" | "fix.failed" | "readiness.scan_started" | "readiness.scan_completed" | "readiness.scan_failed" | "readiness.scan_partial" | "code_insights.design_run_started" | "integrations.agent_execution.provider_changed" | "integrations.repo_eligibility.overrides_changed" | "integrations.repo_eligibility.languages_refresh_requested" | "rules_skills.soft_quality.override" | "integrations.cursor.platform_key_enabled" | "integrations.cursor.platform_key_disabled" | "member.invited" | "member.invite_accepted" | "member.invite_rejected" | "member.role_changed" | "member.removed" | "hris.personio.sync_started" | "hris.personio.sync_completed" | "hris.personio.sync_failed" | "hris.zenhr.sync_started" | "hris.zenhr.sync_completed" | "hris.zenhr.sync_failed" | "hris.zelt.sync_started" | "hris.zelt.sync_completed" | "hris.zelt.sync_failed" | "hris.hibob.sync_started" | "hris.hibob.sync_completed" | "hris.hibob.sync_failed" | "hris.sync_started" | "hris.sync_completed" | "hris.sync_failed" | "repo.sync_skipped" | "integrations.cursor.execution_key.added" | "integrations.cursor.execution_key.updated" | "integrations.cursor.execution_key.removed" | "integrations.cursor.execution_key.check_failed" | "integrations.cursor.admin_key.added" | "integrations.cursor.admin_key.updated" | "integrations.cursor.admin_key.removed" | "integrations.claude.execution_key.added" | "integrations.claude.execution_key.updated" | "integrations.claude.execution_key.removed" | "integrations.claude.execution_key.check_failed" | "integrations.claude.admin_key.added" | "integrations.claude.admin_key.updated" | "integrations.claude.admin_key.removed" | "integrations.claude.analytics_key.added" | "integrations.claude.analytics_key.updated" | "integrations.claude.analytics_key.removed" | "integrations.code_intelligence.settings_changed" | "integrations.code_intelligence.execution_key.added" | "integrations.code_intelligence.execution_key.updated" | "integrations.code_intelligence.execution_key.removed" | "integrations.code_intelligence.execution_key.check_failed" | "readiness.scan_precheck_failed" | "productivity.ingest.completed" | "productivity.ingest.failed" | "productivity.ingest.skipped" | "productivity.ingest.repo_skipped" | "productivity.ingest.coverage_gap_detected" | "integrations.newrelic.added" | "integrations.newrelic.removed" | "integrations.newrelic.sync_completed" | "integrations.newrelic.sync_failed" | "integrations.prometheus.added" | "integrations.prometheus.removed" | "integrations.prometheus.sync_completed" | "integrations.prometheus.sync_failed" | "integrations.grafana.added" | "integrations.grafana.removed" | "integrations.grafana.sync_completed" | "integrations.grafana.sync_failed" | "integrations.datadog.added" | "integrations.datadog.removed" | "integrations.datadog.sync_completed" | "integrations.datadog.sync_failed" | "integrations.sentry.added" | "integrations.sentry.removed" | "integrations.sentry.sync_completed" | "integrations.sentry.sync_failed" | "integrations.zelt.added" | "integrations.zelt.removed" | "report.exported" | "report.assessment_stored" | "report.assessment_link_sent" | "report.assessment_link_revoked" | "report.assessment_downloaded" | "report.assessment_hidden" | "report.assessment_restored" | "workspace.aggregate_use.changed" | "workspace.assessment_rollout.changed";
10049
10130
  /** @description Current legal-approved opt-in notice, or `unset` while opt-in is unavailable. */
10050
10131
  AggregateUseNoticeStatusDto: {
10051
10132
  /** @enum {string} */
@@ -10208,7 +10289,7 @@ export interface components {
10208
10289
  };
10209
10290
  AssessmentDictionaryDto: {
10210
10291
  /** @enum {string} */
10211
- version: "2026-10-25.1";
10292
+ version: "2026-10-26.1";
10212
10293
  /** @enum {integer} */
10213
10294
  periodDays: 90;
10214
10295
  /** @enum {integer} */
@@ -10244,7 +10325,7 @@ export interface components {
10244
10325
  aiProviders: ("cursor" | "claude" | "copilot")[];
10245
10326
  optionalProviders: {
10246
10327
  roadmap: "jira"[];
10247
- incident: ("pagerduty" | "opsgenie" | "goalert" | "newrelic" | "prometheus" | "grafana" | "datadog")[];
10328
+ incident: ("pagerduty" | "opsgenie" | "goalert" | "newrelic" | "prometheus" | "grafana" | "datadog" | "sentry")[];
10248
10329
  };
10249
10330
  selfManagedGit: {
10250
10331
  /** @enum {string} */
@@ -13282,6 +13363,8 @@ export type GrafanaIntegrationStatusDto = components['schemas']['GrafanaIntegrat
13282
13363
  export type GrafanaTriggerSyncResultDto = components['schemas']['GrafanaTriggerSyncResultDto'];
13283
13364
  export type DatadogIntegrationStatusDto = components['schemas']['DatadogIntegrationStatusDto'];
13284
13365
  export type DatadogTriggerSyncResultDto = components['schemas']['DatadogTriggerSyncResultDto'];
13366
+ export type SentryIntegrationStatusDto = components['schemas']['SentryIntegrationStatusDto'];
13367
+ export type SentryTriggerSyncResultDto = components['schemas']['SentryTriggerSyncResultDto'];
13285
13368
  export type GithubActionsEnableResponseDto = components['schemas']['GithubActionsEnableResponseDto'];
13286
13369
  export type GithubInstallationStatusDto = components['schemas']['GithubInstallationStatusDto'];
13287
13370
  export type GithubInstallUrlRequestDto = components['schemas']['GithubInstallUrlRequestDto'];
@@ -20449,6 +20532,90 @@ export interface operations {
20449
20532
  };
20450
20533
  };
20451
20534
  };
20535
+ getWorkspaceSentryIntegrationStatus: {
20536
+ parameters: {
20537
+ query?: never;
20538
+ header?: never;
20539
+ path: {
20540
+ workspaceId: components["parameters"]["WorkspaceId"];
20541
+ };
20542
+ cookie?: never;
20543
+ };
20544
+ requestBody?: never;
20545
+ responses: {
20546
+ /** @description Sentry integration status */
20547
+ 200: {
20548
+ headers: {
20549
+ [name: string]: unknown;
20550
+ };
20551
+ content: {
20552
+ "application/json": components["schemas"]["SentryIntegrationStatusDto"];
20553
+ };
20554
+ };
20555
+ 401: components["responses"]["Unauthorized"];
20556
+ 403: components["responses"]["Forbidden"];
20557
+ /** @description Workspace does not exist or malformed workspaceId */
20558
+ 404: {
20559
+ headers: {
20560
+ [name: string]: unknown;
20561
+ };
20562
+ content: {
20563
+ "application/json": components["schemas"]["ErrorMessageDto"];
20564
+ };
20565
+ };
20566
+ };
20567
+ };
20568
+ postWorkspaceSentryIntegrationSync: {
20569
+ parameters: {
20570
+ query?: never;
20571
+ header?: never;
20572
+ path: {
20573
+ workspaceId: components["parameters"]["WorkspaceId"];
20574
+ };
20575
+ cookie?: never;
20576
+ };
20577
+ requestBody?: never;
20578
+ responses: {
20579
+ /** @description Sync completed */
20580
+ 200: {
20581
+ headers: {
20582
+ [name: string]: unknown;
20583
+ };
20584
+ content: {
20585
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20586
+ };
20587
+ };
20588
+ 401: components["responses"]["Unauthorized"];
20589
+ 403: components["responses"]["Forbidden"];
20590
+ /** @description Workspace does not exist or malformed workspaceId */
20591
+ 404: {
20592
+ headers: {
20593
+ [name: string]: unknown;
20594
+ };
20595
+ content: {
20596
+ "application/json": components["schemas"]["ErrorMessageDto"];
20597
+ };
20598
+ };
20599
+ /** @description Sentry is not connected on this workspace */
20600
+ 422: {
20601
+ headers: {
20602
+ [name: string]: unknown;
20603
+ };
20604
+ content: {
20605
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20606
+ };
20607
+ };
20608
+ /** @description Sync failed (Sentry API or persistence error) */
20609
+ 503: {
20610
+ headers: {
20611
+ [name: string]: unknown;
20612
+ };
20613
+ content: {
20614
+ "application/json": components["schemas"]["SentryTriggerSyncResultDto"];
20615
+ };
20616
+ };
20617
+ };
20618
+ };
20452
20619
  postGithubWebhook: {
20453
20620
  parameters: {
20454
20621
  query?: never;