@athenaintel/sdk 4.3.864 → 4.3.866

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.
@@ -43,8 +43,8 @@ function normalizeClientOptions(options) {
43
43
  const headers = (0, headers_js_1.mergeHeaders)({
44
44
  "X-Fern-Language": "JavaScript",
45
45
  "X-Fern-SDK-Name": "@athenaintel/sdk",
46
- "X-Fern-SDK-Version": "4.3.864",
47
- "User-Agent": "@athenaintel/sdk/4.3.864",
46
+ "X-Fern-SDK-Version": "4.3.866",
47
+ "User-Agent": "@athenaintel/sdk/4.3.866",
48
48
  "X-Fern-Runtime": core.RUNTIME.type,
49
49
  "X-Fern-Runtime-Version": core.RUNTIME.version,
50
50
  }, options === null || options === void 0 ? void 0 : options.headers);
@@ -191,6 +191,28 @@ export declare class DatabasesClient {
191
191
  */
192
192
  getTableSchema(asset_id: string, table_name: string, requestOptions?: DatabasesClient.RequestOptions): core.HttpResponsePromise<AthenaIntelligence.DatabaseTableSchemaResponse>;
193
193
  private __getTableSchema;
194
+ /**
195
+ * Execute a SQL statement against the database. SELECT queries return columns and rows. Non-SELECT statements (CREATE, INSERT, UPDATE, DELETE, ALTER, DROP, etc.) return execution statuses.
196
+ *
197
+ * @param {string} asset_id
198
+ * @param {AthenaIntelligence.DatabaseSqlRequest} request
199
+ * @param {DatabasesClient.RequestOptions} requestOptions - Request-specific configuration.
200
+ *
201
+ * @throws {@link AthenaIntelligence.BadRequestError}
202
+ * @throws {@link AthenaIntelligence.ForbiddenError}
203
+ * @throws {@link AthenaIntelligence.NotFoundError}
204
+ * @throws {@link AthenaIntelligence.UnprocessableEntityError}
205
+ * @throws {@link AthenaIntelligence.InternalServerError}
206
+ * @throws {@link AthenaIntelligence.NotImplementedError}
207
+ * @throws {@link AthenaIntelligence.ServiceUnavailableError}
208
+ *
209
+ * @example
210
+ * await client.databases.executeSql("asset_id", {
211
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
212
+ * })
213
+ */
214
+ executeSql(asset_id: string, request: AthenaIntelligence.DatabaseSqlRequest, requestOptions?: DatabasesClient.RequestOptions): core.HttpResponsePromise<AthenaIntelligence.DatabaseSqlResponse>;
215
+ private __executeSql;
194
216
  /**
195
217
  * Check if a database is running, suspended, or starting up. Poll this endpoint to determine when a serverless database is ready.
196
218
  *
@@ -680,6 +680,100 @@ class DatabasesClient {
680
680
  }
681
681
  });
682
682
  }
683
+ /**
684
+ * Execute a SQL statement against the database. SELECT queries return columns and rows. Non-SELECT statements (CREATE, INSERT, UPDATE, DELETE, ALTER, DROP, etc.) return execution statuses.
685
+ *
686
+ * @param {string} asset_id
687
+ * @param {AthenaIntelligence.DatabaseSqlRequest} request
688
+ * @param {DatabasesClient.RequestOptions} requestOptions - Request-specific configuration.
689
+ *
690
+ * @throws {@link AthenaIntelligence.BadRequestError}
691
+ * @throws {@link AthenaIntelligence.ForbiddenError}
692
+ * @throws {@link AthenaIntelligence.NotFoundError}
693
+ * @throws {@link AthenaIntelligence.UnprocessableEntityError}
694
+ * @throws {@link AthenaIntelligence.InternalServerError}
695
+ * @throws {@link AthenaIntelligence.NotImplementedError}
696
+ * @throws {@link AthenaIntelligence.ServiceUnavailableError}
697
+ *
698
+ * @example
699
+ * await client.databases.executeSql("asset_id", {
700
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
701
+ * })
702
+ */
703
+ executeSql(asset_id, request, requestOptions) {
704
+ return core.HttpResponsePromise.fromPromise(this.__executeSql(asset_id, request, requestOptions));
705
+ }
706
+ __executeSql(asset_id, request, requestOptions) {
707
+ return __awaiter(this, void 0, void 0, function* () {
708
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
709
+ const _authRequest = yield this._options.authProvider.getAuthRequest();
710
+ const _headers = (0, headers_js_1.mergeHeaders)(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
711
+ const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
712
+ url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.AthenaIntelligenceEnvironment.Production, `api/v0/databases/${core.url.encodePathParam(asset_id)}/sql`),
713
+ method: "POST",
714
+ headers: _headers,
715
+ contentType: "application/json",
716
+ queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
717
+ requestType: "json",
718
+ body: request,
719
+ timeoutMs: ((_g = (_e = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _e !== void 0 ? _e : (_f = this._options) === null || _f === void 0 ? void 0 : _f.timeoutInSeconds) !== null && _g !== void 0 ? _g : 60) * 1000,
720
+ maxRetries: (_h = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _h !== void 0 ? _h : (_j = this._options) === null || _j === void 0 ? void 0 : _j.maxRetries,
721
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
722
+ fetchFn: (_k = this._options) === null || _k === void 0 ? void 0 : _k.fetch,
723
+ logging: this._options.logging,
724
+ });
725
+ if (_response.ok) {
726
+ return {
727
+ data: _response.body,
728
+ rawResponse: _response.rawResponse,
729
+ };
730
+ }
731
+ if (_response.error.reason === "status-code") {
732
+ switch (_response.error.statusCode) {
733
+ case 400:
734
+ throw new AthenaIntelligence.BadRequestError(_response.error.body, _response.rawResponse);
735
+ case 403:
736
+ throw new AthenaIntelligence.ForbiddenError(_response.error.body, _response.rawResponse);
737
+ case 404:
738
+ throw new AthenaIntelligence.NotFoundError(_response.error.body, _response.rawResponse);
739
+ case 422:
740
+ throw new AthenaIntelligence.UnprocessableEntityError(_response.error.body, _response.rawResponse);
741
+ case 500:
742
+ throw new AthenaIntelligence.InternalServerError(_response.error.body, _response.rawResponse);
743
+ case 501:
744
+ throw new AthenaIntelligence.NotImplementedError(_response.error.body, _response.rawResponse);
745
+ case 503:
746
+ throw new AthenaIntelligence.ServiceUnavailableError(_response.error.body, _response.rawResponse);
747
+ default:
748
+ throw new errors.AthenaIntelligenceError({
749
+ statusCode: _response.error.statusCode,
750
+ body: _response.error.body,
751
+ rawResponse: _response.rawResponse,
752
+ });
753
+ }
754
+ }
755
+ switch (_response.error.reason) {
756
+ case "non-json":
757
+ throw new errors.AthenaIntelligenceError({
758
+ statusCode: _response.error.statusCode,
759
+ body: _response.error.rawBody,
760
+ rawResponse: _response.rawResponse,
761
+ });
762
+ case "body-is-null":
763
+ throw new errors.AthenaIntelligenceError({
764
+ statusCode: _response.error.statusCode,
765
+ rawResponse: _response.rawResponse,
766
+ });
767
+ case "timeout":
768
+ throw new errors.AthenaIntelligenceTimeoutError("Timeout exceeded when calling POST /api/v0/databases/{asset_id}/sql.");
769
+ case "unknown":
770
+ throw new errors.AthenaIntelligenceError({
771
+ message: _response.error.errorMessage,
772
+ rawResponse: _response.rawResponse,
773
+ });
774
+ }
775
+ });
776
+ }
683
777
  /**
684
778
  * Check if a database is running, suspended, or starting up. Poll this endpoint to determine when a serverless database is ready.
685
779
  *
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @example
3
+ * {
4
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
5
+ * }
6
+ */
7
+ export interface DatabaseSqlRequest {
8
+ /** SQL statement to execute */
9
+ sql: string;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +1,4 @@
1
+ export type { DatabaseSqlRequest } from "./DatabaseSqlRequest.js";
1
2
  export type { DatabasesDeleteRequest } from "./DatabasesDeleteRequest.js";
2
3
  export type { DatabasesSelectRequest } from "./DatabasesSelectRequest.js";
3
4
  export type { InsertDataRequest } from "./InsertDataRequest.js";
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Response for direct SQL execution.
3
+ *
4
+ * For SELECT queries, ``columns`` and ``rows`` are populated.
5
+ * For non-SELECT statements (DDL/DML), ``statuses`` is populated.
6
+ */
7
+ export interface DatabaseSqlResponse {
8
+ /** Column names (populated for SELECT queries) */
9
+ columns?: string[];
10
+ /** Row data as objects (populated for SELECT queries) */
11
+ rows?: Record<string, unknown>[];
12
+ /** Execution statuses (populated for non-SELECT statements) */
13
+ statuses?: string[];
14
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -22,6 +22,7 @@ export * from "./CustomAgentResponse.js";
22
22
  export * from "./DatabaseColumnInfo.js";
23
23
  export * from "./DatabaseDataResponse.js";
24
24
  export * from "./DatabaseMutationResponse.js";
25
+ export * from "./DatabaseSqlResponse.js";
25
26
  export * from "./DatabaseStatusResponse.js";
26
27
  export * from "./DatabaseTableInfo.js";
27
28
  export * from "./DatabaseTableSchemaResponse.js";
@@ -38,6 +38,7 @@ __exportStar(require("./CustomAgentResponse.js"), exports);
38
38
  __exportStar(require("./DatabaseColumnInfo.js"), exports);
39
39
  __exportStar(require("./DatabaseDataResponse.js"), exports);
40
40
  __exportStar(require("./DatabaseMutationResponse.js"), exports);
41
+ __exportStar(require("./DatabaseSqlResponse.js"), exports);
41
42
  __exportStar(require("./DatabaseStatusResponse.js"), exports);
42
43
  __exportStar(require("./DatabaseTableInfo.js"), exports);
43
44
  __exportStar(require("./DatabaseTableSchemaResponse.js"), exports);
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "4.3.864";
1
+ export declare const SDK_VERSION = "4.3.866";
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SDK_VERSION = void 0;
4
- exports.SDK_VERSION = "4.3.864";
4
+ exports.SDK_VERSION = "4.3.866";
@@ -6,8 +6,8 @@ export function normalizeClientOptions(options) {
6
6
  const headers = mergeHeaders({
7
7
  "X-Fern-Language": "JavaScript",
8
8
  "X-Fern-SDK-Name": "@athenaintel/sdk",
9
- "X-Fern-SDK-Version": "4.3.864",
10
- "User-Agent": "@athenaintel/sdk/4.3.864",
9
+ "X-Fern-SDK-Version": "4.3.866",
10
+ "User-Agent": "@athenaintel/sdk/4.3.866",
11
11
  "X-Fern-Runtime": core.RUNTIME.type,
12
12
  "X-Fern-Runtime-Version": core.RUNTIME.version,
13
13
  }, options === null || options === void 0 ? void 0 : options.headers);
@@ -191,6 +191,28 @@ export declare class DatabasesClient {
191
191
  */
192
192
  getTableSchema(asset_id: string, table_name: string, requestOptions?: DatabasesClient.RequestOptions): core.HttpResponsePromise<AthenaIntelligence.DatabaseTableSchemaResponse>;
193
193
  private __getTableSchema;
194
+ /**
195
+ * Execute a SQL statement against the database. SELECT queries return columns and rows. Non-SELECT statements (CREATE, INSERT, UPDATE, DELETE, ALTER, DROP, etc.) return execution statuses.
196
+ *
197
+ * @param {string} asset_id
198
+ * @param {AthenaIntelligence.DatabaseSqlRequest} request
199
+ * @param {DatabasesClient.RequestOptions} requestOptions - Request-specific configuration.
200
+ *
201
+ * @throws {@link AthenaIntelligence.BadRequestError}
202
+ * @throws {@link AthenaIntelligence.ForbiddenError}
203
+ * @throws {@link AthenaIntelligence.NotFoundError}
204
+ * @throws {@link AthenaIntelligence.UnprocessableEntityError}
205
+ * @throws {@link AthenaIntelligence.InternalServerError}
206
+ * @throws {@link AthenaIntelligence.NotImplementedError}
207
+ * @throws {@link AthenaIntelligence.ServiceUnavailableError}
208
+ *
209
+ * @example
210
+ * await client.databases.executeSql("asset_id", {
211
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
212
+ * })
213
+ */
214
+ executeSql(asset_id: string, request: AthenaIntelligence.DatabaseSqlRequest, requestOptions?: DatabasesClient.RequestOptions): core.HttpResponsePromise<AthenaIntelligence.DatabaseSqlResponse>;
215
+ private __executeSql;
194
216
  /**
195
217
  * Check if a database is running, suspended, or starting up. Poll this endpoint to determine when a serverless database is ready.
196
218
  *
@@ -644,6 +644,100 @@ export class DatabasesClient {
644
644
  }
645
645
  });
646
646
  }
647
+ /**
648
+ * Execute a SQL statement against the database. SELECT queries return columns and rows. Non-SELECT statements (CREATE, INSERT, UPDATE, DELETE, ALTER, DROP, etc.) return execution statuses.
649
+ *
650
+ * @param {string} asset_id
651
+ * @param {AthenaIntelligence.DatabaseSqlRequest} request
652
+ * @param {DatabasesClient.RequestOptions} requestOptions - Request-specific configuration.
653
+ *
654
+ * @throws {@link AthenaIntelligence.BadRequestError}
655
+ * @throws {@link AthenaIntelligence.ForbiddenError}
656
+ * @throws {@link AthenaIntelligence.NotFoundError}
657
+ * @throws {@link AthenaIntelligence.UnprocessableEntityError}
658
+ * @throws {@link AthenaIntelligence.InternalServerError}
659
+ * @throws {@link AthenaIntelligence.NotImplementedError}
660
+ * @throws {@link AthenaIntelligence.ServiceUnavailableError}
661
+ *
662
+ * @example
663
+ * await client.databases.executeSql("asset_id", {
664
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
665
+ * })
666
+ */
667
+ executeSql(asset_id, request, requestOptions) {
668
+ return core.HttpResponsePromise.fromPromise(this.__executeSql(asset_id, request, requestOptions));
669
+ }
670
+ __executeSql(asset_id, request, requestOptions) {
671
+ return __awaiter(this, void 0, void 0, function* () {
672
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
673
+ const _authRequest = yield this._options.authProvider.getAuthRequest();
674
+ const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
675
+ const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
676
+ url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.AthenaIntelligenceEnvironment.Production, `api/v0/databases/${core.url.encodePathParam(asset_id)}/sql`),
677
+ method: "POST",
678
+ headers: _headers,
679
+ contentType: "application/json",
680
+ queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
681
+ requestType: "json",
682
+ body: request,
683
+ timeoutMs: ((_g = (_e = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _e !== void 0 ? _e : (_f = this._options) === null || _f === void 0 ? void 0 : _f.timeoutInSeconds) !== null && _g !== void 0 ? _g : 60) * 1000,
684
+ maxRetries: (_h = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _h !== void 0 ? _h : (_j = this._options) === null || _j === void 0 ? void 0 : _j.maxRetries,
685
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
686
+ fetchFn: (_k = this._options) === null || _k === void 0 ? void 0 : _k.fetch,
687
+ logging: this._options.logging,
688
+ });
689
+ if (_response.ok) {
690
+ return {
691
+ data: _response.body,
692
+ rawResponse: _response.rawResponse,
693
+ };
694
+ }
695
+ if (_response.error.reason === "status-code") {
696
+ switch (_response.error.statusCode) {
697
+ case 400:
698
+ throw new AthenaIntelligence.BadRequestError(_response.error.body, _response.rawResponse);
699
+ case 403:
700
+ throw new AthenaIntelligence.ForbiddenError(_response.error.body, _response.rawResponse);
701
+ case 404:
702
+ throw new AthenaIntelligence.NotFoundError(_response.error.body, _response.rawResponse);
703
+ case 422:
704
+ throw new AthenaIntelligence.UnprocessableEntityError(_response.error.body, _response.rawResponse);
705
+ case 500:
706
+ throw new AthenaIntelligence.InternalServerError(_response.error.body, _response.rawResponse);
707
+ case 501:
708
+ throw new AthenaIntelligence.NotImplementedError(_response.error.body, _response.rawResponse);
709
+ case 503:
710
+ throw new AthenaIntelligence.ServiceUnavailableError(_response.error.body, _response.rawResponse);
711
+ default:
712
+ throw new errors.AthenaIntelligenceError({
713
+ statusCode: _response.error.statusCode,
714
+ body: _response.error.body,
715
+ rawResponse: _response.rawResponse,
716
+ });
717
+ }
718
+ }
719
+ switch (_response.error.reason) {
720
+ case "non-json":
721
+ throw new errors.AthenaIntelligenceError({
722
+ statusCode: _response.error.statusCode,
723
+ body: _response.error.rawBody,
724
+ rawResponse: _response.rawResponse,
725
+ });
726
+ case "body-is-null":
727
+ throw new errors.AthenaIntelligenceError({
728
+ statusCode: _response.error.statusCode,
729
+ rawResponse: _response.rawResponse,
730
+ });
731
+ case "timeout":
732
+ throw new errors.AthenaIntelligenceTimeoutError("Timeout exceeded when calling POST /api/v0/databases/{asset_id}/sql.");
733
+ case "unknown":
734
+ throw new errors.AthenaIntelligenceError({
735
+ message: _response.error.errorMessage,
736
+ rawResponse: _response.rawResponse,
737
+ });
738
+ }
739
+ });
740
+ }
647
741
  /**
648
742
  * Check if a database is running, suspended, or starting up. Poll this endpoint to determine when a serverless database is ready.
649
743
  *
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @example
3
+ * {
4
+ * sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
5
+ * }
6
+ */
7
+ export interface DatabaseSqlRequest {
8
+ /** SQL statement to execute */
9
+ sql: string;
10
+ }
@@ -0,0 +1,2 @@
1
+ // This file was auto-generated by Fern from our API Definition.
2
+ export {};
@@ -1,3 +1,4 @@
1
+ export type { DatabaseSqlRequest } from "./DatabaseSqlRequest.mjs";
1
2
  export type { DatabasesDeleteRequest } from "./DatabasesDeleteRequest.mjs";
2
3
  export type { DatabasesSelectRequest } from "./DatabasesSelectRequest.mjs";
3
4
  export type { InsertDataRequest } from "./InsertDataRequest.mjs";
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Response for direct SQL execution.
3
+ *
4
+ * For SELECT queries, ``columns`` and ``rows`` are populated.
5
+ * For non-SELECT statements (DDL/DML), ``statuses`` is populated.
6
+ */
7
+ export interface DatabaseSqlResponse {
8
+ /** Column names (populated for SELECT queries) */
9
+ columns?: string[];
10
+ /** Row data as objects (populated for SELECT queries) */
11
+ rows?: Record<string, unknown>[];
12
+ /** Execution statuses (populated for non-SELECT statements) */
13
+ statuses?: string[];
14
+ }
@@ -0,0 +1,2 @@
1
+ // This file was auto-generated by Fern from our API Definition.
2
+ export {};
@@ -22,6 +22,7 @@ export * from "./CustomAgentResponse.mjs";
22
22
  export * from "./DatabaseColumnInfo.mjs";
23
23
  export * from "./DatabaseDataResponse.mjs";
24
24
  export * from "./DatabaseMutationResponse.mjs";
25
+ export * from "./DatabaseSqlResponse.mjs";
25
26
  export * from "./DatabaseStatusResponse.mjs";
26
27
  export * from "./DatabaseTableInfo.mjs";
27
28
  export * from "./DatabaseTableSchemaResponse.mjs";
@@ -22,6 +22,7 @@ export * from "./CustomAgentResponse.mjs";
22
22
  export * from "./DatabaseColumnInfo.mjs";
23
23
  export * from "./DatabaseDataResponse.mjs";
24
24
  export * from "./DatabaseMutationResponse.mjs";
25
+ export * from "./DatabaseSqlResponse.mjs";
25
26
  export * from "./DatabaseStatusResponse.mjs";
26
27
  export * from "./DatabaseTableInfo.mjs";
27
28
  export * from "./DatabaseTableSchemaResponse.mjs";
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "4.3.864";
1
+ export declare const SDK_VERSION = "4.3.866";
@@ -1 +1 @@
1
- export const SDK_VERSION = "4.3.864";
1
+ export const SDK_VERSION = "4.3.866";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@athenaintel/sdk",
3
- "version": "4.3.864",
3
+ "version": "4.3.866",
4
4
  "private": false,
5
5
  "repository": "github:Athena-Intel/athena-typescript",
6
6
  "type": "commonjs",
package/reference.md CHANGED
@@ -1008,6 +1008,79 @@ await client.databases.getTableSchema("asset_id", "table_name");
1008
1008
  </dl>
1009
1009
 
1010
1010
 
1011
+ </dd>
1012
+ </dl>
1013
+ </details>
1014
+
1015
+ <details><summary><code>client.databases.<a href="/src/api/resources/databases/client/Client.ts">executeSql</a>(asset_id, { ...params }) -> AthenaIntelligence.DatabaseSqlResponse</code></summary>
1016
+ <dl>
1017
+ <dd>
1018
+
1019
+ #### 📝 Description
1020
+
1021
+ <dl>
1022
+ <dd>
1023
+
1024
+ <dl>
1025
+ <dd>
1026
+
1027
+ Execute a SQL statement against the database. SELECT queries return columns and rows. Non-SELECT statements (CREATE, INSERT, UPDATE, DELETE, ALTER, DROP, etc.) return execution statuses.
1028
+ </dd>
1029
+ </dl>
1030
+ </dd>
1031
+ </dl>
1032
+
1033
+ #### 🔌 Usage
1034
+
1035
+ <dl>
1036
+ <dd>
1037
+
1038
+ <dl>
1039
+ <dd>
1040
+
1041
+ ```typescript
1042
+ await client.databases.executeSql("asset_id", {
1043
+ sql: "SELECT id, name FROM users WHERE active = true LIMIT 10"
1044
+ });
1045
+
1046
+ ```
1047
+ </dd>
1048
+ </dl>
1049
+ </dd>
1050
+ </dl>
1051
+
1052
+ #### ⚙️ Parameters
1053
+
1054
+ <dl>
1055
+ <dd>
1056
+
1057
+ <dl>
1058
+ <dd>
1059
+
1060
+ **asset_id:** `string`
1061
+
1062
+ </dd>
1063
+ </dl>
1064
+
1065
+ <dl>
1066
+ <dd>
1067
+
1068
+ **request:** `AthenaIntelligence.DatabaseSqlRequest`
1069
+
1070
+ </dd>
1071
+ </dl>
1072
+
1073
+ <dl>
1074
+ <dd>
1075
+
1076
+ **requestOptions:** `DatabasesClient.RequestOptions`
1077
+
1078
+ </dd>
1079
+ </dl>
1080
+ </dd>
1081
+ </dl>
1082
+
1083
+
1011
1084
  </dd>
1012
1085
  </dl>
1013
1086
  </details>