@thinkai/tai-api-contract 2.183.0 → 2.184.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.
@@ -1,7 +1,7 @@
1
1
  openapi: 3.0.3
2
2
  info:
3
3
  title: ThinkAI API
4
- version: 2.183.0
4
+ version: 2.184.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}/...`.
@@ -2487,6 +2487,7 @@ paths:
2487
2487
  - $ref: "#/components/schemas/ClaudeSourceDto"
2488
2488
  - $ref: "#/components/schemas/CodeIntelligenceSourcePatchDto"
2489
2489
  - $ref: "#/components/schemas/NewRelicSourceDto"
2490
+ - $ref: "#/components/schemas/DatadogSourceDto"
2490
2491
  - $ref: "#/components/schemas/PrometheusSourceDto"
2491
2492
  - $ref: "#/components/schemas/GrafanaSourceDto"
2492
2493
  - $ref: "#/components/schemas/SonarQubeSourceDto"
@@ -2608,6 +2609,7 @@ paths:
2608
2609
  - $ref: "#/components/schemas/ClaudeSourceDto"
2609
2610
  - $ref: "#/components/schemas/CodeIntelligenceSourcePatchDto"
2610
2611
  - $ref: "#/components/schemas/NewRelicSourceDto"
2612
+ - $ref: "#/components/schemas/DatadogSourceDto"
2611
2613
  - $ref: "#/components/schemas/PrometheusSourceDto"
2612
2614
  - $ref: "#/components/schemas/GrafanaSourceDto"
2613
2615
  - $ref: "#/components/schemas/SonarQubeSourceDto"
@@ -2637,6 +2639,13 @@ paths:
2637
2639
  baseUrl: https://sonarqube.example.com
2638
2640
  token: sonarqube_api_token_example
2639
2641
  projectKey: my-project
2642
+ datadogValid:
2643
+ summary: Datadog source for connection test (US1)
2644
+ value:
2645
+ type: datadog
2646
+ apiKey: datadog_api_key_example
2647
+ appKey: datadog_app_key_example
2648
+ site: datadoghq.com
2640
2649
  githubShape:
2641
2650
  summary: GitHub-shaped body (non-AI-tool types return unsupported_type unless extended)
2642
2651
  value:
@@ -15003,6 +15012,74 @@ components:
15003
15012
  type: string
15004
15013
  description: New Relic user name when known from the last successful verify.
15005
15014
 
15015
+ DatadogSourceDto:
15016
+ type: object
15017
+ description: >
15018
+ Datadog monitoring source for `PUT /workspaces/{workspaceId}/sources` and
15019
+ `POST /workspaces/{workspaceId}/sources/test`. Requires an API key, an Application
15020
+ key, and a site host suffix (US1/US3/US5/EU/AP1). Raw keys are write-only.
15021
+ required: [type, apiKey, appKey, site]
15022
+ additionalProperties: false
15023
+ properties:
15024
+ type:
15025
+ type: string
15026
+ enum: [datadog]
15027
+ apiKey:
15028
+ type: string
15029
+ minLength: 1
15030
+ maxLength: 512
15031
+ description: Datadog API key (write-only on PUT; encrypted at rest).
15032
+ appKey:
15033
+ type: string
15034
+ minLength: 1
15035
+ maxLength: 512
15036
+ description: Datadog Application key (write-only on PUT; encrypted at rest).
15037
+ site:
15038
+ type: string
15039
+ enum:
15040
+ - datadoghq.com
15041
+ - us3.datadoghq.com
15042
+ - us5.datadoghq.com
15043
+ - datadoghq.eu
15044
+ - ap1.datadoghq.com
15045
+ description: >
15046
+ Datadog site host suffix. Maps to API host `api.{site}`
15047
+ (US1 `datadoghq.com`, US3 `us3.datadoghq.com`, US5 `us5.datadoghq.com`,
15048
+ EU `datadoghq.eu`, AP1 `ap1.datadoghq.com`). Gov/custom sites are out of scope.
15049
+ orgName:
15050
+ type: string
15051
+ description: Optional org display name returned from a successful connection test.
15052
+
15053
+ DatadogSourceConfigDto:
15054
+ type: object
15055
+ description: >
15056
+ Redacted Datadog source returned by `GET /workspaces/{workspaceId}/config`.
15057
+ Raw `apiKey` and `appKey` are never returned.
15058
+ required: [type, hasApiKey, hasAppKey, site]
15059
+ additionalProperties: false
15060
+ properties:
15061
+ type:
15062
+ type: string
15063
+ enum: [datadog]
15064
+ hasApiKey:
15065
+ type: boolean
15066
+ description: Whether a Datadog API key is stored for this workspace.
15067
+ hasAppKey:
15068
+ type: boolean
15069
+ description: Whether a Datadog Application key is stored for this workspace.
15070
+ site:
15071
+ type: string
15072
+ enum:
15073
+ - datadoghq.com
15074
+ - us3.datadoghq.com
15075
+ - us5.datadoghq.com
15076
+ - datadoghq.eu
15077
+ - ap1.datadoghq.com
15078
+ description: Configured Datadog site host suffix.
15079
+ orgName:
15080
+ type: string
15081
+ description: Org display name when known from the last successful verify.
15082
+
15006
15083
  PrometheusSourceDto:
15007
15084
  type: object
15008
15085
  description: >
@@ -15558,6 +15635,7 @@ components:
15558
15635
  - $ref: "#/components/schemas/ClaudeSourceConfigDto"
15559
15636
  - $ref: "#/components/schemas/CodeIntelligenceSourceConfigDto"
15560
15637
  - $ref: "#/components/schemas/NewRelicSourceConfigDto"
15638
+ - $ref: "#/components/schemas/DatadogSourceConfigDto"
15561
15639
  - $ref: "#/components/schemas/PrometheusSourceConfigDto"
15562
15640
  - $ref: "#/components/schemas/GrafanaSourceConfigDto"
15563
15641
  - $ref: "#/components/schemas/SonarQubeSourceConfigDto"
@@ -15818,7 +15896,7 @@ components:
15818
15896
  description: Present for New Relic or Jira verify success — resolved account ID.
15819
15897
  orgName:
15820
15898
  type: string
15821
- description: Present for Grafana verify success — resolved organization name.
15899
+ description: Present for Grafana or Datadog verify success — resolved organization name.
15822
15900
  clusterName:
15823
15901
  type: string
15824
15902
  description: Present for Prometheus verify success — Alertmanager cluster name.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thinkai/tai-api-contract",
3
- "version": "2.183.0",
3
+ "version": "2.184.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -5808,6 +5808,38 @@ export interface components {
5808
5808
  /** @description New Relic user name when known from the last successful verify. */
5809
5809
  userName?: string;
5810
5810
  };
5811
+ /** @description Datadog monitoring source for `PUT /workspaces/{workspaceId}/sources` and `POST /workspaces/{workspaceId}/sources/test`. Requires an API key, an Application key, and a site host suffix (US1/US3/US5/EU/AP1). Raw keys are write-only. */
5812
+ DatadogSourceDto: {
5813
+ /** @enum {string} */
5814
+ type: "datadog";
5815
+ /** @description Datadog API key (write-only on PUT; encrypted at rest). */
5816
+ apiKey: string;
5817
+ /** @description Datadog Application key (write-only on PUT; encrypted at rest). */
5818
+ appKey: string;
5819
+ /**
5820
+ * @description Datadog site host suffix. Maps to API host `api.{site}` (US1 `datadoghq.com`, US3 `us3.datadoghq.com`, US5 `us5.datadoghq.com`, EU `datadoghq.eu`, AP1 `ap1.datadoghq.com`). Gov/custom sites are out of scope.
5821
+ * @enum {string}
5822
+ */
5823
+ site: "datadoghq.com" | "us3.datadoghq.com" | "us5.datadoghq.com" | "datadoghq.eu" | "ap1.datadoghq.com";
5824
+ /** @description Optional org display name returned from a successful connection test. */
5825
+ orgName?: string;
5826
+ };
5827
+ /** @description Redacted Datadog source returned by `GET /workspaces/{workspaceId}/config`. Raw `apiKey` and `appKey` are never returned. */
5828
+ DatadogSourceConfigDto: {
5829
+ /** @enum {string} */
5830
+ type: "datadog";
5831
+ /** @description Whether a Datadog API key is stored for this workspace. */
5832
+ hasApiKey: boolean;
5833
+ /** @description Whether a Datadog Application key is stored for this workspace. */
5834
+ hasAppKey: boolean;
5835
+ /**
5836
+ * @description Configured Datadog site host suffix.
5837
+ * @enum {string}
5838
+ */
5839
+ site: "datadoghq.com" | "us3.datadoghq.com" | "us5.datadoghq.com" | "datadoghq.eu" | "ap1.datadoghq.com";
5840
+ /** @description Org display name when known from the last successful verify. */
5841
+ orgName?: string;
5842
+ };
5811
5843
  /** @description Prometheus / Alertmanager monitoring source for workspace sources PUT and connection test. Provide at least one URL; authentication is optional. */
5812
5844
  PrometheusSourceDto: {
5813
5845
  /** @enum {string} */
@@ -6057,7 +6089,7 @@ export interface components {
6057
6089
  topics?: components["schemas"]["CodeWikiGuidanceTopicDto"][];
6058
6090
  };
6059
6091
  WorkspaceConfigDto: {
6060
- sources: (components["schemas"]["CursorSourceConfigDto"] | components["schemas"]["ClaudeSourceConfigDto"] | components["schemas"]["CodeIntelligenceSourceConfigDto"] | components["schemas"]["NewRelicSourceConfigDto"] | components["schemas"]["PrometheusSourceConfigDto"] | components["schemas"]["GrafanaSourceConfigDto"] | components["schemas"]["SonarQubeSourceConfigDto"] | components["schemas"]["PagerDutySourceConfigDto"] | components["schemas"]["JiraSourceConfigDto"] | components["schemas"]["TenantSourceEntryDto"])[];
6092
+ sources: (components["schemas"]["CursorSourceConfigDto"] | components["schemas"]["ClaudeSourceConfigDto"] | components["schemas"]["CodeIntelligenceSourceConfigDto"] | components["schemas"]["NewRelicSourceConfigDto"] | components["schemas"]["DatadogSourceConfigDto"] | components["schemas"]["PrometheusSourceConfigDto"] | components["schemas"]["GrafanaSourceConfigDto"] | components["schemas"]["SonarQubeSourceConfigDto"] | components["schemas"]["PagerDutySourceConfigDto"] | components["schemas"]["JiraSourceConfigDto"] | components["schemas"]["TenantSourceEntryDto"])[];
6061
6093
  orgChart?: components["schemas"]["ScoringOrgChartDto"] | null;
6062
6094
  /** @enum {string|null} */
6063
6095
  region?: "us" | "eu" | "me" | null;
@@ -6180,7 +6212,7 @@ export interface components {
6180
6212
  accountName?: string;
6181
6213
  /** @description Present for New Relic or Jira verify success — resolved account ID. */
6182
6214
  accountId?: string;
6183
- /** @description Present for Grafana verify success — resolved organization name. */
6215
+ /** @description Present for Grafana or Datadog verify success — resolved organization name. */
6184
6216
  orgName?: string;
6185
6217
  /** @description Present for Prometheus verify success — Alertmanager cluster name. */
6186
6218
  clusterName?: string;
@@ -12557,6 +12589,8 @@ export type CodeIntelligenceSourcePatchDto = components['schemas']['CodeIntellig
12557
12589
  export type CodeIntelligenceSourceConfigDto = components['schemas']['CodeIntelligenceSourceConfigDto'];
12558
12590
  export type NewRelicSourceDto = components['schemas']['NewRelicSourceDto'];
12559
12591
  export type NewRelicSourceConfigDto = components['schemas']['NewRelicSourceConfigDto'];
12592
+ export type DatadogSourceDto = components['schemas']['DatadogSourceDto'];
12593
+ export type DatadogSourceConfigDto = components['schemas']['DatadogSourceConfigDto'];
12560
12594
  export type PrometheusSourceDto = components['schemas']['PrometheusSourceDto'];
12561
12595
  export type PrometheusSourceConfigDto = components['schemas']['PrometheusSourceConfigDto'];
12562
12596
  export type GrafanaSourceDto = components['schemas']['GrafanaSourceDto'];
@@ -15563,7 +15597,7 @@ export interface operations {
15563
15597
  requestBody: {
15564
15598
  content: {
15565
15599
  "application/json": {
15566
- sources: (components["schemas"]["CursorSourcePatchDto"] | components["schemas"]["CursorSourceDto"] | components["schemas"]["ClaudeSourcePatchDto"] | components["schemas"]["ClaudeSourceDto"] | components["schemas"]["CodeIntelligenceSourcePatchDto"] | components["schemas"]["NewRelicSourceDto"] | components["schemas"]["PrometheusSourceDto"] | components["schemas"]["GrafanaSourceDto"] | components["schemas"]["SonarQubeSourceDto"] | components["schemas"]["PagerDutySourceDto"] | components["schemas"]["JiraSourceDto"] | components["schemas"]["TenantSourceEntryDto"])[];
15600
+ sources: (components["schemas"]["CursorSourcePatchDto"] | components["schemas"]["CursorSourceDto"] | components["schemas"]["ClaudeSourcePatchDto"] | components["schemas"]["ClaudeSourceDto"] | components["schemas"]["CodeIntelligenceSourcePatchDto"] | components["schemas"]["NewRelicSourceDto"] | components["schemas"]["DatadogSourceDto"] | components["schemas"]["PrometheusSourceDto"] | components["schemas"]["GrafanaSourceDto"] | components["schemas"]["SonarQubeSourceDto"] | components["schemas"]["PagerDutySourceDto"] | components["schemas"]["JiraSourceDto"] | components["schemas"]["TenantSourceEntryDto"])[];
15567
15601
  };
15568
15602
  };
15569
15603
  };
@@ -15617,7 +15651,7 @@ export interface operations {
15617
15651
  };
15618
15652
  requestBody: {
15619
15653
  content: {
15620
- "application/json": components["schemas"]["CursorSourcePatchDto"] | components["schemas"]["CursorSourceDto"] | components["schemas"]["ClaudeSourcePatchDto"] | components["schemas"]["ClaudeSourceDto"] | components["schemas"]["CodeIntelligenceSourcePatchDto"] | components["schemas"]["NewRelicSourceDto"] | components["schemas"]["PrometheusSourceDto"] | components["schemas"]["GrafanaSourceDto"] | components["schemas"]["SonarQubeSourceDto"] | components["schemas"]["PagerDutySourceDto"] | components["schemas"]["JiraSourceDto"] | components["schemas"]["TenantSourceEntryDto"];
15654
+ "application/json": components["schemas"]["CursorSourcePatchDto"] | components["schemas"]["CursorSourceDto"] | components["schemas"]["ClaudeSourcePatchDto"] | components["schemas"]["ClaudeSourceDto"] | components["schemas"]["CodeIntelligenceSourcePatchDto"] | components["schemas"]["NewRelicSourceDto"] | components["schemas"]["DatadogSourceDto"] | components["schemas"]["PrometheusSourceDto"] | components["schemas"]["GrafanaSourceDto"] | components["schemas"]["SonarQubeSourceDto"] | components["schemas"]["PagerDutySourceDto"] | components["schemas"]["JiraSourceDto"] | components["schemas"]["TenantSourceEntryDto"];
15621
15655
  };
15622
15656
  };
15623
15657
  responses: {