@thinkai/tai-api-contract 2.163.0 → 2.165.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/openapi/openapi.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
openapi: 3.0.3
|
|
2
2
|
info:
|
|
3
3
|
title: ThinkAI API
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.165.0
|
|
5
5
|
description: >
|
|
6
6
|
Contract surface for the AI Driven SDLC backend used by ThinkAI.
|
|
7
7
|
Workspace-scoped routes use `/workspaces/{workspaceId}/...`.
|
|
@@ -1039,7 +1039,6 @@ paths:
|
|
|
1039
1039
|
email: new.member@example.com
|
|
1040
1040
|
role: editor
|
|
1041
1041
|
status: pending
|
|
1042
|
-
invitedByName: Dana Admin
|
|
1043
1042
|
expiresAt: "2026-08-01T12:00:00.000Z"
|
|
1044
1043
|
createdAt: "2026-07-25T12:00:00.000Z"
|
|
1045
1044
|
alreadyMember:
|
|
@@ -11918,7 +11917,10 @@ components:
|
|
|
11918
11917
|
|
|
11919
11918
|
WorkspaceInvitationDto:
|
|
11920
11919
|
type: object
|
|
11921
|
-
description:
|
|
11920
|
+
description: >
|
|
11921
|
+
Workspace invitation as seen by an authenticated admin or invitee.
|
|
11922
|
+
Inviter identity is omitted from this DTO (mailer uses store rows; public
|
|
11923
|
+
preview exposes `invitedByName` on `WorkspaceInvitationPreviewDto` only).
|
|
11922
11924
|
required: [id, workspaceId, workspaceName, email, role, status, expiresAt, createdAt]
|
|
11923
11925
|
properties:
|
|
11924
11926
|
id:
|
|
@@ -11937,12 +11939,6 @@ components:
|
|
|
11937
11939
|
enum: [admin, editor, viewer]
|
|
11938
11940
|
status:
|
|
11939
11941
|
$ref: "#/components/schemas/WorkspaceInvitationStatusDto"
|
|
11940
|
-
invitedByName:
|
|
11941
|
-
type: string
|
|
11942
|
-
nullable: true
|
|
11943
|
-
invitedByEmail:
|
|
11944
|
-
type: string
|
|
11945
|
-
nullable: true
|
|
11946
11942
|
expiresAt:
|
|
11947
11943
|
type: string
|
|
11948
11944
|
format: date-time
|
|
@@ -15725,18 +15721,15 @@ components:
|
|
|
15725
15721
|
|
|
15726
15722
|
MeProfileDto:
|
|
15727
15723
|
type: object
|
|
15728
|
-
required: [id, email, name
|
|
15724
|
+
required: [id, email, name]
|
|
15729
15725
|
properties:
|
|
15730
15726
|
id:
|
|
15731
15727
|
type: string
|
|
15728
|
+
description: Authenticated subject id (JWT `sub`).
|
|
15732
15729
|
email:
|
|
15733
15730
|
type: string
|
|
15734
15731
|
name:
|
|
15735
15732
|
type: string
|
|
15736
|
-
roles:
|
|
15737
|
-
type: array
|
|
15738
|
-
items:
|
|
15739
|
-
type: string
|
|
15740
15733
|
defaultWorkspaceId:
|
|
15741
15734
|
type: string
|
|
15742
15735
|
nullable: true
|
|
@@ -16539,6 +16532,8 @@ components:
|
|
|
16539
16532
|
- automatedFixesEnabled
|
|
16540
16533
|
- writeAppInstalled
|
|
16541
16534
|
- canEnableAutomatedFixes
|
|
16535
|
+
- suspended
|
|
16536
|
+
- writeSuspended
|
|
16542
16537
|
properties:
|
|
16543
16538
|
installationId:
|
|
16544
16539
|
type: string
|
|
@@ -16658,6 +16653,24 @@ components:
|
|
|
16658
16653
|
description: >
|
|
16659
16654
|
True when the Automations app is configured and automated fixes are not yet
|
|
16660
16655
|
enabled for this installation (UI may show Enable automated fixes).
|
|
16656
|
+
suspended:
|
|
16657
|
+
type: boolean
|
|
16658
|
+
description: >
|
|
16659
|
+
True when this Insights (read) GitHub App installation is suspended on GitHub.
|
|
16660
|
+
The workspace row is kept; token mint and core permissions are fail-closed.
|
|
16661
|
+
suspendedMessage:
|
|
16662
|
+
type: string
|
|
16663
|
+
nullable: true
|
|
16664
|
+
description: Human-readable summary when this Insights installation is suspended.
|
|
16665
|
+
writeSuspended:
|
|
16666
|
+
type: boolean
|
|
16667
|
+
description: >
|
|
16668
|
+
True when the linked Automations (write) GitHub App installation is suspended.
|
|
16669
|
+
Does not disconnect source control; automated fixes stay disabled.
|
|
16670
|
+
writeSuspendedMessage:
|
|
16671
|
+
type: string
|
|
16672
|
+
nullable: true
|
|
16673
|
+
description: Human-readable summary when the Automations installation is suspended.
|
|
16661
16674
|
|
|
16662
16675
|
GithubPendingApprovalDto:
|
|
16663
16676
|
type: object
|
|
@@ -16951,6 +16964,8 @@ components:
|
|
|
16951
16964
|
- financialPermissionsOk
|
|
16952
16965
|
- writePermissionsOk
|
|
16953
16966
|
- writePermissionsUpgradeRequired
|
|
16967
|
+
- suspended
|
|
16968
|
+
- writeSuspended
|
|
16954
16969
|
properties:
|
|
16955
16970
|
installed:
|
|
16956
16971
|
type: boolean
|
|
@@ -16999,6 +17014,22 @@ components:
|
|
|
16999
17014
|
writePermissionsUpgradeRequired:
|
|
17000
17015
|
type: boolean
|
|
17001
17016
|
description: True when any connected installation lacks write permissions for automated fixes.
|
|
17017
|
+
suspended:
|
|
17018
|
+
type: boolean
|
|
17019
|
+
description: >
|
|
17020
|
+
True when any Insights (read) installation on this workspace is suspended.
|
|
17021
|
+
Source-control unlock still succeeds when at least one installation remains active.
|
|
17022
|
+
suspendedMessage:
|
|
17023
|
+
type: string
|
|
17024
|
+
nullable: true
|
|
17025
|
+
description: Human-readable summary when one or more Insights installations are suspended.
|
|
17026
|
+
writeSuspended:
|
|
17027
|
+
type: boolean
|
|
17028
|
+
description: True when any linked Automations (write) installation is suspended.
|
|
17029
|
+
writeSuspendedMessage:
|
|
17030
|
+
type: string
|
|
17031
|
+
nullable: true
|
|
17032
|
+
description: Human-readable summary when Automations write access is suspended.
|
|
17002
17033
|
missingWritePermissions:
|
|
17003
17034
|
type: array
|
|
17004
17035
|
items:
|
|
@@ -20597,6 +20628,8 @@ components:
|
|
|
20597
20628
|
- integration.github.updated
|
|
20598
20629
|
- integration.github.removed
|
|
20599
20630
|
- integration.github.permissions_changed
|
|
20631
|
+
- integration.github.suspended
|
|
20632
|
+
- integration.github.unsuspended
|
|
20600
20633
|
- integration.github.repo_added
|
|
20601
20634
|
- integration.github.repo_removed
|
|
20602
20635
|
- fix.requested
|
package/package.json
CHANGED
package/src/generated/openapi.ts
CHANGED
|
@@ -4748,7 +4748,7 @@ export interface components {
|
|
|
4748
4748
|
* @enum {string}
|
|
4749
4749
|
*/
|
|
4750
4750
|
WorkspaceInvitationStatusDto: "pending" | "accepted" | "expired" | "revoked" | "rejected";
|
|
4751
|
-
/** @description Workspace invitation as seen by an authenticated admin or invitee. */
|
|
4751
|
+
/** @description Workspace invitation as seen by an authenticated admin or invitee. Inviter identity is omitted from this DTO (mailer uses store rows; public preview exposes `invitedByName` on `WorkspaceInvitationPreviewDto` only). */
|
|
4752
4752
|
WorkspaceInvitationDto: {
|
|
4753
4753
|
/** Format: uuid */
|
|
4754
4754
|
id: string;
|
|
@@ -4760,8 +4760,6 @@ export interface components {
|
|
|
4760
4760
|
/** @enum {string} */
|
|
4761
4761
|
role: "admin" | "editor" | "viewer";
|
|
4762
4762
|
status: components["schemas"]["WorkspaceInvitationStatusDto"];
|
|
4763
|
-
invitedByName?: string | null;
|
|
4764
|
-
invitedByEmail?: string | null;
|
|
4765
4763
|
/** Format: date-time */
|
|
4766
4764
|
expiresAt: string;
|
|
4767
4765
|
/** Format: date-time */
|
|
@@ -6552,10 +6550,10 @@ export interface components {
|
|
|
6552
6550
|
heatmap: components["schemas"]["AiToolMemberHeatmapDayDto"][];
|
|
6553
6551
|
};
|
|
6554
6552
|
MeProfileDto: {
|
|
6553
|
+
/** @description Authenticated subject id (JWT `sub`). */
|
|
6555
6554
|
id: string;
|
|
6556
6555
|
email: string;
|
|
6557
6556
|
name: string;
|
|
6558
|
-
roles: string[];
|
|
6559
6557
|
defaultWorkspaceId?: string | null;
|
|
6560
6558
|
/** @description True when the caller's email is on the `PLATFORM_ADMIN_EMAILS` allowlist. Lets the frontend gate platform-admin surfaces (e.g. the privacy-request queue) without duplicating the allowlist client-side. */
|
|
6561
6559
|
isPlatformAdmin?: boolean;
|
|
@@ -6994,6 +6992,14 @@ export interface components {
|
|
|
6994
6992
|
writeManageUrl?: string | null;
|
|
6995
6993
|
/** @description True when the Automations app is configured and automated fixes are not yet enabled for this installation (UI may show Enable automated fixes). */
|
|
6996
6994
|
canEnableAutomatedFixes: boolean;
|
|
6995
|
+
/** @description True when this Insights (read) GitHub App installation is suspended on GitHub. The workspace row is kept; token mint and core permissions are fail-closed. */
|
|
6996
|
+
suspended: boolean;
|
|
6997
|
+
/** @description Human-readable summary when this Insights installation is suspended. */
|
|
6998
|
+
suspendedMessage?: string | null;
|
|
6999
|
+
/** @description True when the linked Automations (write) GitHub App installation is suspended. Does not disconnect source control; automated fixes stay disabled. */
|
|
7000
|
+
writeSuspended: boolean;
|
|
7001
|
+
/** @description Human-readable summary when the Automations installation is suspended. */
|
|
7002
|
+
writeSuspendedMessage?: string | null;
|
|
6997
7003
|
};
|
|
6998
7004
|
GithubPendingApprovalDto: {
|
|
6999
7005
|
/**
|
|
@@ -7171,6 +7177,14 @@ export interface components {
|
|
|
7171
7177
|
writePermissionsOk: boolean;
|
|
7172
7178
|
/** @description True when any connected installation lacks write permissions for automated fixes. */
|
|
7173
7179
|
writePermissionsUpgradeRequired: boolean;
|
|
7180
|
+
/** @description True when any Insights (read) installation on this workspace is suspended. Source-control unlock still succeeds when at least one installation remains active. */
|
|
7181
|
+
suspended: boolean;
|
|
7182
|
+
/** @description Human-readable summary when one or more Insights installations are suspended. */
|
|
7183
|
+
suspendedMessage?: string | null;
|
|
7184
|
+
/** @description True when any linked Automations (write) installation is suspended. */
|
|
7185
|
+
writeSuspended: boolean;
|
|
7186
|
+
/** @description Human-readable summary when Automations write access is suspended. */
|
|
7187
|
+
writeSuspendedMessage?: string | null;
|
|
7174
7188
|
/** @description Aggregated write permissions missing on installations that lack write access. */
|
|
7175
7189
|
missingWritePermissions?: components["schemas"]["GithubMissingPermissionDto"][];
|
|
7176
7190
|
/** @description Human-readable summary when write permissions are missing. */
|
|
@@ -8749,7 +8763,7 @@ export interface components {
|
|
|
8749
8763
|
* @description Type of workspace lifecycle event.
|
|
8750
8764
|
* @enum {string}
|
|
8751
8765
|
*/
|
|
8752
|
-
ActivityLogEventTypeDto: "repo.added" | "repo.removed" | "repo.readded" | "integration.github.added" | "integration.github.updated" | "integration.github.removed" | "integration.github.permissions_changed" | "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" | "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.zelt.added" | "integrations.zelt.removed" | "report.exported" | "workspace.aggregate_use.changed";
|
|
8766
|
+
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" | "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.zelt.added" | "integrations.zelt.removed" | "report.exported" | "workspace.aggregate_use.changed";
|
|
8753
8767
|
UnsetAssessmentDecisionDto: {
|
|
8754
8768
|
/** @enum {string} */
|
|
8755
8769
|
status: "unset";
|