@squadbase/vite-server 0.1.3-dev.2 → 0.1.3-dev.3
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/dist/cli/index.js +701 -976
- package/dist/index.js +699 -974
- package/dist/main.js +699 -974
- package/dist/vite-plugin.js +699 -974
- package/package.json +2 -2
package/dist/cli/index.js
CHANGED
|
@@ -7216,8 +7216,8 @@ var init_body = __esm({
|
|
|
7216
7216
|
const ct = this.headers.get("content-type");
|
|
7217
7217
|
if (ct.startsWith("application/x-www-form-urlencoded")) {
|
|
7218
7218
|
const formData = new FormData2();
|
|
7219
|
-
const
|
|
7220
|
-
for (const [name, value] of
|
|
7219
|
+
const parameters59 = new URLSearchParams(await this.text());
|
|
7220
|
+
for (const [name, value] of parameters59) {
|
|
7221
7221
|
formData.append(name, value);
|
|
7222
7222
|
}
|
|
7223
7223
|
return formData;
|
|
@@ -10165,11 +10165,11 @@ var require_bignumber = __commonJS({
|
|
|
10165
10165
|
return n6 > 0 || n6 === i7 ? i7 : i7 - 1;
|
|
10166
10166
|
}
|
|
10167
10167
|
function coeffToString(a6) {
|
|
10168
|
-
var s7,
|
|
10168
|
+
var s7, z72, i7 = 1, j6 = a6.length, r7 = a6[0] + "";
|
|
10169
10169
|
for (; i7 < j6; ) {
|
|
10170
10170
|
s7 = a6[i7++] + "";
|
|
10171
|
-
|
|
10172
|
-
for (;
|
|
10171
|
+
z72 = LOG_BASE - s7.length;
|
|
10172
|
+
for (; z72--; s7 = "0" + s7) ;
|
|
10173
10173
|
r7 += s7;
|
|
10174
10174
|
}
|
|
10175
10175
|
for (j6 = r7.length; r7.charCodeAt(--j6) === 48; ) ;
|
|
@@ -10202,15 +10202,15 @@ var require_bignumber = __commonJS({
|
|
|
10202
10202
|
function toExponential(str, e7) {
|
|
10203
10203
|
return (str.length > 1 ? str.charAt(0) + "." + str.slice(1) : str) + (e7 < 0 ? "e" : "e+") + e7;
|
|
10204
10204
|
}
|
|
10205
|
-
function toFixedPoint(str, e7,
|
|
10205
|
+
function toFixedPoint(str, e7, z72) {
|
|
10206
10206
|
var len, zs;
|
|
10207
10207
|
if (e7 < 0) {
|
|
10208
|
-
for (zs =
|
|
10208
|
+
for (zs = z72 + "."; ++e7; zs += z72) ;
|
|
10209
10209
|
str = zs + str;
|
|
10210
10210
|
} else {
|
|
10211
10211
|
len = str.length;
|
|
10212
10212
|
if (++e7 > len) {
|
|
10213
|
-
for (zs =
|
|
10213
|
+
for (zs = z72, e7 -= len; --e7; zs += z72) ;
|
|
10214
10214
|
str += zs;
|
|
10215
10215
|
} else if (e7 < len) {
|
|
10216
10216
|
str = str.slice(0, e7) + "." + str.slice(e7);
|
|
@@ -37094,14 +37094,14 @@ var init_NormalizedSchema = __esm({
|
|
|
37094
37094
|
throw new Error("@smithy/core/schema - cannot iterate non-struct schema.");
|
|
37095
37095
|
}
|
|
37096
37096
|
const struct = this.getSchema();
|
|
37097
|
-
const
|
|
37097
|
+
const z72 = struct[4].length;
|
|
37098
37098
|
let it = struct[anno.it];
|
|
37099
|
-
if (it &&
|
|
37099
|
+
if (it && z72 === it.length) {
|
|
37100
37100
|
yield* it;
|
|
37101
37101
|
return;
|
|
37102
37102
|
}
|
|
37103
|
-
it = Array(
|
|
37104
|
-
for (let i7 = 0; i7 <
|
|
37103
|
+
it = Array(z72);
|
|
37104
|
+
for (let i7 = 0; i7 < z72; ++i7) {
|
|
37105
37105
|
const k6 = struct[4][i7];
|
|
37106
37106
|
const v7 = member([struct[5][i7], 0], k6);
|
|
37107
37107
|
yield it[i7] = [k6, v7];
|
|
@@ -37777,12 +37777,12 @@ var init_split_header = __esm({
|
|
|
37777
37777
|
"../../node_modules/@smithy/core/dist-es/submodules/serde/split-header.js"() {
|
|
37778
37778
|
"use strict";
|
|
37779
37779
|
splitHeader = (value) => {
|
|
37780
|
-
const
|
|
37780
|
+
const z72 = value.length;
|
|
37781
37781
|
const values = [];
|
|
37782
37782
|
let withinQuotes = false;
|
|
37783
37783
|
let prevChar = void 0;
|
|
37784
37784
|
let anchor = 0;
|
|
37785
|
-
for (let i7 = 0; i7 <
|
|
37785
|
+
for (let i7 = 0; i7 < z72; ++i7) {
|
|
37786
37786
|
const char = value[i7];
|
|
37787
37787
|
switch (char) {
|
|
37788
37788
|
case `"`:
|
|
@@ -37803,12 +37803,12 @@ var init_split_header = __esm({
|
|
|
37803
37803
|
values.push(value.slice(anchor));
|
|
37804
37804
|
return values.map((v7) => {
|
|
37805
37805
|
v7 = v7.trim();
|
|
37806
|
-
const
|
|
37807
|
-
if (
|
|
37806
|
+
const z73 = v7.length;
|
|
37807
|
+
if (z73 < 2) {
|
|
37808
37808
|
return v7;
|
|
37809
37809
|
}
|
|
37810
|
-
if (v7[0] === `"` && v7[
|
|
37811
|
-
v7 = v7.slice(1,
|
|
37810
|
+
if (v7[0] === `"` && v7[z73 - 1] === `"`) {
|
|
37811
|
+
v7 = v7.slice(1, z73 - 1);
|
|
37812
37812
|
}
|
|
37813
37813
|
return v7.replace(/\\"/g, '"');
|
|
37814
37814
|
});
|
|
@@ -39206,11 +39206,11 @@ var init_EndpointCache = __esm({
|
|
|
39206
39206
|
}
|
|
39207
39207
|
hash(endpointParams) {
|
|
39208
39208
|
let buffer = "";
|
|
39209
|
-
const { parameters:
|
|
39210
|
-
if (
|
|
39209
|
+
const { parameters: parameters59 } = this;
|
|
39210
|
+
if (parameters59.length === 0) {
|
|
39211
39211
|
return false;
|
|
39212
39212
|
}
|
|
39213
|
-
for (const param of
|
|
39213
|
+
for (const param of parameters59) {
|
|
39214
39214
|
const val = String(endpointParams[param] ?? "");
|
|
39215
39215
|
if (val.includes("|;")) {
|
|
39216
39216
|
return false;
|
|
@@ -39927,15 +39927,15 @@ var init_resolveEndpoint = __esm({
|
|
|
39927
39927
|
init_utils();
|
|
39928
39928
|
resolveEndpoint = (ruleSetObject, options) => {
|
|
39929
39929
|
const { endpointParams, logger: logger2 } = options;
|
|
39930
|
-
const { parameters:
|
|
39930
|
+
const { parameters: parameters59, rules } = ruleSetObject;
|
|
39931
39931
|
options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
|
|
39932
|
-
const paramsWithDefault = Object.entries(
|
|
39932
|
+
const paramsWithDefault = Object.entries(parameters59).filter(([, v7]) => v7.default != null).map(([k6, v7]) => [k6, v7.default]);
|
|
39933
39933
|
if (paramsWithDefault.length > 0) {
|
|
39934
39934
|
for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
|
|
39935
39935
|
endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
|
|
39936
39936
|
}
|
|
39937
39937
|
}
|
|
39938
|
-
const requiredParams = Object.entries(
|
|
39938
|
+
const requiredParams = Object.entries(parameters59).filter(([, v7]) => v7.required).map(([k6]) => k6);
|
|
39939
39939
|
for (const requiredParam of requiredParams) {
|
|
39940
39940
|
if (endpointParams[requiredParam] == null) {
|
|
39941
39941
|
throw new EndpointError(`Missing required parameter: '${requiredParam}'`);
|
|
@@ -45545,8 +45545,8 @@ var init_ProtocolLib = __esm({
|
|
|
45545
45545
|
constructor(queryCompat = false) {
|
|
45546
45546
|
this.queryCompat = queryCompat;
|
|
45547
45547
|
}
|
|
45548
|
-
resolveRestContentType(defaultContentType,
|
|
45549
|
-
const members =
|
|
45548
|
+
resolveRestContentType(defaultContentType, inputSchema69) {
|
|
45549
|
+
const members = inputSchema69.getMemberSchemas();
|
|
45550
45550
|
const httpPayloadMember = Object.values(members).find((m7) => {
|
|
45551
45551
|
return !!m7.getMergedTraits().httpPayload;
|
|
45552
45552
|
});
|
|
@@ -45561,7 +45561,7 @@ var init_ProtocolLib = __esm({
|
|
|
45561
45561
|
} else {
|
|
45562
45562
|
return defaultContentType;
|
|
45563
45563
|
}
|
|
45564
|
-
} else if (!
|
|
45564
|
+
} else if (!inputSchema69.isUnitSchema()) {
|
|
45565
45565
|
const hasBody = Object.values(members).find((m7) => {
|
|
45566
45566
|
const { httpQuery, httpQueryParams, httpHeader, httpLabel, httpPrefixHeaders } = m7.getMergedTraits();
|
|
45567
45567
|
const noPrefixHeaders = httpPrefixHeaders === void 0;
|
|
@@ -46404,9 +46404,9 @@ var init_AwsRestJsonProtocol = __esm({
|
|
|
46404
46404
|
}
|
|
46405
46405
|
async serializeRequest(operationSchema, input, context) {
|
|
46406
46406
|
const request2 = await super.serializeRequest(operationSchema, input, context);
|
|
46407
|
-
const
|
|
46407
|
+
const inputSchema69 = NormalizedSchema.of(operationSchema.input);
|
|
46408
46408
|
if (!request2.headers["content-type"]) {
|
|
46409
|
-
const contentType = this.mixin.resolveRestContentType(this.getDefaultContentType(),
|
|
46409
|
+
const contentType = this.mixin.resolveRestContentType(this.getDefaultContentType(), inputSchema69);
|
|
46410
46410
|
if (contentType) {
|
|
46411
46411
|
request2.headers["content-type"] = contentType;
|
|
46412
46412
|
}
|
|
@@ -46418,8 +46418,8 @@ var init_AwsRestJsonProtocol = __esm({
|
|
|
46418
46418
|
}
|
|
46419
46419
|
async deserializeResponse(operationSchema, context, response) {
|
|
46420
46420
|
const output = await super.deserializeResponse(operationSchema, context, response);
|
|
46421
|
-
const
|
|
46422
|
-
for (const [name, member2] of
|
|
46421
|
+
const outputSchema69 = NormalizedSchema.of(operationSchema.output);
|
|
46422
|
+
for (const [name, member2] of outputSchema69.structIterator()) {
|
|
46423
46423
|
if (member2.getMemberTraits().httpPayload && !(name in output)) {
|
|
46424
46424
|
output[name] = null;
|
|
46425
46425
|
}
|
|
@@ -49454,14 +49454,14 @@ var init_protocols2 = __esm({
|
|
|
49454
49454
|
});
|
|
49455
49455
|
|
|
49456
49456
|
// ../../node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/ruleset.js
|
|
49457
|
-
var w, x2, y,
|
|
49457
|
+
var w, x2, y, z43, a, b, c, d, e2, f3, g, h2, i2, j, k, l, m2, n, o, p, q, r2, s2, t2, u, v, _data, ruleSet;
|
|
49458
49458
|
var init_ruleset = __esm({
|
|
49459
49459
|
"../../node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/ruleset.js"() {
|
|
49460
49460
|
"use strict";
|
|
49461
49461
|
w = "required";
|
|
49462
49462
|
x2 = "fn";
|
|
49463
49463
|
y = "argv";
|
|
49464
|
-
|
|
49464
|
+
z43 = "ref";
|
|
49465
49465
|
a = true;
|
|
49466
49466
|
b = "isSet";
|
|
49467
49467
|
c = "booleanEquals";
|
|
@@ -49473,13 +49473,13 @@ var init_ruleset = __esm({
|
|
|
49473
49473
|
i2 = "stringEquals";
|
|
49474
49474
|
j = { [w]: false, type: "string" };
|
|
49475
49475
|
k = { [w]: true, default: false, type: "boolean" };
|
|
49476
|
-
l = { [
|
|
49477
|
-
m2 = { [x2]: c, [y]: [{ [
|
|
49478
|
-
n = { [x2]: c, [y]: [{ [
|
|
49476
|
+
l = { [z43]: "Endpoint" };
|
|
49477
|
+
m2 = { [x2]: c, [y]: [{ [z43]: "UseFIPS" }, true] };
|
|
49478
|
+
n = { [x2]: c, [y]: [{ [z43]: "UseDualStack" }, true] };
|
|
49479
49479
|
o = {};
|
|
49480
|
-
p = { [
|
|
49481
|
-
q = { [x2]: h2, [y]: [{ [
|
|
49482
|
-
r2 = { [
|
|
49480
|
+
p = { [z43]: "Region" };
|
|
49481
|
+
q = { [x2]: h2, [y]: [{ [z43]: g }, "supportsFIPS"] };
|
|
49482
|
+
r2 = { [z43]: g };
|
|
49483
49483
|
s2 = { [x2]: c, [y]: [true, { [x2]: h2, [y]: [r2, "supportsDualStack"] }] };
|
|
49484
49484
|
t2 = [m2];
|
|
49485
49485
|
u = [n];
|
|
@@ -50283,22 +50283,22 @@ var init_loadCognitoIdentity = __esm({
|
|
|
50283
50283
|
});
|
|
50284
50284
|
|
|
50285
50285
|
// ../../node_modules/@aws-sdk/credential-provider-cognito-identity/dist-es/fromCognitoIdentity.js
|
|
50286
|
-
function fromCognitoIdentity(
|
|
50286
|
+
function fromCognitoIdentity(parameters59) {
|
|
50287
50287
|
return async (awsIdentityProperties) => {
|
|
50288
|
-
|
|
50288
|
+
parameters59.logger?.debug("@aws-sdk/credential-provider-cognito-identity - fromCognitoIdentity");
|
|
50289
50289
|
const { GetCredentialsForIdentityCommand: GetCredentialsForIdentityCommand2, CognitoIdentityClient: CognitoIdentityClient2 } = await Promise.resolve().then(() => (init_loadCognitoIdentity(), loadCognitoIdentity_exports));
|
|
50290
|
-
const fromConfigs = (property) =>
|
|
50291
|
-
const { Credentials: { AccessKeyId = throwOnMissingAccessKeyId(
|
|
50290
|
+
const fromConfigs = (property) => parameters59.clientConfig?.[property] ?? parameters59.parentClientConfig?.[property] ?? awsIdentityProperties?.callerClientConfig?.[property];
|
|
50291
|
+
const { Credentials: { AccessKeyId = throwOnMissingAccessKeyId(parameters59.logger), Expiration, SecretKey = throwOnMissingSecretKey(parameters59.logger), SessionToken } = throwOnMissingCredentials(parameters59.logger) } = await (parameters59.client ?? new CognitoIdentityClient2(Object.assign({}, parameters59.clientConfig ?? {}, {
|
|
50292
50292
|
region: fromConfigs("region"),
|
|
50293
50293
|
profile: fromConfigs("profile"),
|
|
50294
50294
|
userAgentAppId: fromConfigs("userAgentAppId")
|
|
50295
50295
|
}))).send(new GetCredentialsForIdentityCommand2({
|
|
50296
|
-
CustomRoleArn:
|
|
50297
|
-
IdentityId:
|
|
50298
|
-
Logins:
|
|
50296
|
+
CustomRoleArn: parameters59.customRoleArn,
|
|
50297
|
+
IdentityId: parameters59.identityId,
|
|
50298
|
+
Logins: parameters59.logins ? await resolveLogins(parameters59.logins) : void 0
|
|
50299
50299
|
}));
|
|
50300
50300
|
return {
|
|
50301
|
-
identityId:
|
|
50301
|
+
identityId: parameters59.identityId,
|
|
50302
50302
|
accessKeyId: AccessKeyId,
|
|
50303
50303
|
secretAccessKey: SecretKey,
|
|
50304
50304
|
sessionToken: SessionToken,
|
|
@@ -50926,7 +50926,7 @@ var init_EndpointParameters2 = __esm({
|
|
|
50926
50926
|
});
|
|
50927
50927
|
|
|
50928
50928
|
// ../../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/ruleset.js
|
|
50929
|
-
var F2, G, H, I, J, a2, b2, c2, d2, e3, f4, g2, h3, i3, j2, k2, l2, m3, n2, o2, p2, q2, r3, s3, t3, u2, v2, w2, x3, y2,
|
|
50929
|
+
var F2, G, H, I, J, a2, b2, c2, d2, e3, f4, g2, h3, i3, j2, k2, l2, m3, n2, o2, p2, q2, r3, s3, t3, u2, v2, w2, x3, y2, z44, A2, B, C, D, E, _data2, ruleSet2;
|
|
50930
50930
|
var init_ruleset2 = __esm({
|
|
50931
50931
|
"../../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/ruleset.js"() {
|
|
50932
50932
|
"use strict";
|
|
@@ -50964,7 +50964,7 @@ var init_ruleset2 = __esm({
|
|
|
50964
50964
|
w2 = { conditions: [{ [H]: d2, [I]: [q2, "aws-global"] }], [h3]: u2, [G]: h3 };
|
|
50965
50965
|
x3 = { [H]: c2, [I]: [s3, true] };
|
|
50966
50966
|
y2 = { [H]: c2, [I]: [t3, true] };
|
|
50967
|
-
|
|
50967
|
+
z44 = { [H]: l2, [I]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
|
|
50968
50968
|
A2 = { [J]: "PartitionResult" };
|
|
50969
50969
|
B = { [H]: c2, [I]: [true, { [H]: l2, [I]: [A2, "supportsDualStack"] }] };
|
|
50970
50970
|
C = [{ [H]: "isSet", [I]: [o2] }];
|
|
@@ -51030,7 +51030,7 @@ var init_ruleset2 = __esm({
|
|
|
51030
51030
|
conditions: [x3, y2],
|
|
51031
51031
|
rules: [
|
|
51032
51032
|
{
|
|
51033
|
-
conditions: [{ [H]: c2, [I]: [b2,
|
|
51033
|
+
conditions: [{ [H]: c2, [I]: [b2, z44] }, B],
|
|
51034
51034
|
rules: [
|
|
51035
51035
|
{
|
|
51036
51036
|
endpoint: {
|
|
@@ -51051,7 +51051,7 @@ var init_ruleset2 = __esm({
|
|
|
51051
51051
|
conditions: D,
|
|
51052
51052
|
rules: [
|
|
51053
51053
|
{
|
|
51054
|
-
conditions: [{ [H]: c2, [I]: [
|
|
51054
|
+
conditions: [{ [H]: c2, [I]: [z44, b2] }],
|
|
51055
51055
|
rules: [
|
|
51056
51056
|
{
|
|
51057
51057
|
conditions: [{ [H]: d2, [I]: [{ [H]: l2, [I]: [A2, "name"] }, "aws-us-gov"] }],
|
|
@@ -92828,280 +92828,6 @@ export default async function handler(c: Context) {
|
|
|
92828
92828
|
tools: tools38
|
|
92829
92829
|
});
|
|
92830
92830
|
|
|
92831
|
-
// ../connectors/src/connectors/trino/setup.ts
|
|
92832
|
-
var trinoOnboarding = new ConnectorOnboarding({
|
|
92833
|
-
dataOverviewInstructions: {
|
|
92834
|
-
en: `1. Use executeQuery to list catalogs: \`SHOW CATALOGS\`
|
|
92835
|
-
2. Use executeQuery to list schemas in a catalog: \`SHOW SCHEMAS IN catalog_name\`
|
|
92836
|
-
3. Use executeQuery to list tables in a schema: \`SHOW TABLES IN catalog_name.schema_name\`
|
|
92837
|
-
4. For key tables, use executeQuery to get column info: \`DESCRIBE catalog_name.schema_name.table_name\`
|
|
92838
|
-
5. Sample up to 3 tables with \`SELECT * FROM catalog_name.schema_name.table_name LIMIT 5\` if column info alone is insufficient`,
|
|
92839
|
-
ja: `1. executeQuery \u3067\u30AB\u30BF\u30ED\u30B0\u4E00\u89A7\u3092\u53D6\u5F97: \`SHOW CATALOGS\`
|
|
92840
|
-
2. executeQuery \u3067\u30B9\u30AD\u30FC\u30DE\u4E00\u89A7\u3092\u53D6\u5F97: \`SHOW SCHEMAS IN catalog_name\`
|
|
92841
|
-
3. executeQuery \u3067\u30C6\u30FC\u30D6\u30EB\u4E00\u89A7\u3092\u53D6\u5F97: \`SHOW TABLES IN catalog_name.schema_name\`
|
|
92842
|
-
4. \u4E3B\u8981\u30C6\u30FC\u30D6\u30EB\u306B\u3064\u3044\u3066 executeQuery \u3067\u30AB\u30E9\u30E0\u60C5\u5831\u3092\u53D6\u5F97: \`DESCRIBE catalog_name.schema_name.table_name\`
|
|
92843
|
-
5. \u30AB\u30E9\u30E0\u60C5\u5831\u3060\u3051\u3067\u306F\u4E0D\u5341\u5206\u306A\u5834\u5408\u3001\u6700\u59273\u30C6\u30FC\u30D6\u30EB\u3092 \`SELECT * FROM catalog_name.schema_name.table_name LIMIT 5\` \u3067\u30B5\u30F3\u30D7\u30EA\u30F3\u30B0`
|
|
92844
|
-
}
|
|
92845
|
-
});
|
|
92846
|
-
|
|
92847
|
-
// ../connectors/src/connectors/trino/parameters.ts
|
|
92848
|
-
var parameters39 = {
|
|
92849
|
-
host: new ParameterDefinition({
|
|
92850
|
-
slug: "host",
|
|
92851
|
-
name: "Trino Server URL",
|
|
92852
|
-
description: "The Trino server URL (e.g., https://trino.example.com:8443).",
|
|
92853
|
-
envVarBaseKey: "TRINO_HOST",
|
|
92854
|
-
type: "text",
|
|
92855
|
-
secret: false,
|
|
92856
|
-
required: true
|
|
92857
|
-
}),
|
|
92858
|
-
user: new ParameterDefinition({
|
|
92859
|
-
slug: "user",
|
|
92860
|
-
name: "Trino User",
|
|
92861
|
-
description: "The username for Trino authentication.",
|
|
92862
|
-
envVarBaseKey: "TRINO_USER",
|
|
92863
|
-
type: "text",
|
|
92864
|
-
secret: false,
|
|
92865
|
-
required: true
|
|
92866
|
-
}),
|
|
92867
|
-
password: new ParameterDefinition({
|
|
92868
|
-
slug: "password",
|
|
92869
|
-
name: "Trino Password",
|
|
92870
|
-
description: "The password for Trino authentication. Leave empty if not required.",
|
|
92871
|
-
envVarBaseKey: "TRINO_PASSWORD",
|
|
92872
|
-
type: "text",
|
|
92873
|
-
secret: true,
|
|
92874
|
-
required: false
|
|
92875
|
-
}),
|
|
92876
|
-
catalog: new ParameterDefinition({
|
|
92877
|
-
slug: "catalog",
|
|
92878
|
-
name: "Trino Catalog",
|
|
92879
|
-
description: "The default catalog to use (e.g., hive, iceberg, postgresql).",
|
|
92880
|
-
envVarBaseKey: "TRINO_CATALOG",
|
|
92881
|
-
type: "text",
|
|
92882
|
-
secret: false,
|
|
92883
|
-
required: false
|
|
92884
|
-
}),
|
|
92885
|
-
schema: new ParameterDefinition({
|
|
92886
|
-
slug: "schema",
|
|
92887
|
-
name: "Trino Schema",
|
|
92888
|
-
description: "The default schema to use within the catalog.",
|
|
92889
|
-
envVarBaseKey: "TRINO_SCHEMA",
|
|
92890
|
-
type: "text",
|
|
92891
|
-
secret: false,
|
|
92892
|
-
required: false
|
|
92893
|
-
})
|
|
92894
|
-
};
|
|
92895
|
-
|
|
92896
|
-
// ../connectors/src/connectors/trino/tools/execute-query.ts
|
|
92897
|
-
import { z as z42 } from "zod";
|
|
92898
|
-
var MAX_ROWS11 = 500;
|
|
92899
|
-
var QUERY_TIMEOUT_MS4 = 6e4;
|
|
92900
|
-
var inputSchema42 = z42.object({
|
|
92901
|
-
toolUseIntent: z42.string().optional().describe(
|
|
92902
|
-
"Brief description of what you intend to accomplish with this tool call"
|
|
92903
|
-
),
|
|
92904
|
-
connectionId: z42.string().describe("ID of the Trino connection to use"),
|
|
92905
|
-
sql: z42.string().describe("Trino SQL query. Always include LIMIT in queries.")
|
|
92906
|
-
});
|
|
92907
|
-
var outputSchema42 = z42.discriminatedUnion("success", [
|
|
92908
|
-
z42.object({
|
|
92909
|
-
success: z42.literal(true),
|
|
92910
|
-
rowCount: z42.number(),
|
|
92911
|
-
truncated: z42.boolean(),
|
|
92912
|
-
rows: z42.array(z42.record(z42.string(), z42.unknown()))
|
|
92913
|
-
}),
|
|
92914
|
-
z42.object({
|
|
92915
|
-
success: z42.literal(false),
|
|
92916
|
-
error: z42.string()
|
|
92917
|
-
})
|
|
92918
|
-
]);
|
|
92919
|
-
var executeQueryTool11 = new ConnectorTool({
|
|
92920
|
-
name: "executeQuery",
|
|
92921
|
-
description: `Execute SQL against Trino. Returns up to ${MAX_ROWS11} rows.
|
|
92922
|
-
Use for: schema exploration (SHOW CATALOGS, SHOW SCHEMAS, SHOW TABLES, DESCRIBE), data sampling, analytical queries across federated data sources.
|
|
92923
|
-
Avoid loading large amounts of data; always include LIMIT in queries.`,
|
|
92924
|
-
inputSchema: inputSchema42,
|
|
92925
|
-
outputSchema: outputSchema42,
|
|
92926
|
-
async execute({ connectionId, sql }, connections) {
|
|
92927
|
-
const connection = connections.find((c6) => c6.id === connectionId);
|
|
92928
|
-
if (!connection) {
|
|
92929
|
-
return {
|
|
92930
|
-
success: false,
|
|
92931
|
-
error: `Connection ${connectionId} not found`
|
|
92932
|
-
};
|
|
92933
|
-
}
|
|
92934
|
-
console.log(
|
|
92935
|
-
`[connector-query] trino/${connection.name}: ${sql}`
|
|
92936
|
-
);
|
|
92937
|
-
let host;
|
|
92938
|
-
try {
|
|
92939
|
-
const { Trino, BasicAuth } = await import("trino-client");
|
|
92940
|
-
host = parameters39.host.getValue(connection);
|
|
92941
|
-
const user = parameters39.user.getValue(connection);
|
|
92942
|
-
const password = parameters39.password.tryGetValue(connection);
|
|
92943
|
-
const catalog = parameters39.catalog.tryGetValue(connection);
|
|
92944
|
-
const schema = parameters39.schema.tryGetValue(connection);
|
|
92945
|
-
const trino = Trino.create({
|
|
92946
|
-
server: host,
|
|
92947
|
-
catalog: catalog || void 0,
|
|
92948
|
-
schema: schema || void 0,
|
|
92949
|
-
auth: new BasicAuth(user, password || void 0)
|
|
92950
|
-
});
|
|
92951
|
-
const iter = await trino.query(sql);
|
|
92952
|
-
const columns = [];
|
|
92953
|
-
const rows = [];
|
|
92954
|
-
let truncated = false;
|
|
92955
|
-
const timeout = new Promise(
|
|
92956
|
-
(_, reject) => setTimeout(() => reject(new Error("Query timed out after 60 seconds")), QUERY_TIMEOUT_MS4)
|
|
92957
|
-
);
|
|
92958
|
-
const collect = async () => {
|
|
92959
|
-
for await (const result of iter) {
|
|
92960
|
-
if (result.columns && columns.length === 0) {
|
|
92961
|
-
columns.push(...result.columns);
|
|
92962
|
-
}
|
|
92963
|
-
if (result.data) {
|
|
92964
|
-
for (const row of result.data) {
|
|
92965
|
-
if (rows.length >= MAX_ROWS11) {
|
|
92966
|
-
truncated = true;
|
|
92967
|
-
break;
|
|
92968
|
-
}
|
|
92969
|
-
const obj = {};
|
|
92970
|
-
columns.forEach((col, i7) => {
|
|
92971
|
-
obj[col.name] = row[i7];
|
|
92972
|
-
});
|
|
92973
|
-
rows.push(obj);
|
|
92974
|
-
}
|
|
92975
|
-
if (truncated) break;
|
|
92976
|
-
}
|
|
92977
|
-
}
|
|
92978
|
-
};
|
|
92979
|
-
await Promise.race([collect(), timeout]);
|
|
92980
|
-
return {
|
|
92981
|
-
success: true,
|
|
92982
|
-
rowCount: rows.length,
|
|
92983
|
-
truncated,
|
|
92984
|
-
rows
|
|
92985
|
-
};
|
|
92986
|
-
} catch (err) {
|
|
92987
|
-
let msg = err instanceof Error ? err.message : String(err);
|
|
92988
|
-
if (host) {
|
|
92989
|
-
msg = msg.replaceAll(host, "***");
|
|
92990
|
-
}
|
|
92991
|
-
return { success: false, error: msg };
|
|
92992
|
-
}
|
|
92993
|
-
}
|
|
92994
|
-
});
|
|
92995
|
-
|
|
92996
|
-
// ../connectors/src/connectors/trino/index.ts
|
|
92997
|
-
var tools39 = { executeQuery: executeQueryTool11 };
|
|
92998
|
-
var trinoConnector = new ConnectorPlugin({
|
|
92999
|
-
slug: "trino",
|
|
93000
|
-
authType: null,
|
|
93001
|
-
name: "Trino",
|
|
93002
|
-
description: "Connect to Trino for distributed SQL query engine across federated data sources.",
|
|
93003
|
-
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/8jqL4EZwHKnK5QzyNWkp2/e5831a080c8192cb18fb864cabd51c23/trino.png",
|
|
93004
|
-
parameters: parameters39,
|
|
93005
|
-
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
93006
|
-
onboarding: trinoOnboarding,
|
|
93007
|
-
systemPrompt: {
|
|
93008
|
-
en: `### Tools
|
|
93009
|
-
|
|
93010
|
-
- \`trino_executeQuery\`: Executes a Trino SQL query and returns rows. Use this for schema exploration (\`SHOW CATALOGS\`, \`SHOW SCHEMAS\`, \`SHOW TABLES\`, \`DESCRIBE\`) and for sampling data. See the SQL Reference below for syntax notes.
|
|
93011
|
-
|
|
93012
|
-
### Business Logic
|
|
93013
|
-
|
|
93014
|
-
The business logic type for this connector is "sql".
|
|
93015
|
-
|
|
93016
|
-
### SQL Reference
|
|
93017
|
-
- Trino uses ANSI SQL syntax with extensions for federated queries
|
|
93018
|
-
- Use fully qualified names: \`catalog.schema.table\` for cross-catalog queries
|
|
93019
|
-
- Schema exploration commands:
|
|
93020
|
-
- List catalogs: \`SHOW CATALOGS\`
|
|
93021
|
-
- List schemas: \`SHOW SCHEMAS IN catalog_name\`
|
|
93022
|
-
- List tables: \`SHOW TABLES IN catalog_name.schema_name\`
|
|
93023
|
-
- List columns: \`DESCRIBE catalog_name.schema_name.table_name\`
|
|
93024
|
-
- Table details: \`SHOW COLUMNS FROM catalog_name.schema_name.table_name\`
|
|
93025
|
-
- INFORMATION_SCHEMA is available per catalog: \`SELECT * FROM catalog_name.information_schema.tables\`
|
|
93026
|
-
- Always include LIMIT in queries`,
|
|
93027
|
-
ja: `### \u30C4\u30FC\u30EB
|
|
93028
|
-
|
|
93029
|
-
- \`trino_executeQuery\`: Trino SQL\u30AF\u30A8\u30EA\u3092\u5B9F\u884C\u3057\u3001\u884C\u30C7\u30FC\u30BF\u3092\u8FD4\u3057\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u63A2\u7D22 (\`SHOW CATALOGS\`, \`SHOW SCHEMAS\`, \`SHOW TABLES\`, \`DESCRIBE\`) \u3084\u30C7\u30FC\u30BF\u306E\u30B5\u30F3\u30D7\u30EA\u30F3\u30B0\u306B\u4F7F\u3044\u307E\u3059\u3002\u69CB\u6587\u306E\u6CE8\u610F\u70B9\u306F\u4E0B\u90E8\u306E\u300CSQL \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u300D\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
|
93030
|
-
|
|
93031
|
-
### Business Logic
|
|
93032
|
-
|
|
93033
|
-
\u3053\u306E\u30B3\u30CD\u30AF\u30BF\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u30BF\u30A4\u30D7\u306F "sql" \u3067\u3059\u3002
|
|
93034
|
-
|
|
93035
|
-
### SQL \u30EA\u30D5\u30A1\u30EC\u30F3\u30B9
|
|
93036
|
-
- Trino\u306FANSI SQL\u69CB\u6587\u3092\u4F7F\u7528\u3057\u3001\u30D5\u30A7\u30C7\u30EC\u30FC\u30C6\u30C3\u30C9\u30AF\u30A8\u30EA\u306E\u62E1\u5F35\u304C\u3042\u308A\u307E\u3059
|
|
93037
|
-
- \u30AF\u30ED\u30B9\u30AB\u30BF\u30ED\u30B0\u30AF\u30A8\u30EA\u306B\u306F\u5B8C\u5168\u4FEE\u98FE\u540D\u3092\u4F7F\u7528: \`catalog.schema.table\`
|
|
93038
|
-
- \u30B9\u30AD\u30FC\u30DE\u63A2\u7D22\u30B3\u30DE\u30F3\u30C9:
|
|
93039
|
-
- \u30AB\u30BF\u30ED\u30B0\u4E00\u89A7: \`SHOW CATALOGS\`
|
|
93040
|
-
- \u30B9\u30AD\u30FC\u30DE\u4E00\u89A7: \`SHOW SCHEMAS IN catalog_name\`
|
|
93041
|
-
- \u30C6\u30FC\u30D6\u30EB\u4E00\u89A7: \`SHOW TABLES IN catalog_name.schema_name\`
|
|
93042
|
-
- \u30AB\u30E9\u30E0\u4E00\u89A7: \`DESCRIBE catalog_name.schema_name.table_name\`
|
|
93043
|
-
- \u30C6\u30FC\u30D6\u30EB\u8A73\u7D30: \`SHOW COLUMNS FROM catalog_name.schema_name.table_name\`
|
|
93044
|
-
- INFORMATION_SCHEMA\u306F\u30AB\u30BF\u30ED\u30B0\u3054\u3068\u306B\u5229\u7528\u53EF\u80FD: \`SELECT * FROM catalog_name.information_schema.tables\`
|
|
93045
|
-
- \u30AF\u30A8\u30EA\u306B\u306F\u5FC5\u305A LIMIT \u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044`
|
|
93046
|
-
},
|
|
93047
|
-
tools: tools39,
|
|
93048
|
-
async checkConnection(params, _config) {
|
|
93049
|
-
try {
|
|
93050
|
-
const { Trino, BasicAuth } = await import("trino-client");
|
|
93051
|
-
const host = params[parameters39.host.slug];
|
|
93052
|
-
const user = params[parameters39.user.slug];
|
|
93053
|
-
const password = params[parameters39.password.slug] || void 0;
|
|
93054
|
-
const catalog = params[parameters39.catalog.slug] || void 0;
|
|
93055
|
-
const schema = params[parameters39.schema.slug] || void 0;
|
|
93056
|
-
const trino = Trino.create({
|
|
93057
|
-
server: host,
|
|
93058
|
-
catalog,
|
|
93059
|
-
schema,
|
|
93060
|
-
auth: new BasicAuth(user, password)
|
|
93061
|
-
});
|
|
93062
|
-
const iter = await trino.query("SELECT 1");
|
|
93063
|
-
for await (const _result of iter) {
|
|
93064
|
-
}
|
|
93065
|
-
return { success: true };
|
|
93066
|
-
} catch (error2) {
|
|
93067
|
-
return { success: false, error: error2 instanceof Error ? error2.message : String(error2) };
|
|
93068
|
-
}
|
|
93069
|
-
},
|
|
93070
|
-
async query(params, sql, namedParams) {
|
|
93071
|
-
const resolvedSql = replaceLiteralParams(sql, namedParams);
|
|
93072
|
-
const { Trino, BasicAuth } = await import("trino-client");
|
|
93073
|
-
const host = params[parameters39.host.slug];
|
|
93074
|
-
const user = params[parameters39.user.slug];
|
|
93075
|
-
const password = params[parameters39.password.slug] || void 0;
|
|
93076
|
-
const catalog = params[parameters39.catalog.slug] || void 0;
|
|
93077
|
-
const schema = params[parameters39.schema.slug] || void 0;
|
|
93078
|
-
const trino = Trino.create({
|
|
93079
|
-
server: host,
|
|
93080
|
-
catalog,
|
|
93081
|
-
schema,
|
|
93082
|
-
auth: new BasicAuth(user, password)
|
|
93083
|
-
});
|
|
93084
|
-
const iter = await trino.query(resolvedSql);
|
|
93085
|
-
const columns = [];
|
|
93086
|
-
const rows = [];
|
|
93087
|
-
for await (const result of iter) {
|
|
93088
|
-
if (result.columns && columns.length === 0) {
|
|
93089
|
-
columns.push(...result.columns);
|
|
93090
|
-
}
|
|
93091
|
-
if (result.data) {
|
|
93092
|
-
for (const row of result.data) {
|
|
93093
|
-
const obj = {};
|
|
93094
|
-
columns.forEach((col, i7) => {
|
|
93095
|
-
obj[col.name] = row[i7];
|
|
93096
|
-
});
|
|
93097
|
-
rows.push(obj);
|
|
93098
|
-
}
|
|
93099
|
-
}
|
|
93100
|
-
}
|
|
93101
|
-
return { rows };
|
|
93102
|
-
}
|
|
93103
|
-
});
|
|
93104
|
-
|
|
93105
92831
|
// ../connectors/src/connectors/clickhouse/setup.ts
|
|
93106
92832
|
var clickhouseOnboarding = new ConnectorOnboarding({
|
|
93107
92833
|
dataOverviewInstructions: {
|
|
@@ -93117,7 +92843,7 @@ var clickhouseOnboarding = new ConnectorOnboarding({
|
|
|
93117
92843
|
});
|
|
93118
92844
|
|
|
93119
92845
|
// ../connectors/src/connectors/clickhouse/parameters.ts
|
|
93120
|
-
var
|
|
92846
|
+
var parameters39 = {
|
|
93121
92847
|
url: new ParameterDefinition({
|
|
93122
92848
|
slug: "url",
|
|
93123
92849
|
name: "ClickHouse Server URL",
|
|
@@ -93157,35 +92883,35 @@ var parameters40 = {
|
|
|
93157
92883
|
};
|
|
93158
92884
|
|
|
93159
92885
|
// ../connectors/src/connectors/clickhouse/tools/execute-query.ts
|
|
93160
|
-
import { z as
|
|
93161
|
-
var
|
|
93162
|
-
var
|
|
93163
|
-
var
|
|
93164
|
-
toolUseIntent:
|
|
92886
|
+
import { z as z42 } from "zod";
|
|
92887
|
+
var MAX_ROWS11 = 500;
|
|
92888
|
+
var QUERY_TIMEOUT_MS4 = 6e4;
|
|
92889
|
+
var inputSchema42 = z42.object({
|
|
92890
|
+
toolUseIntent: z42.string().optional().describe(
|
|
93165
92891
|
"Brief description of what you intend to accomplish with this tool call"
|
|
93166
92892
|
),
|
|
93167
|
-
connectionId:
|
|
93168
|
-
sql:
|
|
93169
|
-
});
|
|
93170
|
-
var
|
|
93171
|
-
|
|
93172
|
-
success:
|
|
93173
|
-
rowCount:
|
|
93174
|
-
truncated:
|
|
93175
|
-
rows:
|
|
92893
|
+
connectionId: z42.string().describe("ID of the ClickHouse connection to use"),
|
|
92894
|
+
sql: z42.string().describe("ClickHouse SQL query. Always include LIMIT in queries.")
|
|
92895
|
+
});
|
|
92896
|
+
var outputSchema42 = z42.discriminatedUnion("success", [
|
|
92897
|
+
z42.object({
|
|
92898
|
+
success: z42.literal(true),
|
|
92899
|
+
rowCount: z42.number(),
|
|
92900
|
+
truncated: z42.boolean(),
|
|
92901
|
+
rows: z42.array(z42.record(z42.string(), z42.unknown()))
|
|
93176
92902
|
}),
|
|
93177
|
-
|
|
93178
|
-
success:
|
|
93179
|
-
error:
|
|
92903
|
+
z42.object({
|
|
92904
|
+
success: z42.literal(false),
|
|
92905
|
+
error: z42.string()
|
|
93180
92906
|
})
|
|
93181
92907
|
]);
|
|
93182
|
-
var
|
|
92908
|
+
var executeQueryTool11 = new ConnectorTool({
|
|
93183
92909
|
name: "executeQuery",
|
|
93184
|
-
description: `Execute SQL against ClickHouse. Returns up to ${
|
|
92910
|
+
description: `Execute SQL against ClickHouse. Returns up to ${MAX_ROWS11} rows.
|
|
93185
92911
|
Use for: schema exploration (SHOW DATABASES, SHOW TABLES, DESCRIBE TABLE), data sampling, analytical queries on large-scale columnar data.
|
|
93186
92912
|
Avoid loading large amounts of data; always include LIMIT in queries.`,
|
|
93187
|
-
inputSchema:
|
|
93188
|
-
outputSchema:
|
|
92913
|
+
inputSchema: inputSchema42,
|
|
92914
|
+
outputSchema: outputSchema42,
|
|
93189
92915
|
async execute({ connectionId, sql }, connections) {
|
|
93190
92916
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
93191
92917
|
if (!connection) {
|
|
@@ -93200,16 +92926,16 @@ Avoid loading large amounts of data; always include LIMIT in queries.`,
|
|
|
93200
92926
|
let url;
|
|
93201
92927
|
try {
|
|
93202
92928
|
const { createClient } = await import("@clickhouse/client");
|
|
93203
|
-
url =
|
|
93204
|
-
const username =
|
|
93205
|
-
const password =
|
|
93206
|
-
const database =
|
|
92929
|
+
url = parameters39.url.getValue(connection);
|
|
92930
|
+
const username = parameters39.username.getValue(connection);
|
|
92931
|
+
const password = parameters39.password.tryGetValue(connection);
|
|
92932
|
+
const database = parameters39.database.tryGetValue(connection);
|
|
93207
92933
|
const client = createClient({
|
|
93208
92934
|
url,
|
|
93209
92935
|
username,
|
|
93210
92936
|
password: password || "",
|
|
93211
92937
|
database: database || "default",
|
|
93212
|
-
request_timeout:
|
|
92938
|
+
request_timeout: QUERY_TIMEOUT_MS4
|
|
93213
92939
|
});
|
|
93214
92940
|
try {
|
|
93215
92941
|
const resultSet = await client.query({
|
|
@@ -93217,12 +92943,12 @@ Avoid loading large amounts of data; always include LIMIT in queries.`,
|
|
|
93217
92943
|
format: "JSONEachRow"
|
|
93218
92944
|
});
|
|
93219
92945
|
const allRows = await resultSet.json();
|
|
93220
|
-
const truncated = allRows.length >
|
|
92946
|
+
const truncated = allRows.length > MAX_ROWS11;
|
|
93221
92947
|
return {
|
|
93222
92948
|
success: true,
|
|
93223
|
-
rowCount: Math.min(allRows.length,
|
|
92949
|
+
rowCount: Math.min(allRows.length, MAX_ROWS11),
|
|
93224
92950
|
truncated,
|
|
93225
|
-
rows: allRows.slice(0,
|
|
92951
|
+
rows: allRows.slice(0, MAX_ROWS11)
|
|
93226
92952
|
};
|
|
93227
92953
|
} finally {
|
|
93228
92954
|
await client.close();
|
|
@@ -93238,14 +92964,14 @@ Avoid loading large amounts of data; always include LIMIT in queries.`,
|
|
|
93238
92964
|
});
|
|
93239
92965
|
|
|
93240
92966
|
// ../connectors/src/connectors/clickhouse/index.ts
|
|
93241
|
-
var
|
|
92967
|
+
var tools39 = { executeQuery: executeQueryTool11 };
|
|
93242
92968
|
var clickhouseConnector = new ConnectorPlugin({
|
|
93243
92969
|
slug: "clickhouse",
|
|
93244
92970
|
authType: null,
|
|
93245
92971
|
name: "ClickHouse",
|
|
93246
92972
|
description: "Connect to ClickHouse for high-performance columnar analytics and real-time data processing.",
|
|
93247
92973
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/MencimqP92UmucqstLl51/d9f2b6160206f5454b26e223a763ab8f/clickhouse.png",
|
|
93248
|
-
parameters:
|
|
92974
|
+
parameters: parameters39,
|
|
93249
92975
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
93250
92976
|
onboarding: clickhouseOnboarding,
|
|
93251
92977
|
systemPrompt: {
|
|
@@ -93290,15 +93016,15 @@ The business logic type for this connector is "sql".
|
|
|
93290
93016
|
- \u96C6\u8A08\u95A2\u6570: \`countIf()\`, \`sumIf()\`, \`uniq()\`, \`quantile()\`
|
|
93291
93017
|
- \u30AF\u30A8\u30EA\u306B\u306F\u5FC5\u305A LIMIT \u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044`
|
|
93292
93018
|
},
|
|
93293
|
-
tools:
|
|
93019
|
+
tools: tools39,
|
|
93294
93020
|
async checkConnection(params, _config) {
|
|
93295
93021
|
try {
|
|
93296
93022
|
const { createClient } = await import("@clickhouse/client");
|
|
93297
93023
|
const client = createClient({
|
|
93298
|
-
url: params[
|
|
93299
|
-
username: params[
|
|
93300
|
-
password: params[
|
|
93301
|
-
database: params[
|
|
93024
|
+
url: params[parameters39.url.slug],
|
|
93025
|
+
username: params[parameters39.username.slug],
|
|
93026
|
+
password: params[parameters39.password.slug] || "",
|
|
93027
|
+
database: params[parameters39.database.slug] || "default",
|
|
93302
93028
|
request_timeout: 1e4
|
|
93303
93029
|
});
|
|
93304
93030
|
try {
|
|
@@ -93318,10 +93044,10 @@ The business logic type for this connector is "sql".
|
|
|
93318
93044
|
const resolvedSql = replaceLiteralParams(sql, namedParams);
|
|
93319
93045
|
const { createClient } = await import("@clickhouse/client");
|
|
93320
93046
|
const client = createClient({
|
|
93321
|
-
url: params[
|
|
93322
|
-
username: params[
|
|
93323
|
-
password: params[
|
|
93324
|
-
database: params[
|
|
93047
|
+
url: params[parameters39.url.slug],
|
|
93048
|
+
username: params[parameters39.username.slug],
|
|
93049
|
+
password: params[parameters39.password.slug] || "",
|
|
93050
|
+
database: params[parameters39.database.slug] || "default",
|
|
93325
93051
|
request_timeout: 6e4
|
|
93326
93052
|
});
|
|
93327
93053
|
try {
|
|
@@ -93352,7 +93078,7 @@ var mongodbOnboarding = new ConnectorOnboarding({
|
|
|
93352
93078
|
});
|
|
93353
93079
|
|
|
93354
93080
|
// ../connectors/src/connectors/mongodb/parameters.ts
|
|
93355
|
-
var
|
|
93081
|
+
var parameters40 = {
|
|
93356
93082
|
connectionUrl: new ParameterDefinition({
|
|
93357
93083
|
slug: "connection-url",
|
|
93358
93084
|
name: "MongoDB Connection URL",
|
|
@@ -93374,39 +93100,39 @@ var parameters41 = {
|
|
|
93374
93100
|
};
|
|
93375
93101
|
|
|
93376
93102
|
// ../connectors/src/connectors/mongodb/tools/find-documents.ts
|
|
93377
|
-
import { z as
|
|
93103
|
+
import { z as z45 } from "zod";
|
|
93378
93104
|
var MAX_DOCUMENTS = 500;
|
|
93379
93105
|
var CONNECT_TIMEOUT_MS4 = 1e4;
|
|
93380
|
-
var
|
|
93381
|
-
var
|
|
93382
|
-
toolUseIntent:
|
|
93106
|
+
var QUERY_TIMEOUT_MS5 = 6e4;
|
|
93107
|
+
var inputSchema43 = z45.object({
|
|
93108
|
+
toolUseIntent: z45.string().optional().describe(
|
|
93383
93109
|
"Brief description of what you intend to accomplish with this tool call"
|
|
93384
93110
|
),
|
|
93385
|
-
connectionId:
|
|
93386
|
-
collection:
|
|
93387
|
-
filter:
|
|
93111
|
+
connectionId: z45.string().describe("ID of the MongoDB connection to use"),
|
|
93112
|
+
collection: z45.string().describe("The name of the collection to query"),
|
|
93113
|
+
filter: z45.string().optional().describe(
|
|
93388
93114
|
`MongoDB filter query as a JSON string (e.g., '{"status": "active"}', '{"age": {"$gt": 25}}'). Defaults to '{}' (all documents).`
|
|
93389
93115
|
),
|
|
93390
|
-
projection:
|
|
93116
|
+
projection: z45.string().optional().describe(
|
|
93391
93117
|
`MongoDB projection as a JSON string to include/exclude fields (e.g., '{"name": 1, "email": 1}' to include only name and email).`
|
|
93392
93118
|
),
|
|
93393
|
-
sort:
|
|
93119
|
+
sort: z45.string().optional().describe(
|
|
93394
93120
|
`MongoDB sort specification as a JSON string (e.g., '{"createdAt": -1}' for descending by createdAt).`
|
|
93395
93121
|
),
|
|
93396
|
-
limit:
|
|
93122
|
+
limit: z45.number().optional().describe(
|
|
93397
93123
|
`Maximum number of documents to return. Defaults to ${MAX_DOCUMENTS}. Cannot exceed ${MAX_DOCUMENTS}.`
|
|
93398
93124
|
)
|
|
93399
93125
|
});
|
|
93400
|
-
var
|
|
93401
|
-
|
|
93402
|
-
success:
|
|
93403
|
-
documentCount:
|
|
93404
|
-
truncated:
|
|
93405
|
-
documents:
|
|
93126
|
+
var outputSchema43 = z45.discriminatedUnion("success", [
|
|
93127
|
+
z45.object({
|
|
93128
|
+
success: z45.literal(true),
|
|
93129
|
+
documentCount: z45.number(),
|
|
93130
|
+
truncated: z45.boolean(),
|
|
93131
|
+
documents: z45.array(z45.record(z45.string(), z45.unknown()))
|
|
93406
93132
|
}),
|
|
93407
|
-
|
|
93408
|
-
success:
|
|
93409
|
-
error:
|
|
93133
|
+
z45.object({
|
|
93134
|
+
success: z45.literal(false),
|
|
93135
|
+
error: z45.string()
|
|
93410
93136
|
})
|
|
93411
93137
|
]);
|
|
93412
93138
|
var findDocumentsTool = new ConnectorTool({
|
|
@@ -93415,8 +93141,8 @@ var findDocumentsTool = new ConnectorTool({
|
|
|
93415
93141
|
Use for: querying documents with filters, projecting specific fields, sorting results, and data sampling.
|
|
93416
93142
|
Pass filter, projection, and sort as JSON strings. Always use limit to avoid loading large amounts of data.
|
|
93417
93143
|
For listing collections, use the aggregate tool with an empty pipeline on the special collection name "$cmd.listCollections".`,
|
|
93418
|
-
inputSchema:
|
|
93419
|
-
outputSchema:
|
|
93144
|
+
inputSchema: inputSchema43,
|
|
93145
|
+
outputSchema: outputSchema43,
|
|
93420
93146
|
async execute({ connectionId, collection, filter, projection, sort, limit }, connections) {
|
|
93421
93147
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
93422
93148
|
if (!connection) {
|
|
@@ -93431,12 +93157,12 @@ For listing collections, use the aggregate tool with an empty pipeline on the sp
|
|
|
93431
93157
|
let connectionUrl;
|
|
93432
93158
|
try {
|
|
93433
93159
|
const { MongoClient } = await Promise.resolve().then(() => __toESM(require_lib4(), 1));
|
|
93434
|
-
connectionUrl =
|
|
93435
|
-
const database =
|
|
93160
|
+
connectionUrl = parameters40.connectionUrl.getValue(connection);
|
|
93161
|
+
const database = parameters40.database.getValue(connection);
|
|
93436
93162
|
const client = new MongoClient(connectionUrl, {
|
|
93437
93163
|
connectTimeoutMS: CONNECT_TIMEOUT_MS4,
|
|
93438
93164
|
serverSelectionTimeoutMS: CONNECT_TIMEOUT_MS4,
|
|
93439
|
-
socketTimeoutMS:
|
|
93165
|
+
socketTimeoutMS: QUERY_TIMEOUT_MS5
|
|
93440
93166
|
});
|
|
93441
93167
|
try {
|
|
93442
93168
|
await client.connect();
|
|
@@ -93479,30 +93205,30 @@ For listing collections, use the aggregate tool with an empty pipeline on the sp
|
|
|
93479
93205
|
});
|
|
93480
93206
|
|
|
93481
93207
|
// ../connectors/src/connectors/mongodb/tools/aggregate.ts
|
|
93482
|
-
import { z as
|
|
93208
|
+
import { z as z46 } from "zod";
|
|
93483
93209
|
var MAX_DOCUMENTS2 = 500;
|
|
93484
93210
|
var CONNECT_TIMEOUT_MS5 = 1e4;
|
|
93485
|
-
var
|
|
93486
|
-
var
|
|
93487
|
-
toolUseIntent:
|
|
93211
|
+
var QUERY_TIMEOUT_MS6 = 6e4;
|
|
93212
|
+
var inputSchema44 = z46.object({
|
|
93213
|
+
toolUseIntent: z46.string().optional().describe(
|
|
93488
93214
|
"Brief description of what you intend to accomplish with this tool call"
|
|
93489
93215
|
),
|
|
93490
|
-
connectionId:
|
|
93491
|
-
collection:
|
|
93492
|
-
pipeline:
|
|
93216
|
+
connectionId: z46.string().describe("ID of the MongoDB connection to use"),
|
|
93217
|
+
collection: z46.string().describe("The name of the collection to run the aggregation pipeline on"),
|
|
93218
|
+
pipeline: z46.string().describe(
|
|
93493
93219
|
`MongoDB aggregation pipeline as a JSON string. An array of stage objects (e.g., '[{"$match": {"status": "active"}}, {"$group": {"_id": "$category", "count": {"$sum": 1}}}]'). Always include a $limit stage to avoid returning too many documents.`
|
|
93494
93220
|
)
|
|
93495
93221
|
});
|
|
93496
|
-
var
|
|
93497
|
-
|
|
93498
|
-
success:
|
|
93499
|
-
documentCount:
|
|
93500
|
-
truncated:
|
|
93501
|
-
documents:
|
|
93222
|
+
var outputSchema44 = z46.discriminatedUnion("success", [
|
|
93223
|
+
z46.object({
|
|
93224
|
+
success: z46.literal(true),
|
|
93225
|
+
documentCount: z46.number(),
|
|
93226
|
+
truncated: z46.boolean(),
|
|
93227
|
+
documents: z46.array(z46.record(z46.string(), z46.unknown()))
|
|
93502
93228
|
}),
|
|
93503
|
-
|
|
93504
|
-
success:
|
|
93505
|
-
error:
|
|
93229
|
+
z46.object({
|
|
93230
|
+
success: z46.literal(false),
|
|
93231
|
+
error: z46.string()
|
|
93506
93232
|
})
|
|
93507
93233
|
]);
|
|
93508
93234
|
var aggregateTool = new ConnectorTool({
|
|
@@ -93512,8 +93238,8 @@ Use for: complex data transformations, grouping, filtering, joining (via $lookup
|
|
|
93512
93238
|
Pass the pipeline as a JSON string representing an array of aggregation stages.
|
|
93513
93239
|
Always include a $limit stage in the pipeline to avoid loading large amounts of data.
|
|
93514
93240
|
Common stages: $match (filter), $group (aggregate), $sort (order), $project (reshape), $lookup (join), $unwind (flatten arrays).`,
|
|
93515
|
-
inputSchema:
|
|
93516
|
-
outputSchema:
|
|
93241
|
+
inputSchema: inputSchema44,
|
|
93242
|
+
outputSchema: outputSchema44,
|
|
93517
93243
|
async execute({ connectionId, collection, pipeline: pipeline2 }, connections) {
|
|
93518
93244
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
93519
93245
|
if (!connection) {
|
|
@@ -93528,12 +93254,12 @@ Common stages: $match (filter), $group (aggregate), $sort (order), $project (res
|
|
|
93528
93254
|
let connectionUrl;
|
|
93529
93255
|
try {
|
|
93530
93256
|
const { MongoClient } = await Promise.resolve().then(() => __toESM(require_lib4(), 1));
|
|
93531
|
-
connectionUrl =
|
|
93532
|
-
const database =
|
|
93257
|
+
connectionUrl = parameters40.connectionUrl.getValue(connection);
|
|
93258
|
+
const database = parameters40.database.getValue(connection);
|
|
93533
93259
|
const client = new MongoClient(connectionUrl, {
|
|
93534
93260
|
connectTimeoutMS: CONNECT_TIMEOUT_MS5,
|
|
93535
93261
|
serverSelectionTimeoutMS: CONNECT_TIMEOUT_MS5,
|
|
93536
|
-
socketTimeoutMS:
|
|
93262
|
+
socketTimeoutMS: QUERY_TIMEOUT_MS6
|
|
93537
93263
|
});
|
|
93538
93264
|
try {
|
|
93539
93265
|
await client.connect();
|
|
@@ -93569,25 +93295,25 @@ Common stages: $match (filter), $group (aggregate), $sort (order), $project (res
|
|
|
93569
93295
|
});
|
|
93570
93296
|
|
|
93571
93297
|
// ../connectors/src/connectors/mongodb/tools/list-collections.ts
|
|
93572
|
-
import { z as
|
|
93298
|
+
import { z as z47 } from "zod";
|
|
93573
93299
|
var CONNECT_TIMEOUT_MS6 = 1e4;
|
|
93574
|
-
var
|
|
93575
|
-
toolUseIntent:
|
|
93300
|
+
var inputSchema45 = z47.object({
|
|
93301
|
+
toolUseIntent: z47.string().optional().describe(
|
|
93576
93302
|
"Brief description of what you intend to accomplish with this tool call"
|
|
93577
93303
|
),
|
|
93578
|
-
connectionId:
|
|
93304
|
+
connectionId: z47.string().describe("ID of the MongoDB connection to use")
|
|
93579
93305
|
});
|
|
93580
|
-
var
|
|
93581
|
-
|
|
93582
|
-
success:
|
|
93583
|
-
collections:
|
|
93584
|
-
name:
|
|
93585
|
-
type:
|
|
93306
|
+
var outputSchema45 = z47.discriminatedUnion("success", [
|
|
93307
|
+
z47.object({
|
|
93308
|
+
success: z47.literal(true),
|
|
93309
|
+
collections: z47.array(z47.object({
|
|
93310
|
+
name: z47.string(),
|
|
93311
|
+
type: z47.string()
|
|
93586
93312
|
}))
|
|
93587
93313
|
}),
|
|
93588
|
-
|
|
93589
|
-
success:
|
|
93590
|
-
error:
|
|
93314
|
+
z47.object({
|
|
93315
|
+
success: z47.literal(false),
|
|
93316
|
+
error: z47.string()
|
|
93591
93317
|
})
|
|
93592
93318
|
]);
|
|
93593
93319
|
var listCollectionsTool = new ConnectorTool({
|
|
@@ -93595,8 +93321,8 @@ var listCollectionsTool = new ConnectorTool({
|
|
|
93595
93321
|
description: `List all collections in the MongoDB database.
|
|
93596
93322
|
Use this as the first step to explore the data structure. Returns collection names and types.
|
|
93597
93323
|
After listing collections, use the find tool to sample documents and understand the schema of each collection.`,
|
|
93598
|
-
inputSchema:
|
|
93599
|
-
outputSchema:
|
|
93324
|
+
inputSchema: inputSchema45,
|
|
93325
|
+
outputSchema: outputSchema45,
|
|
93600
93326
|
async execute({ connectionId }, connections) {
|
|
93601
93327
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
93602
93328
|
if (!connection) {
|
|
@@ -93611,8 +93337,8 @@ After listing collections, use the find tool to sample documents and understand
|
|
|
93611
93337
|
let connectionUrl;
|
|
93612
93338
|
try {
|
|
93613
93339
|
const { MongoClient } = await Promise.resolve().then(() => __toESM(require_lib4(), 1));
|
|
93614
|
-
connectionUrl =
|
|
93615
|
-
const database =
|
|
93340
|
+
connectionUrl = parameters40.connectionUrl.getValue(connection);
|
|
93341
|
+
const database = parameters40.database.getValue(connection);
|
|
93616
93342
|
const client = new MongoClient(connectionUrl, {
|
|
93617
93343
|
connectTimeoutMS: CONNECT_TIMEOUT_MS6,
|
|
93618
93344
|
serverSelectionTimeoutMS: CONNECT_TIMEOUT_MS6
|
|
@@ -93642,7 +93368,7 @@ After listing collections, use the find tool to sample documents and understand
|
|
|
93642
93368
|
});
|
|
93643
93369
|
|
|
93644
93370
|
// ../connectors/src/connectors/mongodb/index.ts
|
|
93645
|
-
var
|
|
93371
|
+
var tools40 = {
|
|
93646
93372
|
find: findDocumentsTool,
|
|
93647
93373
|
aggregate: aggregateTool,
|
|
93648
93374
|
listCollections: listCollectionsTool
|
|
@@ -93653,7 +93379,7 @@ var mongodbConnector = new ConnectorPlugin({
|
|
|
93653
93379
|
name: "MongoDB",
|
|
93654
93380
|
description: "Connect to MongoDB for document-oriented data storage and querying.",
|
|
93655
93381
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/48JSUx9HE6oSa9JrHGg2E1/12b4cac65924cac3641d4bafcef37dbe/mongodb-icon.webp",
|
|
93656
|
-
parameters:
|
|
93382
|
+
parameters: parameters40,
|
|
93657
93383
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
93658
93384
|
onboarding: mongodbOnboarding,
|
|
93659
93385
|
systemPrompt: {
|
|
@@ -93700,17 +93426,17 @@ The business logic type for this connector is "typescript".
|
|
|
93700
93426
|
3. aggregate \u306E $group \u3067\u30C7\u30FC\u30BF\u5206\u5E03\u3092\u5206\u6790
|
|
93701
93427
|
- find \u30AF\u30A8\u30EA\u306B\u306F\u5FC5\u305A limit \u3092\u3001\u96C6\u7D04\u30D1\u30A4\u30D7\u30E9\u30A4\u30F3\u306B\u306F $limit \u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044`
|
|
93702
93428
|
},
|
|
93703
|
-
tools:
|
|
93429
|
+
tools: tools40,
|
|
93704
93430
|
async checkConnection(params, _config) {
|
|
93705
93431
|
try {
|
|
93706
93432
|
const { MongoClient } = await Promise.resolve().then(() => __toESM(require_lib4(), 1));
|
|
93707
|
-
const client = new MongoClient(params[
|
|
93433
|
+
const client = new MongoClient(params[parameters40.connectionUrl.slug], {
|
|
93708
93434
|
connectTimeoutMS: 1e4,
|
|
93709
93435
|
serverSelectionTimeoutMS: 1e4
|
|
93710
93436
|
});
|
|
93711
93437
|
try {
|
|
93712
93438
|
await client.connect();
|
|
93713
|
-
const db = client.db(params[
|
|
93439
|
+
const db = client.db(params[parameters40.database.slug]);
|
|
93714
93440
|
await db.command({ ping: 1 });
|
|
93715
93441
|
return { success: true };
|
|
93716
93442
|
} finally {
|
|
@@ -93737,7 +93463,7 @@ var notionOnboarding = new ConnectorOnboarding({
|
|
|
93737
93463
|
});
|
|
93738
93464
|
|
|
93739
93465
|
// ../connectors/src/connectors/notion/parameters.ts
|
|
93740
|
-
var
|
|
93466
|
+
var parameters41 = {
|
|
93741
93467
|
apiKey: new ParameterDefinition({
|
|
93742
93468
|
slug: "api-key",
|
|
93743
93469
|
name: "Notion Internal Integration Token",
|
|
@@ -93750,32 +93476,32 @@ var parameters42 = {
|
|
|
93750
93476
|
};
|
|
93751
93477
|
|
|
93752
93478
|
// ../connectors/src/connectors/notion/tools/request.ts
|
|
93753
|
-
import { z as
|
|
93479
|
+
import { z as z48 } from "zod";
|
|
93754
93480
|
var BASE_URL19 = "https://api.notion.com/v1";
|
|
93755
93481
|
var NOTION_VERSION = "2022-06-28";
|
|
93756
93482
|
var REQUEST_TIMEOUT_MS31 = 6e4;
|
|
93757
|
-
var
|
|
93758
|
-
toolUseIntent:
|
|
93483
|
+
var inputSchema46 = z48.object({
|
|
93484
|
+
toolUseIntent: z48.string().optional().describe(
|
|
93759
93485
|
"Brief description of what you intend to accomplish with this tool call"
|
|
93760
93486
|
),
|
|
93761
|
-
connectionId:
|
|
93762
|
-
method:
|
|
93487
|
+
connectionId: z48.string().describe("ID of the Notion connection to use"),
|
|
93488
|
+
method: z48.enum(["GET", "POST", "PATCH", "DELETE"]).describe(
|
|
93763
93489
|
"HTTP method. GET for reading resources, POST for searching/querying/creating, PATCH for updating, DELETE for deleting."
|
|
93764
93490
|
),
|
|
93765
|
-
path:
|
|
93491
|
+
path: z48.string().describe(
|
|
93766
93492
|
"API path (e.g., '/search', '/databases/{id}/query', '/pages/{id}', '/blocks/{id}/children')"
|
|
93767
93493
|
),
|
|
93768
|
-
body:
|
|
93494
|
+
body: z48.record(z48.string(), z48.unknown()).optional().describe("Request body (JSON) for POST/PATCH requests")
|
|
93769
93495
|
});
|
|
93770
|
-
var
|
|
93771
|
-
|
|
93772
|
-
success:
|
|
93773
|
-
status:
|
|
93774
|
-
data:
|
|
93496
|
+
var outputSchema46 = z48.discriminatedUnion("success", [
|
|
93497
|
+
z48.object({
|
|
93498
|
+
success: z48.literal(true),
|
|
93499
|
+
status: z48.number(),
|
|
93500
|
+
data: z48.record(z48.string(), z48.unknown())
|
|
93775
93501
|
}),
|
|
93776
|
-
|
|
93777
|
-
success:
|
|
93778
|
-
error:
|
|
93502
|
+
z48.object({
|
|
93503
|
+
success: z48.literal(false),
|
|
93504
|
+
error: z48.string()
|
|
93779
93505
|
})
|
|
93780
93506
|
]);
|
|
93781
93507
|
var requestTool24 = new ConnectorTool({
|
|
@@ -93784,8 +93510,8 @@ var requestTool24 = new ConnectorTool({
|
|
|
93784
93510
|
Authentication (Bearer token) and Notion-Version header are configured automatically.
|
|
93785
93511
|
Use this tool for all Notion API interactions: searching pages/databases, querying databases, retrieving pages and blocks, managing content.
|
|
93786
93512
|
Pagination uses cursor-based start_cursor and page_size (max 100).`,
|
|
93787
|
-
inputSchema:
|
|
93788
|
-
outputSchema:
|
|
93513
|
+
inputSchema: inputSchema46,
|
|
93514
|
+
outputSchema: outputSchema46,
|
|
93789
93515
|
async execute({ connectionId, method, path: path5, body }, connections) {
|
|
93790
93516
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
93791
93517
|
if (!connection) {
|
|
@@ -93798,7 +93524,7 @@ Pagination uses cursor-based start_cursor and page_size (max 100).`,
|
|
|
93798
93524
|
`[connector-request] notion/${connection.name}: ${method} ${path5}`
|
|
93799
93525
|
);
|
|
93800
93526
|
try {
|
|
93801
|
-
const apiKey =
|
|
93527
|
+
const apiKey = parameters41.apiKey.getValue(connection);
|
|
93802
93528
|
const url = `${BASE_URL19}${path5.startsWith("/") ? "" : "/"}${path5}`;
|
|
93803
93529
|
const controller = new AbortController();
|
|
93804
93530
|
const timeout = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS31);
|
|
@@ -93830,14 +93556,14 @@ Pagination uses cursor-based start_cursor and page_size (max 100).`,
|
|
|
93830
93556
|
});
|
|
93831
93557
|
|
|
93832
93558
|
// ../connectors/src/connectors/notion/index.ts
|
|
93833
|
-
var
|
|
93559
|
+
var tools41 = { request: requestTool24 };
|
|
93834
93560
|
var notionConnector = new ConnectorPlugin({
|
|
93835
93561
|
slug: "notion",
|
|
93836
93562
|
authType: null,
|
|
93837
93563
|
name: "Notion",
|
|
93838
93564
|
description: "Connect to Notion to query databases, pages, and workspace content using an Internal Integration Token.",
|
|
93839
93565
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/797V5GDDTA8bsfKUHBCoQO/290ec49b70b68ddb4acd3bf0a6ab8bda/notion-icon.webp",
|
|
93840
|
-
parameters:
|
|
93566
|
+
parameters: parameters41,
|
|
93841
93567
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
93842
93568
|
onboarding: notionOnboarding,
|
|
93843
93569
|
systemPrompt: {
|
|
@@ -93982,11 +93708,11 @@ export default async function handler(c: Context) {
|
|
|
93982
93708
|
- \u30D6\u30ED\u30C3\u30AF\u306E\u5B50\u306F\u6700\u521D\u306E\u30EC\u30D9\u30EB\u306E\u307F\u3067\u3059\u3002\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30B3\u30F3\u30C6\u30F3\u30C4\u306B\u306F\u518D\u5E30\u304C\u5FC5\u8981\u3067\u3059
|
|
93983
93709
|
- 25\u4EF6\u4EE5\u4E0A\u306E\u30A2\u30A4\u30C6\u30E0\u3092\u6301\u3064\u30D7\u30ED\u30D1\u30C6\u30A3\uFF08people\u3001relation\u306A\u3069\uFF09\u306F\u5B8C\u5168\u306A\u30C7\u30FC\u30BF\u53D6\u5F97\u306B\u30D7\u30ED\u30D1\u30C6\u30A3\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u304C\u5FC5\u8981\u3067\u3059`
|
|
93984
93710
|
},
|
|
93985
|
-
tools:
|
|
93711
|
+
tools: tools41
|
|
93986
93712
|
});
|
|
93987
93713
|
|
|
93988
93714
|
// ../connectors/src/connectors/notion-oauth/tools/request.ts
|
|
93989
|
-
import { z as
|
|
93715
|
+
import { z as z49 } from "zod";
|
|
93990
93716
|
var BASE_URL20 = "https://api.notion.com/v1";
|
|
93991
93717
|
var NOTION_VERSION2 = "2022-06-28";
|
|
93992
93718
|
var REQUEST_TIMEOUT_MS32 = 6e4;
|
|
@@ -94021,26 +93747,26 @@ async function getProxyToken15(config) {
|
|
|
94021
93747
|
};
|
|
94022
93748
|
return data.token;
|
|
94023
93749
|
}
|
|
94024
|
-
var
|
|
94025
|
-
toolUseIntent:
|
|
93750
|
+
var inputSchema47 = z49.object({
|
|
93751
|
+
toolUseIntent: z49.string().optional().describe(
|
|
94026
93752
|
"Brief description of what you intend to accomplish with this tool call"
|
|
94027
93753
|
),
|
|
94028
|
-
connectionId:
|
|
94029
|
-
method:
|
|
94030
|
-
path:
|
|
93754
|
+
connectionId: z49.string().describe("ID of the Notion OAuth connection to use"),
|
|
93755
|
+
method: z49.enum(["GET", "POST", "PATCH", "DELETE"]).describe("HTTP method"),
|
|
93756
|
+
path: z49.string().describe(
|
|
94031
93757
|
"API path appended to https://api.notion.com/v1 (e.g., '/search', '/databases/{id}/query', '/pages/{id}')"
|
|
94032
93758
|
),
|
|
94033
|
-
body:
|
|
93759
|
+
body: z49.record(z49.string(), z49.unknown()).optional().describe("Request body (JSON) for POST/PATCH requests")
|
|
94034
93760
|
});
|
|
94035
|
-
var
|
|
94036
|
-
|
|
94037
|
-
success:
|
|
94038
|
-
status:
|
|
94039
|
-
data:
|
|
93761
|
+
var outputSchema47 = z49.discriminatedUnion("success", [
|
|
93762
|
+
z49.object({
|
|
93763
|
+
success: z49.literal(true),
|
|
93764
|
+
status: z49.number(),
|
|
93765
|
+
data: z49.record(z49.string(), z49.unknown())
|
|
94040
93766
|
}),
|
|
94041
|
-
|
|
94042
|
-
success:
|
|
94043
|
-
error:
|
|
93767
|
+
z49.object({
|
|
93768
|
+
success: z49.literal(false),
|
|
93769
|
+
error: z49.string()
|
|
94044
93770
|
})
|
|
94045
93771
|
]);
|
|
94046
93772
|
var requestTool25 = new ConnectorTool({
|
|
@@ -94049,8 +93775,8 @@ var requestTool25 = new ConnectorTool({
|
|
|
94049
93775
|
Authentication is handled automatically via OAuth proxy. Notion-Version header is set automatically.
|
|
94050
93776
|
Use this tool for all Notion API interactions: searching pages/databases, querying databases, retrieving pages and blocks, managing content.
|
|
94051
93777
|
Pagination uses cursor-based start_cursor and page_size (max 100).`,
|
|
94052
|
-
inputSchema:
|
|
94053
|
-
outputSchema:
|
|
93778
|
+
inputSchema: inputSchema47,
|
|
93779
|
+
outputSchema: outputSchema47,
|
|
94054
93780
|
async execute({ connectionId, method, path: path5, body }, connections, config) {
|
|
94055
93781
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
94056
93782
|
if (!connection) {
|
|
@@ -94143,17 +93869,17 @@ var notionOauthOnboarding = new ConnectorOnboarding({
|
|
|
94143
93869
|
});
|
|
94144
93870
|
|
|
94145
93871
|
// ../connectors/src/connectors/notion-oauth/parameters.ts
|
|
94146
|
-
var
|
|
93872
|
+
var parameters42 = {};
|
|
94147
93873
|
|
|
94148
93874
|
// ../connectors/src/connectors/notion-oauth/index.ts
|
|
94149
|
-
var
|
|
93875
|
+
var tools42 = { request: requestTool25 };
|
|
94150
93876
|
var notionOauthConnector = new ConnectorPlugin({
|
|
94151
93877
|
slug: "notion",
|
|
94152
93878
|
authType: AUTH_TYPES.OAUTH,
|
|
94153
93879
|
name: "Notion (OAuth)",
|
|
94154
93880
|
description: "Connect to Notion to query databases, pages, and workspace content using OAuth.",
|
|
94155
93881
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/797V5GDDTA8bsfKUHBCoQO/290ec49b70b68ddb4acd3bf0a6ab8bda/notion-icon.webp",
|
|
94156
|
-
parameters:
|
|
93882
|
+
parameters: parameters42,
|
|
94157
93883
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
94158
93884
|
onboarding: notionOauthOnboarding,
|
|
94159
93885
|
proxyPolicy: {
|
|
@@ -94266,7 +93992,7 @@ const res = await notion.request("/search", {
|
|
|
94266
93992
|
const data = await res.json();
|
|
94267
93993
|
\`\`\``
|
|
94268
93994
|
},
|
|
94269
|
-
tools:
|
|
93995
|
+
tools: tools42,
|
|
94270
93996
|
async checkConnection(_params, config) {
|
|
94271
93997
|
const { proxyFetch } = config;
|
|
94272
93998
|
try {
|
|
@@ -94292,10 +94018,10 @@ const data = await res.json();
|
|
|
94292
94018
|
});
|
|
94293
94019
|
|
|
94294
94020
|
// ../connectors/src/connectors/meta-ads/tools/list-ad-accounts.ts
|
|
94295
|
-
import { z as
|
|
94021
|
+
import { z as z50 } from "zod";
|
|
94296
94022
|
|
|
94297
94023
|
// ../connectors/src/connectors/meta-ads/parameters.ts
|
|
94298
|
-
var
|
|
94024
|
+
var parameters43 = {
|
|
94299
94025
|
accessToken: new ParameterDefinition({
|
|
94300
94026
|
slug: "access-token",
|
|
94301
94027
|
name: "Access Token",
|
|
@@ -94319,32 +94045,32 @@ var parameters44 = {
|
|
|
94319
94045
|
// ../connectors/src/connectors/meta-ads/tools/list-ad-accounts.ts
|
|
94320
94046
|
var BASE_URL21 = "https://graph.facebook.com/v21.0/";
|
|
94321
94047
|
var REQUEST_TIMEOUT_MS33 = 6e4;
|
|
94322
|
-
var
|
|
94323
|
-
toolUseIntent:
|
|
94048
|
+
var inputSchema48 = z50.object({
|
|
94049
|
+
toolUseIntent: z50.string().optional().describe(
|
|
94324
94050
|
"Brief description of what you intend to accomplish with this tool call"
|
|
94325
94051
|
),
|
|
94326
|
-
connectionId:
|
|
94052
|
+
connectionId: z50.string().describe("ID of the Meta Ads connection to use")
|
|
94327
94053
|
});
|
|
94328
|
-
var
|
|
94329
|
-
|
|
94330
|
-
success:
|
|
94331
|
-
adAccounts:
|
|
94332
|
-
|
|
94333
|
-
adAccountId:
|
|
94334
|
-
name:
|
|
94054
|
+
var outputSchema48 = z50.discriminatedUnion("success", [
|
|
94055
|
+
z50.object({
|
|
94056
|
+
success: z50.literal(true),
|
|
94057
|
+
adAccounts: z50.array(
|
|
94058
|
+
z50.object({
|
|
94059
|
+
adAccountId: z50.string(),
|
|
94060
|
+
name: z50.string()
|
|
94335
94061
|
})
|
|
94336
94062
|
)
|
|
94337
94063
|
}),
|
|
94338
|
-
|
|
94339
|
-
success:
|
|
94340
|
-
error:
|
|
94064
|
+
z50.object({
|
|
94065
|
+
success: z50.literal(false),
|
|
94066
|
+
error: z50.string()
|
|
94341
94067
|
})
|
|
94342
94068
|
]);
|
|
94343
94069
|
var listAdAccountsTool = new ConnectorTool({
|
|
94344
94070
|
name: "listAdAccounts",
|
|
94345
94071
|
description: "List Meta ad accounts accessible with the current access token.",
|
|
94346
|
-
inputSchema:
|
|
94347
|
-
outputSchema:
|
|
94072
|
+
inputSchema: inputSchema48,
|
|
94073
|
+
outputSchema: outputSchema48,
|
|
94348
94074
|
async execute({ connectionId }, connections) {
|
|
94349
94075
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
94350
94076
|
if (!connection) {
|
|
@@ -94357,7 +94083,7 @@ var listAdAccountsTool = new ConnectorTool({
|
|
|
94357
94083
|
`[connector-request] meta-ads/${connection.name}: listAdAccounts`
|
|
94358
94084
|
);
|
|
94359
94085
|
try {
|
|
94360
|
-
const accessToken =
|
|
94086
|
+
const accessToken = parameters43.accessToken.getValue(connection);
|
|
94361
94087
|
const url = `${BASE_URL21}me/adaccounts?fields=account_id,name,account_status&access_token=${encodeURIComponent(accessToken)}`;
|
|
94362
94088
|
const controller = new AbortController();
|
|
94363
94089
|
const timeout = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS33);
|
|
@@ -94434,30 +94160,30 @@ var metaAdsOnboarding = new ConnectorOnboarding({
|
|
|
94434
94160
|
});
|
|
94435
94161
|
|
|
94436
94162
|
// ../connectors/src/connectors/meta-ads/tools/request.ts
|
|
94437
|
-
import { z as
|
|
94163
|
+
import { z as z51 } from "zod";
|
|
94438
94164
|
var BASE_URL22 = "https://graph.facebook.com/v21.0/";
|
|
94439
94165
|
var REQUEST_TIMEOUT_MS34 = 6e4;
|
|
94440
|
-
var
|
|
94441
|
-
toolUseIntent:
|
|
94166
|
+
var inputSchema49 = z51.object({
|
|
94167
|
+
toolUseIntent: z51.string().optional().describe(
|
|
94442
94168
|
"Brief description of what you intend to accomplish with this tool call"
|
|
94443
94169
|
),
|
|
94444
|
-
connectionId:
|
|
94445
|
-
method:
|
|
94446
|
-
path:
|
|
94170
|
+
connectionId: z51.string().describe("ID of the Meta Ads connection to use"),
|
|
94171
|
+
method: z51.enum(["GET", "POST"]).describe("HTTP method"),
|
|
94172
|
+
path: z51.string().describe(
|
|
94447
94173
|
"API path appended to https://graph.facebook.com/v21.0/ (e.g., 'act_{adAccountId}/campaigns'). {adAccountId} is automatically replaced."
|
|
94448
94174
|
),
|
|
94449
|
-
queryParams:
|
|
94450
|
-
body:
|
|
94175
|
+
queryParams: z51.record(z51.string(), z51.string()).optional().describe("Query parameters to append to the URL"),
|
|
94176
|
+
body: z51.record(z51.string(), z51.unknown()).optional().describe("POST request body (JSON)")
|
|
94451
94177
|
});
|
|
94452
|
-
var
|
|
94453
|
-
|
|
94454
|
-
success:
|
|
94455
|
-
status:
|
|
94456
|
-
data:
|
|
94178
|
+
var outputSchema49 = z51.discriminatedUnion("success", [
|
|
94179
|
+
z51.object({
|
|
94180
|
+
success: z51.literal(true),
|
|
94181
|
+
status: z51.number(),
|
|
94182
|
+
data: z51.unknown()
|
|
94457
94183
|
}),
|
|
94458
|
-
|
|
94459
|
-
success:
|
|
94460
|
-
error:
|
|
94184
|
+
z51.object({
|
|
94185
|
+
success: z51.literal(false),
|
|
94186
|
+
error: z51.string()
|
|
94461
94187
|
})
|
|
94462
94188
|
]);
|
|
94463
94189
|
var requestTool26 = new ConnectorTool({
|
|
@@ -94465,8 +94191,8 @@ var requestTool26 = new ConnectorTool({
|
|
|
94465
94191
|
description: `Send authenticated requests to the Meta Marketing API v21.0.
|
|
94466
94192
|
Authentication is handled via the configured access token.
|
|
94467
94193
|
{adAccountId} in the path is automatically replaced with the connection's ad account ID (with act_ prefix added).`,
|
|
94468
|
-
inputSchema:
|
|
94469
|
-
outputSchema:
|
|
94194
|
+
inputSchema: inputSchema49,
|
|
94195
|
+
outputSchema: outputSchema49,
|
|
94470
94196
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections) {
|
|
94471
94197
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
94472
94198
|
if (!connection) {
|
|
@@ -94479,8 +94205,8 @@ Authentication is handled via the configured access token.
|
|
|
94479
94205
|
`[connector-request] meta-ads/${connection.name}: ${method} ${path5}`
|
|
94480
94206
|
);
|
|
94481
94207
|
try {
|
|
94482
|
-
const accessToken =
|
|
94483
|
-
const adAccountId =
|
|
94208
|
+
const accessToken = parameters43.accessToken.getValue(connection);
|
|
94209
|
+
const adAccountId = parameters43.adAccountId.tryGetValue(connection) ?? "";
|
|
94484
94210
|
const resolvedPath = adAccountId ? path5.replace(/\{adAccountId\}/g, adAccountId) : path5;
|
|
94485
94211
|
let url = `${BASE_URL22}${resolvedPath}`;
|
|
94486
94212
|
const params = new URLSearchParams(queryParams ?? {});
|
|
@@ -94517,7 +94243,7 @@ Authentication is handled via the configured access token.
|
|
|
94517
94243
|
});
|
|
94518
94244
|
|
|
94519
94245
|
// ../connectors/src/connectors/meta-ads/index.ts
|
|
94520
|
-
var
|
|
94246
|
+
var tools43 = {
|
|
94521
94247
|
request: requestTool26,
|
|
94522
94248
|
listAdAccounts: listAdAccountsTool
|
|
94523
94249
|
};
|
|
@@ -94527,7 +94253,7 @@ var metaAdsConnector = new ConnectorPlugin({
|
|
|
94527
94253
|
name: "Meta Ads",
|
|
94528
94254
|
description: "Connect to Meta (Facebook/Instagram) Ads for advertising campaign data and reporting using an access token.",
|
|
94529
94255
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/2vyrgcvdf3jETIFXHtbteO/de7f3288e831c9f738e44cf1f961c3bd/meta-icon.webp",
|
|
94530
|
-
parameters:
|
|
94256
|
+
parameters: parameters43,
|
|
94531
94257
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
94532
94258
|
onboarding: metaAdsOnboarding,
|
|
94533
94259
|
systemPrompt: {
|
|
@@ -94656,9 +94382,9 @@ const insights = await meta.getInsights("act_{adAccountId}", {
|
|
|
94656
94382
|
const accounts = await meta.listAdAccounts();
|
|
94657
94383
|
\`\`\``
|
|
94658
94384
|
},
|
|
94659
|
-
tools:
|
|
94385
|
+
tools: tools43,
|
|
94660
94386
|
async checkConnection(params) {
|
|
94661
|
-
const accessToken = params[
|
|
94387
|
+
const accessToken = params[parameters43.accessToken.slug];
|
|
94662
94388
|
if (!accessToken) {
|
|
94663
94389
|
return {
|
|
94664
94390
|
success: false,
|
|
@@ -94686,7 +94412,7 @@ const accounts = await meta.listAdAccounts();
|
|
|
94686
94412
|
});
|
|
94687
94413
|
|
|
94688
94414
|
// ../connectors/src/connectors/meta-ads-oauth/tools/list-ad-accounts.ts
|
|
94689
|
-
import { z as
|
|
94415
|
+
import { z as z52 } from "zod";
|
|
94690
94416
|
var BASE_URL23 = "https://graph.facebook.com/v21.0/";
|
|
94691
94417
|
var REQUEST_TIMEOUT_MS35 = 6e4;
|
|
94692
94418
|
var cachedToken16 = null;
|
|
@@ -94720,32 +94446,32 @@ async function getProxyToken16(config) {
|
|
|
94720
94446
|
};
|
|
94721
94447
|
return data.token;
|
|
94722
94448
|
}
|
|
94723
|
-
var
|
|
94724
|
-
toolUseIntent:
|
|
94449
|
+
var inputSchema50 = z52.object({
|
|
94450
|
+
toolUseIntent: z52.string().optional().describe(
|
|
94725
94451
|
"Brief description of what you intend to accomplish with this tool call"
|
|
94726
94452
|
),
|
|
94727
|
-
connectionId:
|
|
94453
|
+
connectionId: z52.string().describe("ID of the Meta Ads OAuth connection to use")
|
|
94728
94454
|
});
|
|
94729
|
-
var
|
|
94730
|
-
|
|
94731
|
-
success:
|
|
94732
|
-
adAccounts:
|
|
94733
|
-
|
|
94734
|
-
adAccountId:
|
|
94735
|
-
name:
|
|
94455
|
+
var outputSchema50 = z52.discriminatedUnion("success", [
|
|
94456
|
+
z52.object({
|
|
94457
|
+
success: z52.literal(true),
|
|
94458
|
+
adAccounts: z52.array(
|
|
94459
|
+
z52.object({
|
|
94460
|
+
adAccountId: z52.string(),
|
|
94461
|
+
name: z52.string()
|
|
94736
94462
|
})
|
|
94737
94463
|
)
|
|
94738
94464
|
}),
|
|
94739
|
-
|
|
94740
|
-
success:
|
|
94741
|
-
error:
|
|
94465
|
+
z52.object({
|
|
94466
|
+
success: z52.literal(false),
|
|
94467
|
+
error: z52.string()
|
|
94742
94468
|
})
|
|
94743
94469
|
]);
|
|
94744
94470
|
var listAdAccountsTool2 = new ConnectorTool({
|
|
94745
94471
|
name: "listAdAccounts",
|
|
94746
94472
|
description: "List Meta ad accounts accessible with the current OAuth credentials.",
|
|
94747
|
-
inputSchema:
|
|
94748
|
-
outputSchema:
|
|
94473
|
+
inputSchema: inputSchema50,
|
|
94474
|
+
outputSchema: outputSchema50,
|
|
94749
94475
|
async execute({ connectionId }, connections, config) {
|
|
94750
94476
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
94751
94477
|
if (!connection) {
|
|
@@ -94843,7 +94569,7 @@ var metaAdsOauthOnboarding = new ConnectorOnboarding({
|
|
|
94843
94569
|
});
|
|
94844
94570
|
|
|
94845
94571
|
// ../connectors/src/connectors/meta-ads-oauth/parameters.ts
|
|
94846
|
-
var
|
|
94572
|
+
var parameters44 = {
|
|
94847
94573
|
adAccountId: new ParameterDefinition({
|
|
94848
94574
|
slug: "ad-account-id",
|
|
94849
94575
|
name: "Ad Account ID",
|
|
@@ -94856,7 +94582,7 @@ var parameters45 = {
|
|
|
94856
94582
|
};
|
|
94857
94583
|
|
|
94858
94584
|
// ../connectors/src/connectors/meta-ads-oauth/tools/request.ts
|
|
94859
|
-
import { z as
|
|
94585
|
+
import { z as z53 } from "zod";
|
|
94860
94586
|
var BASE_URL24 = "https://graph.facebook.com/v21.0/";
|
|
94861
94587
|
var REQUEST_TIMEOUT_MS36 = 6e4;
|
|
94862
94588
|
var cachedToken17 = null;
|
|
@@ -94890,27 +94616,27 @@ async function getProxyToken17(config) {
|
|
|
94890
94616
|
};
|
|
94891
94617
|
return data.token;
|
|
94892
94618
|
}
|
|
94893
|
-
var
|
|
94894
|
-
toolUseIntent:
|
|
94619
|
+
var inputSchema51 = z53.object({
|
|
94620
|
+
toolUseIntent: z53.string().optional().describe(
|
|
94895
94621
|
"Brief description of what you intend to accomplish with this tool call"
|
|
94896
94622
|
),
|
|
94897
|
-
connectionId:
|
|
94898
|
-
method:
|
|
94899
|
-
path:
|
|
94623
|
+
connectionId: z53.string().describe("ID of the Meta Ads OAuth connection to use"),
|
|
94624
|
+
method: z53.enum(["GET", "POST"]).describe("HTTP method"),
|
|
94625
|
+
path: z53.string().describe(
|
|
94900
94626
|
"API path appended to https://graph.facebook.com/v21.0/ (e.g., 'act_{adAccountId}/campaigns'). {adAccountId} is automatically replaced."
|
|
94901
94627
|
),
|
|
94902
|
-
queryParams:
|
|
94903
|
-
body:
|
|
94628
|
+
queryParams: z53.record(z53.string(), z53.string()).optional().describe("Query parameters to append to the URL"),
|
|
94629
|
+
body: z53.record(z53.string(), z53.unknown()).optional().describe("POST request body (JSON)")
|
|
94904
94630
|
});
|
|
94905
|
-
var
|
|
94906
|
-
|
|
94907
|
-
success:
|
|
94908
|
-
status:
|
|
94909
|
-
data:
|
|
94631
|
+
var outputSchema51 = z53.discriminatedUnion("success", [
|
|
94632
|
+
z53.object({
|
|
94633
|
+
success: z53.literal(true),
|
|
94634
|
+
status: z53.number(),
|
|
94635
|
+
data: z53.unknown()
|
|
94910
94636
|
}),
|
|
94911
|
-
|
|
94912
|
-
success:
|
|
94913
|
-
error:
|
|
94637
|
+
z53.object({
|
|
94638
|
+
success: z53.literal(false),
|
|
94639
|
+
error: z53.string()
|
|
94914
94640
|
})
|
|
94915
94641
|
]);
|
|
94916
94642
|
var requestTool27 = new ConnectorTool({
|
|
@@ -94918,8 +94644,8 @@ var requestTool27 = new ConnectorTool({
|
|
|
94918
94644
|
description: `Send authenticated requests to the Meta Marketing API v21.0.
|
|
94919
94645
|
Authentication is handled automatically via OAuth proxy.
|
|
94920
94646
|
{adAccountId} in the path is automatically replaced with the connection's ad account ID.`,
|
|
94921
|
-
inputSchema:
|
|
94922
|
-
outputSchema:
|
|
94647
|
+
inputSchema: inputSchema51,
|
|
94648
|
+
outputSchema: outputSchema51,
|
|
94923
94649
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
94924
94650
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
94925
94651
|
if (!connection) {
|
|
@@ -94932,7 +94658,7 @@ Authentication is handled automatically via OAuth proxy.
|
|
|
94932
94658
|
`[connector-request] meta-ads-oauth/${connection.name}: ${method} ${path5}`
|
|
94933
94659
|
);
|
|
94934
94660
|
try {
|
|
94935
|
-
const adAccountId =
|
|
94661
|
+
const adAccountId = parameters44.adAccountId.tryGetValue(connection) ?? "";
|
|
94936
94662
|
const resolvedPath = adAccountId ? path5.replace(/\{adAccountId\}/g, adAccountId) : path5;
|
|
94937
94663
|
let url = `${BASE_URL24}${resolvedPath}`;
|
|
94938
94664
|
if (queryParams && Object.keys(queryParams).length > 0) {
|
|
@@ -94977,7 +94703,7 @@ Authentication is handled automatically via OAuth proxy.
|
|
|
94977
94703
|
});
|
|
94978
94704
|
|
|
94979
94705
|
// ../connectors/src/connectors/meta-ads-oauth/index.ts
|
|
94980
|
-
var
|
|
94706
|
+
var tools44 = {
|
|
94981
94707
|
request: requestTool27,
|
|
94982
94708
|
listAdAccounts: listAdAccountsTool2
|
|
94983
94709
|
};
|
|
@@ -94987,7 +94713,7 @@ var metaAdsOauthConnector = new ConnectorPlugin({
|
|
|
94987
94713
|
name: "Meta Ads (OAuth)",
|
|
94988
94714
|
description: "Connect to Meta (Facebook/Instagram) Ads for advertising campaign data and reporting using OAuth.",
|
|
94989
94715
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/2vyrgcvdf3jETIFXHtbteO/de7f3288e831c9f738e44cf1f961c3bd/meta-icon.webp",
|
|
94990
|
-
parameters:
|
|
94716
|
+
parameters: parameters44,
|
|
94991
94717
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
94992
94718
|
onboarding: metaAdsOauthOnboarding,
|
|
94993
94719
|
proxyPolicy: {
|
|
@@ -95114,7 +94840,7 @@ const res = await meta.request("act_{adAccountId}/campaigns?fields=id,name,statu
|
|
|
95114
94840
|
const data = await res.json();
|
|
95115
94841
|
\`\`\``
|
|
95116
94842
|
},
|
|
95117
|
-
tools:
|
|
94843
|
+
tools: tools44,
|
|
95118
94844
|
async checkConnection(_params, config) {
|
|
95119
94845
|
const { proxyFetch } = config;
|
|
95120
94846
|
try {
|
|
@@ -95188,7 +94914,7 @@ var tiktokAdsOnboarding = new ConnectorOnboarding({
|
|
|
95188
94914
|
});
|
|
95189
94915
|
|
|
95190
94916
|
// ../connectors/src/connectors/tiktok-ads/parameters.ts
|
|
95191
|
-
var
|
|
94917
|
+
var parameters45 = {
|
|
95192
94918
|
accessToken: new ParameterDefinition({
|
|
95193
94919
|
slug: "access-token",
|
|
95194
94920
|
name: "Access Token",
|
|
@@ -95210,30 +94936,30 @@ var parameters46 = {
|
|
|
95210
94936
|
};
|
|
95211
94937
|
|
|
95212
94938
|
// ../connectors/src/connectors/tiktok-ads/tools/request.ts
|
|
95213
|
-
import { z as
|
|
94939
|
+
import { z as z54 } from "zod";
|
|
95214
94940
|
var BASE_URL25 = "https://business-api.tiktok.com/open_api/v1.3/";
|
|
95215
94941
|
var REQUEST_TIMEOUT_MS37 = 6e4;
|
|
95216
|
-
var
|
|
95217
|
-
toolUseIntent:
|
|
94942
|
+
var inputSchema52 = z54.object({
|
|
94943
|
+
toolUseIntent: z54.string().optional().describe(
|
|
95218
94944
|
"Brief description of what you intend to accomplish with this tool call"
|
|
95219
94945
|
),
|
|
95220
|
-
connectionId:
|
|
95221
|
-
method:
|
|
95222
|
-
path:
|
|
94946
|
+
connectionId: z54.string().describe("ID of the TikTok Ads connection to use"),
|
|
94947
|
+
method: z54.enum(["GET", "POST"]).describe("HTTP method"),
|
|
94948
|
+
path: z54.string().describe(
|
|
95223
94949
|
"API path appended to https://business-api.tiktok.com/open_api/v1.3/ (e.g., 'campaign/get/'). The advertiser_id is automatically injected into query params or body."
|
|
95224
94950
|
),
|
|
95225
|
-
queryParams:
|
|
95226
|
-
body:
|
|
94951
|
+
queryParams: z54.record(z54.string(), z54.string()).optional().describe("Query parameters to append to the URL"),
|
|
94952
|
+
body: z54.record(z54.string(), z54.unknown()).optional().describe("POST request body (JSON)")
|
|
95227
94953
|
});
|
|
95228
|
-
var
|
|
95229
|
-
|
|
95230
|
-
success:
|
|
95231
|
-
status:
|
|
95232
|
-
data:
|
|
94954
|
+
var outputSchema52 = z54.discriminatedUnion("success", [
|
|
94955
|
+
z54.object({
|
|
94956
|
+
success: z54.literal(true),
|
|
94957
|
+
status: z54.number(),
|
|
94958
|
+
data: z54.unknown()
|
|
95233
94959
|
}),
|
|
95234
|
-
|
|
95235
|
-
success:
|
|
95236
|
-
error:
|
|
94960
|
+
z54.object({
|
|
94961
|
+
success: z54.literal(false),
|
|
94962
|
+
error: z54.string()
|
|
95237
94963
|
})
|
|
95238
94964
|
]);
|
|
95239
94965
|
var requestTool28 = new ConnectorTool({
|
|
@@ -95241,8 +94967,8 @@ var requestTool28 = new ConnectorTool({
|
|
|
95241
94967
|
description: `Send authenticated requests to the TikTok Marketing API v1.3.
|
|
95242
94968
|
Authentication is handled via the configured access token (sent as Access-Token header).
|
|
95243
94969
|
The advertiser_id is automatically injected if configured.`,
|
|
95244
|
-
inputSchema:
|
|
95245
|
-
outputSchema:
|
|
94970
|
+
inputSchema: inputSchema52,
|
|
94971
|
+
outputSchema: outputSchema52,
|
|
95246
94972
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections) {
|
|
95247
94973
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
95248
94974
|
if (!connection) {
|
|
@@ -95255,8 +94981,8 @@ The advertiser_id is automatically injected if configured.`,
|
|
|
95255
94981
|
`[connector-request] tiktok-ads/${connection.name}: ${method} ${path5}`
|
|
95256
94982
|
);
|
|
95257
94983
|
try {
|
|
95258
|
-
const accessToken =
|
|
95259
|
-
const advertiserId =
|
|
94984
|
+
const accessToken = parameters45.accessToken.getValue(connection);
|
|
94985
|
+
const advertiserId = parameters45.advertiserId.tryGetValue(connection) ?? "";
|
|
95260
94986
|
let url = `${BASE_URL25}${path5}`;
|
|
95261
94987
|
if (method === "GET") {
|
|
95262
94988
|
const params = new URLSearchParams(queryParams ?? {});
|
|
@@ -95310,7 +95036,7 @@ The advertiser_id is automatically injected if configured.`,
|
|
|
95310
95036
|
|
|
95311
95037
|
// ../connectors/src/connectors/tiktok-ads/index.ts
|
|
95312
95038
|
var BASE_URL26 = "https://business-api.tiktok.com/open_api/v1.3/";
|
|
95313
|
-
var
|
|
95039
|
+
var tools45 = {
|
|
95314
95040
|
request: requestTool28
|
|
95315
95041
|
};
|
|
95316
95042
|
var tiktokAdsConnector = new ConnectorPlugin({
|
|
@@ -95319,7 +95045,7 @@ var tiktokAdsConnector = new ConnectorPlugin({
|
|
|
95319
95045
|
name: "TikTok Ads",
|
|
95320
95046
|
description: "Connect to TikTok Ads for advertising campaign data and reporting using an access token.",
|
|
95321
95047
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/01jHuwvmhe4ts0wj23Hxpm/afac9fa50ac5b353927900a122e898ab/tiktok.webp",
|
|
95322
|
-
parameters:
|
|
95048
|
+
parameters: parameters45,
|
|
95323
95049
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
95324
95050
|
onboarding: tiktokAdsOnboarding,
|
|
95325
95051
|
systemPrompt: {
|
|
@@ -95470,16 +95196,16 @@ const rows = await tiktok.getReport({
|
|
|
95470
95196
|
const campaigns = await tiktok.listCampaigns();
|
|
95471
95197
|
\`\`\``
|
|
95472
95198
|
},
|
|
95473
|
-
tools:
|
|
95199
|
+
tools: tools45,
|
|
95474
95200
|
async checkConnection(params) {
|
|
95475
|
-
const accessToken = params[
|
|
95201
|
+
const accessToken = params[parameters45.accessToken.slug];
|
|
95476
95202
|
if (!accessToken) {
|
|
95477
95203
|
return {
|
|
95478
95204
|
success: false,
|
|
95479
95205
|
error: "Access token is required"
|
|
95480
95206
|
};
|
|
95481
95207
|
}
|
|
95482
|
-
const advertiserId = params[
|
|
95208
|
+
const advertiserId = params[parameters45.advertiserId.slug];
|
|
95483
95209
|
if (!advertiserId) {
|
|
95484
95210
|
return { success: true };
|
|
95485
95211
|
}
|
|
@@ -95515,7 +95241,7 @@ const campaigns = await tiktok.listCampaigns();
|
|
|
95515
95241
|
});
|
|
95516
95242
|
|
|
95517
95243
|
// ../connectors/src/connectors/tiktok-ads-oauth/tools/list-advertisers.ts
|
|
95518
|
-
import { z as
|
|
95244
|
+
import { z as z55 } from "zod";
|
|
95519
95245
|
var BASE_URL27 = "https://business-api.tiktok.com/open_api/v1.3/";
|
|
95520
95246
|
var REQUEST_TIMEOUT_MS38 = 6e4;
|
|
95521
95247
|
var cachedToken18 = null;
|
|
@@ -95549,32 +95275,32 @@ async function getProxyToken18(config) {
|
|
|
95549
95275
|
};
|
|
95550
95276
|
return data.token;
|
|
95551
95277
|
}
|
|
95552
|
-
var
|
|
95553
|
-
toolUseIntent:
|
|
95278
|
+
var inputSchema53 = z55.object({
|
|
95279
|
+
toolUseIntent: z55.string().optional().describe(
|
|
95554
95280
|
"Brief description of what you intend to accomplish with this tool call"
|
|
95555
95281
|
),
|
|
95556
|
-
connectionId:
|
|
95282
|
+
connectionId: z55.string().describe("ID of the TikTok Ads OAuth connection to use")
|
|
95557
95283
|
});
|
|
95558
|
-
var
|
|
95559
|
-
|
|
95560
|
-
success:
|
|
95561
|
-
advertisers:
|
|
95562
|
-
|
|
95563
|
-
advertiserId:
|
|
95564
|
-
name:
|
|
95284
|
+
var outputSchema53 = z55.discriminatedUnion("success", [
|
|
95285
|
+
z55.object({
|
|
95286
|
+
success: z55.literal(true),
|
|
95287
|
+
advertisers: z55.array(
|
|
95288
|
+
z55.object({
|
|
95289
|
+
advertiserId: z55.string(),
|
|
95290
|
+
name: z55.string()
|
|
95565
95291
|
})
|
|
95566
95292
|
)
|
|
95567
95293
|
}),
|
|
95568
|
-
|
|
95569
|
-
success:
|
|
95570
|
-
error:
|
|
95294
|
+
z55.object({
|
|
95295
|
+
success: z55.literal(false),
|
|
95296
|
+
error: z55.string()
|
|
95571
95297
|
})
|
|
95572
95298
|
]);
|
|
95573
95299
|
var listAdvertisersTool = new ConnectorTool({
|
|
95574
95300
|
name: "listAdvertisers",
|
|
95575
95301
|
description: "List TikTok Ads advertiser accounts accessible with the current OAuth credentials.",
|
|
95576
|
-
inputSchema:
|
|
95577
|
-
outputSchema:
|
|
95302
|
+
inputSchema: inputSchema53,
|
|
95303
|
+
outputSchema: outputSchema53,
|
|
95578
95304
|
async execute({ connectionId }, connections, config) {
|
|
95579
95305
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
95580
95306
|
if (!connection) {
|
|
@@ -95682,7 +95408,7 @@ var tiktokAdsOauthOnboarding = new ConnectorOnboarding({
|
|
|
95682
95408
|
});
|
|
95683
95409
|
|
|
95684
95410
|
// ../connectors/src/connectors/tiktok-ads-oauth/parameters.ts
|
|
95685
|
-
var
|
|
95411
|
+
var parameters46 = {
|
|
95686
95412
|
advertiserId: new ParameterDefinition({
|
|
95687
95413
|
slug: "advertiser-id",
|
|
95688
95414
|
name: "Advertiser ID",
|
|
@@ -95695,7 +95421,7 @@ var parameters47 = {
|
|
|
95695
95421
|
};
|
|
95696
95422
|
|
|
95697
95423
|
// ../connectors/src/connectors/tiktok-ads-oauth/tools/request.ts
|
|
95698
|
-
import { z as
|
|
95424
|
+
import { z as z56 } from "zod";
|
|
95699
95425
|
var BASE_URL28 = "https://business-api.tiktok.com/open_api/v1.3/";
|
|
95700
95426
|
var REQUEST_TIMEOUT_MS39 = 6e4;
|
|
95701
95427
|
var cachedToken19 = null;
|
|
@@ -95729,27 +95455,27 @@ async function getProxyToken19(config) {
|
|
|
95729
95455
|
};
|
|
95730
95456
|
return data.token;
|
|
95731
95457
|
}
|
|
95732
|
-
var
|
|
95733
|
-
toolUseIntent:
|
|
95458
|
+
var inputSchema54 = z56.object({
|
|
95459
|
+
toolUseIntent: z56.string().optional().describe(
|
|
95734
95460
|
"Brief description of what you intend to accomplish with this tool call"
|
|
95735
95461
|
),
|
|
95736
|
-
connectionId:
|
|
95737
|
-
method:
|
|
95738
|
-
path:
|
|
95462
|
+
connectionId: z56.string().describe("ID of the TikTok Ads OAuth connection to use"),
|
|
95463
|
+
method: z56.enum(["GET", "POST"]).describe("HTTP method"),
|
|
95464
|
+
path: z56.string().describe(
|
|
95739
95465
|
"API path appended to https://business-api.tiktok.com/open_api/v1.3/ (e.g., 'campaign/get/'). The advertiser_id is automatically injected."
|
|
95740
95466
|
),
|
|
95741
|
-
queryParams:
|
|
95742
|
-
body:
|
|
95467
|
+
queryParams: z56.record(z56.string(), z56.string()).optional().describe("Query parameters to append to the URL"),
|
|
95468
|
+
body: z56.record(z56.string(), z56.unknown()).optional().describe("POST request body (JSON)")
|
|
95743
95469
|
});
|
|
95744
|
-
var
|
|
95745
|
-
|
|
95746
|
-
success:
|
|
95747
|
-
status:
|
|
95748
|
-
data:
|
|
95470
|
+
var outputSchema54 = z56.discriminatedUnion("success", [
|
|
95471
|
+
z56.object({
|
|
95472
|
+
success: z56.literal(true),
|
|
95473
|
+
status: z56.number(),
|
|
95474
|
+
data: z56.unknown()
|
|
95749
95475
|
}),
|
|
95750
|
-
|
|
95751
|
-
success:
|
|
95752
|
-
error:
|
|
95476
|
+
z56.object({
|
|
95477
|
+
success: z56.literal(false),
|
|
95478
|
+
error: z56.string()
|
|
95753
95479
|
})
|
|
95754
95480
|
]);
|
|
95755
95481
|
var requestTool29 = new ConnectorTool({
|
|
@@ -95757,8 +95483,8 @@ var requestTool29 = new ConnectorTool({
|
|
|
95757
95483
|
description: `Send authenticated requests to the TikTok Marketing API v1.3.
|
|
95758
95484
|
Authentication is handled automatically via OAuth proxy.
|
|
95759
95485
|
The advertiser_id is automatically injected if configured.`,
|
|
95760
|
-
inputSchema:
|
|
95761
|
-
outputSchema:
|
|
95486
|
+
inputSchema: inputSchema54,
|
|
95487
|
+
outputSchema: outputSchema54,
|
|
95762
95488
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
95763
95489
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
95764
95490
|
if (!connection) {
|
|
@@ -95771,7 +95497,7 @@ The advertiser_id is automatically injected if configured.`,
|
|
|
95771
95497
|
`[connector-request] tiktok-ads-oauth/${connection.name}: ${method} ${path5}`
|
|
95772
95498
|
);
|
|
95773
95499
|
try {
|
|
95774
|
-
const advertiserId =
|
|
95500
|
+
const advertiserId = parameters46.advertiserId.tryGetValue(connection) ?? "";
|
|
95775
95501
|
let url = `${BASE_URL28}${path5}`;
|
|
95776
95502
|
if (method === "GET") {
|
|
95777
95503
|
const params = new URLSearchParams(queryParams ?? {});
|
|
@@ -95830,7 +95556,7 @@ The advertiser_id is automatically injected if configured.`,
|
|
|
95830
95556
|
});
|
|
95831
95557
|
|
|
95832
95558
|
// ../connectors/src/connectors/tiktok-ads-oauth/index.ts
|
|
95833
|
-
var
|
|
95559
|
+
var tools46 = {
|
|
95834
95560
|
request: requestTool29,
|
|
95835
95561
|
listAdvertisers: listAdvertisersTool
|
|
95836
95562
|
};
|
|
@@ -95840,7 +95566,7 @@ var tiktokAdsOauthConnector = new ConnectorPlugin({
|
|
|
95840
95566
|
name: "TikTok Ads (OAuth)",
|
|
95841
95567
|
description: "Connect to TikTok Ads for advertising campaign data and reporting using OAuth.",
|
|
95842
95568
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/01jHuwvmhe4ts0wj23Hxpm/afac9fa50ac5b353927900a122e898ab/tiktok.webp",
|
|
95843
|
-
parameters:
|
|
95569
|
+
parameters: parameters46,
|
|
95844
95570
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
95845
95571
|
onboarding: tiktokAdsOauthOnboarding,
|
|
95846
95572
|
proxyPolicy: {
|
|
@@ -95985,7 +95711,7 @@ const res = await tiktok.request("campaign/get/?advertiser_id={advertiserId}");
|
|
|
95985
95711
|
const data = await res.json();
|
|
95986
95712
|
\`\`\``
|
|
95987
95713
|
},
|
|
95988
|
-
tools:
|
|
95714
|
+
tools: tools46,
|
|
95989
95715
|
async checkConnection(_params, config) {
|
|
95990
95716
|
const { proxyFetch } = config;
|
|
95991
95717
|
try {
|
|
@@ -96029,7 +95755,7 @@ var mailchimpOnboarding = new ConnectorOnboarding({
|
|
|
96029
95755
|
});
|
|
96030
95756
|
|
|
96031
95757
|
// ../connectors/src/connectors/mailchimp/parameters.ts
|
|
96032
|
-
var
|
|
95758
|
+
var parameters47 = {
|
|
96033
95759
|
apiKey: new ParameterDefinition({
|
|
96034
95760
|
slug: "api-key",
|
|
96035
95761
|
name: "Mailchimp API Key",
|
|
@@ -96042,7 +95768,7 @@ var parameters48 = {
|
|
|
96042
95768
|
};
|
|
96043
95769
|
|
|
96044
95770
|
// ../connectors/src/connectors/mailchimp/tools/request.ts
|
|
96045
|
-
import { z as
|
|
95771
|
+
import { z as z57 } from "zod";
|
|
96046
95772
|
var REQUEST_TIMEOUT_MS40 = 6e4;
|
|
96047
95773
|
function extractDatacenter(apiKey) {
|
|
96048
95774
|
const parts = apiKey.split("-");
|
|
@@ -96054,29 +95780,29 @@ function extractDatacenter(apiKey) {
|
|
|
96054
95780
|
}
|
|
96055
95781
|
return dc;
|
|
96056
95782
|
}
|
|
96057
|
-
var
|
|
96058
|
-
toolUseIntent:
|
|
95783
|
+
var inputSchema55 = z57.object({
|
|
95784
|
+
toolUseIntent: z57.string().optional().describe(
|
|
96059
95785
|
"Brief description of what you intend to accomplish with this tool call"
|
|
96060
95786
|
),
|
|
96061
|
-
connectionId:
|
|
96062
|
-
method:
|
|
95787
|
+
connectionId: z57.string().describe("ID of the Mailchimp connection to use"),
|
|
95788
|
+
method: z57.enum(["GET", "POST", "PATCH", "PUT", "DELETE"]).describe(
|
|
96063
95789
|
"HTTP method. GET for reading, POST for creating, PATCH/PUT for updating, DELETE for removing."
|
|
96064
95790
|
),
|
|
96065
|
-
path:
|
|
95791
|
+
path: z57.string().describe(
|
|
96066
95792
|
"API path appended to the base URL (e.g., '/lists', '/campaigns', '/lists/{list_id}/members')"
|
|
96067
95793
|
),
|
|
96068
|
-
queryParams:
|
|
96069
|
-
body:
|
|
95794
|
+
queryParams: z57.record(z57.string(), z57.string()).optional().describe("Query parameters to append to the URL (e.g., count, offset)"),
|
|
95795
|
+
body: z57.record(z57.string(), z57.unknown()).optional().describe("Request body (JSON) for POST/PATCH/PUT requests")
|
|
96070
95796
|
});
|
|
96071
|
-
var
|
|
96072
|
-
|
|
96073
|
-
success:
|
|
96074
|
-
status:
|
|
96075
|
-
data:
|
|
95797
|
+
var outputSchema55 = z57.discriminatedUnion("success", [
|
|
95798
|
+
z57.object({
|
|
95799
|
+
success: z57.literal(true),
|
|
95800
|
+
status: z57.number(),
|
|
95801
|
+
data: z57.record(z57.string(), z57.unknown())
|
|
96076
95802
|
}),
|
|
96077
|
-
|
|
96078
|
-
success:
|
|
96079
|
-
error:
|
|
95803
|
+
z57.object({
|
|
95804
|
+
success: z57.literal(false),
|
|
95805
|
+
error: z57.string()
|
|
96080
95806
|
})
|
|
96081
95807
|
]);
|
|
96082
95808
|
var requestTool30 = new ConnectorTool({
|
|
@@ -96085,8 +95811,8 @@ var requestTool30 = new ConnectorTool({
|
|
|
96085
95811
|
Authentication is handled automatically using the API Key (Basic Auth).
|
|
96086
95812
|
Use this tool for all Mailchimp API interactions: managing audiences/lists, campaigns, members/subscribers, templates, automations, and reports.
|
|
96087
95813
|
The datacenter is automatically extracted from the API key suffix.`,
|
|
96088
|
-
inputSchema:
|
|
96089
|
-
outputSchema:
|
|
95814
|
+
inputSchema: inputSchema55,
|
|
95815
|
+
outputSchema: outputSchema55,
|
|
96090
95816
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections) {
|
|
96091
95817
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
96092
95818
|
if (!connection) {
|
|
@@ -96099,7 +95825,7 @@ The datacenter is automatically extracted from the API key suffix.`,
|
|
|
96099
95825
|
`[connector-request] mailchimp/${connection.name}: ${method} ${path5}`
|
|
96100
95826
|
);
|
|
96101
95827
|
try {
|
|
96102
|
-
const apiKey =
|
|
95828
|
+
const apiKey = parameters47.apiKey.getValue(connection);
|
|
96103
95829
|
const dc = extractDatacenter(apiKey);
|
|
96104
95830
|
const baseUrl = `https://${dc}.api.mailchimp.com/3.0`;
|
|
96105
95831
|
let url = `${baseUrl}${path5.startsWith("/") ? "" : "/"}${path5}`;
|
|
@@ -96136,14 +95862,14 @@ The datacenter is automatically extracted from the API key suffix.`,
|
|
|
96136
95862
|
});
|
|
96137
95863
|
|
|
96138
95864
|
// ../connectors/src/connectors/mailchimp/index.ts
|
|
96139
|
-
var
|
|
95865
|
+
var tools47 = { request: requestTool30 };
|
|
96140
95866
|
var mailchimpConnector = new ConnectorPlugin({
|
|
96141
95867
|
slug: "mailchimp",
|
|
96142
95868
|
authType: null,
|
|
96143
95869
|
name: "Mailchimp",
|
|
96144
95870
|
description: "Connect to Mailchimp for email marketing, audiences, campaigns, and analytics.",
|
|
96145
95871
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/19Rac6B8eGiLpQb4lKMbG3/10f567f85572aeb16f2ee6aaa6602987/mailchimp.png",
|
|
96146
|
-
parameters:
|
|
95872
|
+
parameters: parameters47,
|
|
96147
95873
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
96148
95874
|
onboarding: mailchimpOnboarding,
|
|
96149
95875
|
systemPrompt: {
|
|
@@ -96342,7 +96068,7 @@ export default async function handler(c: Context) {
|
|
|
96342
96068
|
- subscriber_hash\u306F\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u306E\u5C0F\u6587\u5B57\u306EMD5\u30CF\u30C3\u30B7\u30E5
|
|
96343
96069
|
- \u30A8\u30E9\u30FC\u306F\`type\`, \`title\`, \`status\`, \`detail\`, \`instance\`\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FD4\u5374`
|
|
96344
96070
|
},
|
|
96345
|
-
tools:
|
|
96071
|
+
tools: tools47
|
|
96346
96072
|
});
|
|
96347
96073
|
|
|
96348
96074
|
// ../connectors/src/connectors/mailchimp-oauth/setup.ts
|
|
@@ -96360,7 +96086,7 @@ var mailchimpOauthOnboarding = new ConnectorOnboarding({
|
|
|
96360
96086
|
});
|
|
96361
96087
|
|
|
96362
96088
|
// ../connectors/src/connectors/mailchimp-oauth/parameters.ts
|
|
96363
|
-
var
|
|
96089
|
+
var parameters48 = {
|
|
96364
96090
|
serverPrefix: new ParameterDefinition({
|
|
96365
96091
|
slug: "server-prefix",
|
|
96366
96092
|
name: "Server Prefix (Datacenter)",
|
|
@@ -96373,7 +96099,7 @@ var parameters49 = {
|
|
|
96373
96099
|
};
|
|
96374
96100
|
|
|
96375
96101
|
// ../connectors/src/connectors/mailchimp-oauth/tools/request.ts
|
|
96376
|
-
import { z as
|
|
96102
|
+
import { z as z58 } from "zod";
|
|
96377
96103
|
var REQUEST_TIMEOUT_MS41 = 6e4;
|
|
96378
96104
|
var cachedToken20 = null;
|
|
96379
96105
|
async function getProxyToken20(config) {
|
|
@@ -96406,35 +96132,35 @@ async function getProxyToken20(config) {
|
|
|
96406
96132
|
};
|
|
96407
96133
|
return data.token;
|
|
96408
96134
|
}
|
|
96409
|
-
var
|
|
96410
|
-
toolUseIntent:
|
|
96135
|
+
var inputSchema56 = z58.object({
|
|
96136
|
+
toolUseIntent: z58.string().optional().describe(
|
|
96411
96137
|
"Brief description of what you intend to accomplish with this tool call"
|
|
96412
96138
|
),
|
|
96413
|
-
connectionId:
|
|
96414
|
-
method:
|
|
96415
|
-
path:
|
|
96139
|
+
connectionId: z58.string().describe("ID of the Mailchimp OAuth connection to use"),
|
|
96140
|
+
method: z58.enum(["GET", "POST", "PATCH", "PUT", "DELETE"]).describe("HTTP method"),
|
|
96141
|
+
path: z58.string().describe(
|
|
96416
96142
|
"API path appended to the base URL (e.g., '/lists', '/campaigns', '/lists/{list_id}/members')"
|
|
96417
96143
|
),
|
|
96418
|
-
queryParams:
|
|
96419
|
-
body:
|
|
96144
|
+
queryParams: z58.record(z58.string(), z58.string()).optional().describe("Query parameters to append to the URL"),
|
|
96145
|
+
body: z58.record(z58.string(), z58.unknown()).optional().describe("Request body (JSON) for POST/PATCH/PUT requests")
|
|
96420
96146
|
});
|
|
96421
|
-
var
|
|
96422
|
-
|
|
96423
|
-
success:
|
|
96424
|
-
status:
|
|
96425
|
-
data:
|
|
96147
|
+
var outputSchema56 = z58.discriminatedUnion("success", [
|
|
96148
|
+
z58.object({
|
|
96149
|
+
success: z58.literal(true),
|
|
96150
|
+
status: z58.number(),
|
|
96151
|
+
data: z58.record(z58.string(), z58.unknown())
|
|
96426
96152
|
}),
|
|
96427
|
-
|
|
96428
|
-
success:
|
|
96429
|
-
error:
|
|
96153
|
+
z58.object({
|
|
96154
|
+
success: z58.literal(false),
|
|
96155
|
+
error: z58.string()
|
|
96430
96156
|
})
|
|
96431
96157
|
]);
|
|
96432
96158
|
var requestTool31 = new ConnectorTool({
|
|
96433
96159
|
name: "request",
|
|
96434
96160
|
description: `Send authenticated requests to the Mailchimp Marketing API v3.
|
|
96435
96161
|
Authentication is handled automatically via OAuth proxy.`,
|
|
96436
|
-
inputSchema:
|
|
96437
|
-
outputSchema:
|
|
96162
|
+
inputSchema: inputSchema56,
|
|
96163
|
+
outputSchema: outputSchema56,
|
|
96438
96164
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
96439
96165
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
96440
96166
|
if (!connection) {
|
|
@@ -96447,7 +96173,7 @@ Authentication is handled automatically via OAuth proxy.`,
|
|
|
96447
96173
|
`[connector-request] mailchimp-oauth/${connection.name}: ${method} ${path5}`
|
|
96448
96174
|
);
|
|
96449
96175
|
try {
|
|
96450
|
-
const serverPrefix =
|
|
96176
|
+
const serverPrefix = parameters48.serverPrefix.getValue(connection);
|
|
96451
96177
|
const baseUrl = `https://${serverPrefix}.api.mailchimp.com/3.0`;
|
|
96452
96178
|
let url = `${baseUrl}${path5.startsWith("/") ? "" : "/"}${path5}`;
|
|
96453
96179
|
if (queryParams) {
|
|
@@ -96489,14 +96215,14 @@ Authentication is handled automatically via OAuth proxy.`,
|
|
|
96489
96215
|
});
|
|
96490
96216
|
|
|
96491
96217
|
// ../connectors/src/connectors/mailchimp-oauth/index.ts
|
|
96492
|
-
var
|
|
96218
|
+
var tools48 = { request: requestTool31 };
|
|
96493
96219
|
var mailchimpOauthConnector = new ConnectorPlugin({
|
|
96494
96220
|
slug: "mailchimp",
|
|
96495
96221
|
authType: AUTH_TYPES.OAUTH,
|
|
96496
96222
|
name: "Mailchimp (OAuth)",
|
|
96497
96223
|
description: "Connect to Mailchimp for email marketing, audiences, campaigns, and analytics using OAuth.",
|
|
96498
96224
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/19Rac6B8eGiLpQb4lKMbG3/10f567f85572aeb16f2ee6aaa6602987/mailchimp.png",
|
|
96499
|
-
parameters:
|
|
96225
|
+
parameters: parameters48,
|
|
96500
96226
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
96501
96227
|
onboarding: mailchimpOauthOnboarding,
|
|
96502
96228
|
proxyPolicy: {
|
|
@@ -96625,7 +96351,7 @@ const res = await mailchimp.request("/lists?count=10");
|
|
|
96625
96351
|
const data = await res.json();
|
|
96626
96352
|
\`\`\``
|
|
96627
96353
|
},
|
|
96628
|
-
tools:
|
|
96354
|
+
tools: tools48,
|
|
96629
96355
|
async checkConnection(params, config) {
|
|
96630
96356
|
const { proxyFetch } = config;
|
|
96631
96357
|
const serverPrefix = params["server-prefix"];
|
|
@@ -96666,7 +96392,7 @@ var customerioOnboarding = new ConnectorOnboarding({
|
|
|
96666
96392
|
});
|
|
96667
96393
|
|
|
96668
96394
|
// ../connectors/src/connectors/customerio/parameters.ts
|
|
96669
|
-
var
|
|
96395
|
+
var parameters49 = {
|
|
96670
96396
|
appApiKey: new ParameterDefinition({
|
|
96671
96397
|
slug: "app-api-key",
|
|
96672
96398
|
name: "App API Key",
|
|
@@ -96688,32 +96414,32 @@ var parameters50 = {
|
|
|
96688
96414
|
};
|
|
96689
96415
|
|
|
96690
96416
|
// ../connectors/src/connectors/customerio/tools/request.ts
|
|
96691
|
-
import { z as
|
|
96417
|
+
import { z as z59 } from "zod";
|
|
96692
96418
|
var REQUEST_TIMEOUT_MS42 = 6e4;
|
|
96693
96419
|
function getBaseUrl(region) {
|
|
96694
96420
|
return region === "eu" ? "https://api-eu.customer.io" : "https://api.customer.io";
|
|
96695
96421
|
}
|
|
96696
|
-
var
|
|
96697
|
-
toolUseIntent:
|
|
96422
|
+
var inputSchema57 = z59.object({
|
|
96423
|
+
toolUseIntent: z59.string().optional().describe(
|
|
96698
96424
|
"Brief description of what you intend to accomplish with this tool call"
|
|
96699
96425
|
),
|
|
96700
|
-
connectionId:
|
|
96701
|
-
method:
|
|
96702
|
-
path:
|
|
96426
|
+
connectionId: z59.string().describe("ID of the Customer.io connection to use"),
|
|
96427
|
+
method: z59.enum(["GET", "POST", "PUT", "PATCH", "DELETE"]).describe("HTTP method"),
|
|
96428
|
+
path: z59.string().describe(
|
|
96703
96429
|
"API path (e.g., '/v1/customers', '/v1/segments', '/v1/campaigns', '/v1/send/email')"
|
|
96704
96430
|
),
|
|
96705
|
-
queryParams:
|
|
96706
|
-
body:
|
|
96431
|
+
queryParams: z59.record(z59.string(), z59.string()).optional().describe("Query parameters to append to the URL"),
|
|
96432
|
+
body: z59.record(z59.string(), z59.unknown()).optional().describe("Request body (JSON) for POST/PUT/PATCH requests")
|
|
96707
96433
|
});
|
|
96708
|
-
var
|
|
96709
|
-
|
|
96710
|
-
success:
|
|
96711
|
-
status:
|
|
96712
|
-
data:
|
|
96434
|
+
var outputSchema57 = z59.discriminatedUnion("success", [
|
|
96435
|
+
z59.object({
|
|
96436
|
+
success: z59.literal(true),
|
|
96437
|
+
status: z59.number(),
|
|
96438
|
+
data: z59.record(z59.string(), z59.unknown())
|
|
96713
96439
|
}),
|
|
96714
|
-
|
|
96715
|
-
success:
|
|
96716
|
-
error:
|
|
96440
|
+
z59.object({
|
|
96441
|
+
success: z59.literal(false),
|
|
96442
|
+
error: z59.string()
|
|
96717
96443
|
})
|
|
96718
96444
|
]);
|
|
96719
96445
|
var requestTool32 = new ConnectorTool({
|
|
@@ -96722,8 +96448,8 @@ var requestTool32 = new ConnectorTool({
|
|
|
96722
96448
|
Authentication is handled automatically using the App API Key (Bearer token).
|
|
96723
96449
|
Use this tool for reading customer data, managing campaigns, segments, broadcasts, sending transactional messages, and retrieving delivery information.
|
|
96724
96450
|
The App API is the read and management path for Customer.io data.`,
|
|
96725
|
-
inputSchema:
|
|
96726
|
-
outputSchema:
|
|
96451
|
+
inputSchema: inputSchema57,
|
|
96452
|
+
outputSchema: outputSchema57,
|
|
96727
96453
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections) {
|
|
96728
96454
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
96729
96455
|
if (!connection) {
|
|
@@ -96736,8 +96462,8 @@ The App API is the read and management path for Customer.io data.`,
|
|
|
96736
96462
|
`[connector-request] customerio/${connection.name}: ${method} ${path5}`
|
|
96737
96463
|
);
|
|
96738
96464
|
try {
|
|
96739
|
-
const appApiKey =
|
|
96740
|
-
const region =
|
|
96465
|
+
const appApiKey = parameters49.appApiKey.getValue(connection);
|
|
96466
|
+
const region = parameters49.region.tryGetValue(connection);
|
|
96741
96467
|
const baseUrl = getBaseUrl(region);
|
|
96742
96468
|
let url = `${baseUrl}${path5.startsWith("/") ? "" : "/"}${path5}`;
|
|
96743
96469
|
if (queryParams) {
|
|
@@ -96782,14 +96508,14 @@ The App API is the read and management path for Customer.io data.`,
|
|
|
96782
96508
|
});
|
|
96783
96509
|
|
|
96784
96510
|
// ../connectors/src/connectors/customerio/index.ts
|
|
96785
|
-
var
|
|
96511
|
+
var tools49 = { request: requestTool32 };
|
|
96786
96512
|
var customerioConnector = new ConnectorPlugin({
|
|
96787
96513
|
slug: "customerio",
|
|
96788
96514
|
authType: null,
|
|
96789
96515
|
name: "Customer.io",
|
|
96790
96516
|
description: "Connect to Customer.io App API for reading customer data, managing campaigns, segments, and sending transactional messages.",
|
|
96791
96517
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/nngohabT7oHDIgQYAVBpz/6f6c7662ef4692eb9869e3e69dd57114/customerio.png",
|
|
96792
|
-
parameters:
|
|
96518
|
+
parameters: parameters49,
|
|
96793
96519
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
96794
96520
|
onboarding: customerioOnboarding,
|
|
96795
96521
|
systemPrompt: {
|
|
@@ -96962,11 +96688,11 @@ export default async function handler(c: Context) {
|
|
|
96962
96688
|
- \u5927\u91CF\u30C7\u30FC\u30BF\u53D6\u5F97\u306B\u306Fexports\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u3092\u4F7F\u7528
|
|
96963
96689
|
- \u30DA\u30FC\u30B8\u30CD\u30FC\u30B7\u30E7\u30F3\u306F\u9867\u5BA2\u4E00\u89A7\u3067\u30AB\u30FC\u30BD\u30EB\u30D9\u30FC\u30B9\u306E\`start\`\u30D1\u30E9\u30E1\u30FC\u30BF\u3092\u4F7F\u7528`
|
|
96964
96690
|
},
|
|
96965
|
-
tools:
|
|
96691
|
+
tools: tools49
|
|
96966
96692
|
});
|
|
96967
96693
|
|
|
96968
96694
|
// ../connectors/src/connectors/gmail-oauth/tools/request.ts
|
|
96969
|
-
import { z as
|
|
96695
|
+
import { z as z60 } from "zod";
|
|
96970
96696
|
var BASE_URL29 = "https://gmail.googleapis.com/gmail/v1/users";
|
|
96971
96697
|
var REQUEST_TIMEOUT_MS43 = 6e4;
|
|
96972
96698
|
var cachedToken21 = null;
|
|
@@ -97000,28 +96726,28 @@ async function getProxyToken21(config) {
|
|
|
97000
96726
|
};
|
|
97001
96727
|
return data.token;
|
|
97002
96728
|
}
|
|
97003
|
-
var
|
|
97004
|
-
toolUseIntent:
|
|
96729
|
+
var inputSchema58 = z60.object({
|
|
96730
|
+
toolUseIntent: z60.string().optional().describe(
|
|
97005
96731
|
"Brief description of what you intend to accomplish with this tool call"
|
|
97006
96732
|
),
|
|
97007
|
-
connectionId:
|
|
97008
|
-
method:
|
|
97009
|
-
path:
|
|
96733
|
+
connectionId: z60.string().describe("ID of the Gmail OAuth connection to use"),
|
|
96734
|
+
method: z60.enum(["GET"]).describe("HTTP method (read-only, GET only)"),
|
|
96735
|
+
path: z60.string().describe(
|
|
97010
96736
|
"API path appended to https://gmail.googleapis.com/gmail/v1/users (e.g., '/me/messages', '/me/messages/{id}', '/me/labels'). Use '/me' as the userId."
|
|
97011
96737
|
),
|
|
97012
|
-
queryParams:
|
|
96738
|
+
queryParams: z60.record(z60.string(), z60.string()).optional().describe(
|
|
97013
96739
|
"Query parameters to append to the URL (e.g., { q: 'from:example@gmail.com', maxResults: '10' })"
|
|
97014
96740
|
)
|
|
97015
96741
|
});
|
|
97016
|
-
var
|
|
97017
|
-
|
|
97018
|
-
success:
|
|
97019
|
-
status:
|
|
97020
|
-
data:
|
|
96742
|
+
var outputSchema58 = z60.discriminatedUnion("success", [
|
|
96743
|
+
z60.object({
|
|
96744
|
+
success: z60.literal(true),
|
|
96745
|
+
status: z60.number(),
|
|
96746
|
+
data: z60.record(z60.string(), z60.unknown())
|
|
97021
96747
|
}),
|
|
97022
|
-
|
|
97023
|
-
success:
|
|
97024
|
-
error:
|
|
96748
|
+
z60.object({
|
|
96749
|
+
success: z60.literal(false),
|
|
96750
|
+
error: z60.string()
|
|
97025
96751
|
})
|
|
97026
96752
|
]);
|
|
97027
96753
|
var requestTool33 = new ConnectorTool({
|
|
@@ -97029,8 +96755,8 @@ var requestTool33 = new ConnectorTool({
|
|
|
97029
96755
|
description: `Send authenticated GET requests to the Gmail API v1.
|
|
97030
96756
|
Authentication is handled automatically via OAuth proxy.
|
|
97031
96757
|
All paths are relative to https://gmail.googleapis.com/gmail/v1/users. Use '/me' as the userId prefix (e.g., '/me/messages').`,
|
|
97032
|
-
inputSchema:
|
|
97033
|
-
outputSchema:
|
|
96758
|
+
inputSchema: inputSchema58,
|
|
96759
|
+
outputSchema: outputSchema58,
|
|
97034
96760
|
async execute({ connectionId, method, path: path5, queryParams }, connections, config) {
|
|
97035
96761
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
97036
96762
|
if (!connection) {
|
|
@@ -97131,17 +96857,17 @@ var gmailOnboarding = new ConnectorOnboarding({
|
|
|
97131
96857
|
});
|
|
97132
96858
|
|
|
97133
96859
|
// ../connectors/src/connectors/gmail-oauth/parameters.ts
|
|
97134
|
-
var
|
|
96860
|
+
var parameters50 = {};
|
|
97135
96861
|
|
|
97136
96862
|
// ../connectors/src/connectors/gmail-oauth/index.ts
|
|
97137
|
-
var
|
|
96863
|
+
var tools50 = { request: requestTool33 };
|
|
97138
96864
|
var gmailOauthConnector = new ConnectorPlugin({
|
|
97139
96865
|
slug: "gmail",
|
|
97140
96866
|
authType: AUTH_TYPES.OAUTH,
|
|
97141
96867
|
name: "Gmail (OAuth)",
|
|
97142
96868
|
description: "Connect to Gmail for email data access using OAuth. Read-only access to messages, threads, and labels.",
|
|
97143
96869
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/4V3rfaSc1ksFIt2eHBNIwJ/7f3be41a154a6d96dcf229ed0e5858c9/Gmail_icon__2020_.svg.png",
|
|
97144
|
-
parameters:
|
|
96870
|
+
parameters: parameters50,
|
|
97145
96871
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
97146
96872
|
onboarding: gmailOnboarding,
|
|
97147
96873
|
proxyPolicy: {
|
|
@@ -97300,7 +97026,7 @@ const thread = await gmail.getThread("<threadId>");
|
|
|
97300
97026
|
thread.messages.forEach(m => console.log(m.snippet));
|
|
97301
97027
|
\`\`\``
|
|
97302
97028
|
},
|
|
97303
|
-
tools:
|
|
97029
|
+
tools: tools50,
|
|
97304
97030
|
async checkConnection(_params, config) {
|
|
97305
97031
|
const { proxyFetch } = config;
|
|
97306
97032
|
const url = "https://gmail.googleapis.com/gmail/v1/users/me/profile";
|
|
@@ -97324,10 +97050,10 @@ thread.messages.forEach(m => console.log(m.snippet));
|
|
|
97324
97050
|
});
|
|
97325
97051
|
|
|
97326
97052
|
// ../connectors/src/connectors/linkedin-ads/tools/list-ad-accounts.ts
|
|
97327
|
-
import { z as
|
|
97053
|
+
import { z as z61 } from "zod";
|
|
97328
97054
|
|
|
97329
97055
|
// ../connectors/src/connectors/linkedin-ads/parameters.ts
|
|
97330
|
-
var
|
|
97056
|
+
var parameters51 = {
|
|
97331
97057
|
accessToken: new ParameterDefinition({
|
|
97332
97058
|
slug: "access-token",
|
|
97333
97059
|
name: "Access Token",
|
|
@@ -97351,32 +97077,32 @@ var parameters52 = {
|
|
|
97351
97077
|
// ../connectors/src/connectors/linkedin-ads/tools/list-ad-accounts.ts
|
|
97352
97078
|
var REQUEST_TIMEOUT_MS44 = 6e4;
|
|
97353
97079
|
var LINKEDIN_VERSION = "202603";
|
|
97354
|
-
var
|
|
97355
|
-
toolUseIntent:
|
|
97080
|
+
var inputSchema59 = z61.object({
|
|
97081
|
+
toolUseIntent: z61.string().optional().describe(
|
|
97356
97082
|
"Brief description of what you intend to accomplish with this tool call"
|
|
97357
97083
|
),
|
|
97358
|
-
connectionId:
|
|
97084
|
+
connectionId: z61.string().describe("ID of the LinkedIn Ads connection to use")
|
|
97359
97085
|
});
|
|
97360
|
-
var
|
|
97361
|
-
|
|
97362
|
-
success:
|
|
97363
|
-
adAccounts:
|
|
97364
|
-
|
|
97365
|
-
adAccountId:
|
|
97366
|
-
name:
|
|
97086
|
+
var outputSchema59 = z61.discriminatedUnion("success", [
|
|
97087
|
+
z61.object({
|
|
97088
|
+
success: z61.literal(true),
|
|
97089
|
+
adAccounts: z61.array(
|
|
97090
|
+
z61.object({
|
|
97091
|
+
adAccountId: z61.string(),
|
|
97092
|
+
name: z61.string()
|
|
97367
97093
|
})
|
|
97368
97094
|
)
|
|
97369
97095
|
}),
|
|
97370
|
-
|
|
97371
|
-
success:
|
|
97372
|
-
error:
|
|
97096
|
+
z61.object({
|
|
97097
|
+
success: z61.literal(false),
|
|
97098
|
+
error: z61.string()
|
|
97373
97099
|
})
|
|
97374
97100
|
]);
|
|
97375
97101
|
var listAdAccountsTool3 = new ConnectorTool({
|
|
97376
97102
|
name: "listAdAccounts",
|
|
97377
97103
|
description: "List LinkedIn ad accounts accessible with the current access token.",
|
|
97378
|
-
inputSchema:
|
|
97379
|
-
outputSchema:
|
|
97104
|
+
inputSchema: inputSchema59,
|
|
97105
|
+
outputSchema: outputSchema59,
|
|
97380
97106
|
async execute({ connectionId }, connections) {
|
|
97381
97107
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
97382
97108
|
if (!connection) {
|
|
@@ -97389,7 +97115,7 @@ var listAdAccountsTool3 = new ConnectorTool({
|
|
|
97389
97115
|
`[connector-request] linkedin-ads/${connection.name}: listAdAccounts`
|
|
97390
97116
|
);
|
|
97391
97117
|
try {
|
|
97392
|
-
const accessToken =
|
|
97118
|
+
const accessToken = parameters51.accessToken.getValue(connection);
|
|
97393
97119
|
const url = "https://api.linkedin.com/rest/adAccounts?q=search&search=(status:(values:List(ACTIVE)))&pageSize=100";
|
|
97394
97120
|
const controller = new AbortController();
|
|
97395
97121
|
const timeout = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS44);
|
|
@@ -97471,31 +97197,31 @@ var linkedinAdsOnboarding = new ConnectorOnboarding({
|
|
|
97471
97197
|
});
|
|
97472
97198
|
|
|
97473
97199
|
// ../connectors/src/connectors/linkedin-ads/tools/request.ts
|
|
97474
|
-
import { z as
|
|
97200
|
+
import { z as z62 } from "zod";
|
|
97475
97201
|
var BASE_URL30 = "https://api.linkedin.com/rest/";
|
|
97476
97202
|
var LINKEDIN_VERSION2 = "202603";
|
|
97477
97203
|
var REQUEST_TIMEOUT_MS45 = 6e4;
|
|
97478
|
-
var
|
|
97479
|
-
toolUseIntent:
|
|
97204
|
+
var inputSchema60 = z62.object({
|
|
97205
|
+
toolUseIntent: z62.string().optional().describe(
|
|
97480
97206
|
"Brief description of what you intend to accomplish with this tool call"
|
|
97481
97207
|
),
|
|
97482
|
-
connectionId:
|
|
97483
|
-
method:
|
|
97484
|
-
path:
|
|
97208
|
+
connectionId: z62.string().describe("ID of the LinkedIn Ads connection to use"),
|
|
97209
|
+
method: z62.enum(["GET", "POST", "DELETE"]).describe("HTTP method"),
|
|
97210
|
+
path: z62.string().describe(
|
|
97485
97211
|
"API path appended to https://api.linkedin.com/rest/ (e.g., 'adAccounts/{adAccountId}/adCampaigns'). {adAccountId} is automatically replaced with the configured ad account ID."
|
|
97486
97212
|
),
|
|
97487
|
-
queryParams:
|
|
97488
|
-
body:
|
|
97213
|
+
queryParams: z62.record(z62.string(), z62.string()).optional().describe("Query parameters to append to the URL"),
|
|
97214
|
+
body: z62.record(z62.string(), z62.unknown()).optional().describe("Request body (JSON). For partial updates, use the patch format: { patch: { $set: { ... } } }")
|
|
97489
97215
|
});
|
|
97490
|
-
var
|
|
97491
|
-
|
|
97492
|
-
success:
|
|
97493
|
-
status:
|
|
97494
|
-
data:
|
|
97216
|
+
var outputSchema60 = z62.discriminatedUnion("success", [
|
|
97217
|
+
z62.object({
|
|
97218
|
+
success: z62.literal(true),
|
|
97219
|
+
status: z62.number(),
|
|
97220
|
+
data: z62.unknown()
|
|
97495
97221
|
}),
|
|
97496
|
-
|
|
97497
|
-
success:
|
|
97498
|
-
error:
|
|
97222
|
+
z62.object({
|
|
97223
|
+
success: z62.literal(false),
|
|
97224
|
+
error: z62.string()
|
|
97499
97225
|
})
|
|
97500
97226
|
]);
|
|
97501
97227
|
var requestTool34 = new ConnectorTool({
|
|
@@ -97504,8 +97230,8 @@ var requestTool34 = new ConnectorTool({
|
|
|
97504
97230
|
Authentication is handled via the configured access token.
|
|
97505
97231
|
{adAccountId} in the path is automatically replaced with the connection's ad account ID.
|
|
97506
97232
|
Required headers (Authorization, LinkedIn-Version, X-Restli-Protocol-Version) are set automatically.`,
|
|
97507
|
-
inputSchema:
|
|
97508
|
-
outputSchema:
|
|
97233
|
+
inputSchema: inputSchema60,
|
|
97234
|
+
outputSchema: outputSchema60,
|
|
97509
97235
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections) {
|
|
97510
97236
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
97511
97237
|
if (!connection) {
|
|
@@ -97518,8 +97244,8 @@ Required headers (Authorization, LinkedIn-Version, X-Restli-Protocol-Version) ar
|
|
|
97518
97244
|
`[connector-request] linkedin-ads/${connection.name}: ${method} ${path5}`
|
|
97519
97245
|
);
|
|
97520
97246
|
try {
|
|
97521
|
-
const accessToken =
|
|
97522
|
-
const adAccountId =
|
|
97247
|
+
const accessToken = parameters51.accessToken.getValue(connection);
|
|
97248
|
+
const adAccountId = parameters51.adAccountId.tryGetValue(connection) ?? "";
|
|
97523
97249
|
const resolvedPath = adAccountId ? path5.replace(/\{adAccountId\}/g, adAccountId) : path5;
|
|
97524
97250
|
let url = `${BASE_URL30}${resolvedPath}`;
|
|
97525
97251
|
if (queryParams && Object.keys(queryParams).length > 0) {
|
|
@@ -97566,7 +97292,7 @@ Required headers (Authorization, LinkedIn-Version, X-Restli-Protocol-Version) ar
|
|
|
97566
97292
|
});
|
|
97567
97293
|
|
|
97568
97294
|
// ../connectors/src/connectors/linkedin-ads/index.ts
|
|
97569
|
-
var
|
|
97295
|
+
var tools51 = {
|
|
97570
97296
|
request: requestTool34,
|
|
97571
97297
|
listAdAccounts: listAdAccountsTool3
|
|
97572
97298
|
};
|
|
@@ -97576,7 +97302,7 @@ var linkedinAdsConnector = new ConnectorPlugin({
|
|
|
97576
97302
|
name: "LinkedIn Ads",
|
|
97577
97303
|
description: "Connect to LinkedIn Ads (Marketing API) for advertising campaign data and reporting using an access token.",
|
|
97578
97304
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/3x7xd9pVJkRFY7ADIg4ycq/b94720e34cb081e9ae45dfde799a59cd/LinkedIn_icon.svg.png",
|
|
97579
|
-
parameters:
|
|
97305
|
+
parameters: parameters51,
|
|
97580
97306
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
97581
97307
|
onboarding: linkedinAdsOnboarding,
|
|
97582
97308
|
systemPrompt: {
|
|
@@ -97791,9 +97517,9 @@ const res = await linkedin.request("adAccounts/{adAccountId}/adCampaigns?q=searc
|
|
|
97791
97517
|
const data = await res.json();
|
|
97792
97518
|
\`\`\``
|
|
97793
97519
|
},
|
|
97794
|
-
tools:
|
|
97520
|
+
tools: tools51,
|
|
97795
97521
|
async checkConnection(params) {
|
|
97796
|
-
const accessToken = params[
|
|
97522
|
+
const accessToken = params[parameters51.accessToken.slug];
|
|
97797
97523
|
if (!accessToken) {
|
|
97798
97524
|
return {
|
|
97799
97525
|
success: false,
|
|
@@ -97828,7 +97554,7 @@ const data = await res.json();
|
|
|
97828
97554
|
});
|
|
97829
97555
|
|
|
97830
97556
|
// ../connectors/src/connectors/linkedin-ads-oauth/tools/list-ad-accounts.ts
|
|
97831
|
-
import { z as
|
|
97557
|
+
import { z as z63 } from "zod";
|
|
97832
97558
|
var BASE_URL31 = "https://api.linkedin.com/rest/";
|
|
97833
97559
|
var LINKEDIN_VERSION3 = "202603";
|
|
97834
97560
|
var REQUEST_TIMEOUT_MS46 = 6e4;
|
|
@@ -97863,32 +97589,32 @@ async function getProxyToken22(config) {
|
|
|
97863
97589
|
};
|
|
97864
97590
|
return data.token;
|
|
97865
97591
|
}
|
|
97866
|
-
var
|
|
97867
|
-
toolUseIntent:
|
|
97592
|
+
var inputSchema61 = z63.object({
|
|
97593
|
+
toolUseIntent: z63.string().optional().describe(
|
|
97868
97594
|
"Brief description of what you intend to accomplish with this tool call"
|
|
97869
97595
|
),
|
|
97870
|
-
connectionId:
|
|
97596
|
+
connectionId: z63.string().describe("ID of the LinkedIn Ads OAuth connection to use")
|
|
97871
97597
|
});
|
|
97872
|
-
var
|
|
97873
|
-
|
|
97874
|
-
success:
|
|
97875
|
-
adAccounts:
|
|
97876
|
-
|
|
97877
|
-
adAccountId:
|
|
97878
|
-
name:
|
|
97598
|
+
var outputSchema61 = z63.discriminatedUnion("success", [
|
|
97599
|
+
z63.object({
|
|
97600
|
+
success: z63.literal(true),
|
|
97601
|
+
adAccounts: z63.array(
|
|
97602
|
+
z63.object({
|
|
97603
|
+
adAccountId: z63.string(),
|
|
97604
|
+
name: z63.string()
|
|
97879
97605
|
})
|
|
97880
97606
|
)
|
|
97881
97607
|
}),
|
|
97882
|
-
|
|
97883
|
-
success:
|
|
97884
|
-
error:
|
|
97608
|
+
z63.object({
|
|
97609
|
+
success: z63.literal(false),
|
|
97610
|
+
error: z63.string()
|
|
97885
97611
|
})
|
|
97886
97612
|
]);
|
|
97887
97613
|
var listAdAccountsTool4 = new ConnectorTool({
|
|
97888
97614
|
name: "listAdAccounts",
|
|
97889
97615
|
description: "List LinkedIn ad accounts accessible with the current OAuth credentials.",
|
|
97890
|
-
inputSchema:
|
|
97891
|
-
outputSchema:
|
|
97616
|
+
inputSchema: inputSchema61,
|
|
97617
|
+
outputSchema: outputSchema61,
|
|
97892
97618
|
async execute({ connectionId }, connections, config) {
|
|
97893
97619
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
97894
97620
|
if (!connection) {
|
|
@@ -97990,7 +97716,7 @@ var linkedinAdsOauthOnboarding = new ConnectorOnboarding({
|
|
|
97990
97716
|
});
|
|
97991
97717
|
|
|
97992
97718
|
// ../connectors/src/connectors/linkedin-ads-oauth/parameters.ts
|
|
97993
|
-
var
|
|
97719
|
+
var parameters52 = {
|
|
97994
97720
|
adAccountId: new ParameterDefinition({
|
|
97995
97721
|
slug: "ad-account-id",
|
|
97996
97722
|
name: "Ad Account ID",
|
|
@@ -98003,7 +97729,7 @@ var parameters53 = {
|
|
|
98003
97729
|
};
|
|
98004
97730
|
|
|
98005
97731
|
// ../connectors/src/connectors/linkedin-ads-oauth/tools/request.ts
|
|
98006
|
-
import { z as
|
|
97732
|
+
import { z as z64 } from "zod";
|
|
98007
97733
|
var BASE_URL32 = "https://api.linkedin.com/rest/";
|
|
98008
97734
|
var LINKEDIN_VERSION4 = "202603";
|
|
98009
97735
|
var REQUEST_TIMEOUT_MS47 = 6e4;
|
|
@@ -98038,27 +97764,27 @@ async function getProxyToken23(config) {
|
|
|
98038
97764
|
};
|
|
98039
97765
|
return data.token;
|
|
98040
97766
|
}
|
|
98041
|
-
var
|
|
98042
|
-
toolUseIntent:
|
|
97767
|
+
var inputSchema62 = z64.object({
|
|
97768
|
+
toolUseIntent: z64.string().optional().describe(
|
|
98043
97769
|
"Brief description of what you intend to accomplish with this tool call"
|
|
98044
97770
|
),
|
|
98045
|
-
connectionId:
|
|
98046
|
-
method:
|
|
98047
|
-
path:
|
|
97771
|
+
connectionId: z64.string().describe("ID of the LinkedIn Ads OAuth connection to use"),
|
|
97772
|
+
method: z64.enum(["GET", "POST", "DELETE"]).describe("HTTP method"),
|
|
97773
|
+
path: z64.string().describe(
|
|
98048
97774
|
"API path appended to https://api.linkedin.com/rest/ (e.g., 'adAccounts/{adAccountId}/adCampaigns'). {adAccountId} is automatically replaced with the connection's ad account ID."
|
|
98049
97775
|
),
|
|
98050
|
-
queryParams:
|
|
98051
|
-
body:
|
|
97776
|
+
queryParams: z64.record(z64.string(), z64.string()).optional().describe("Query parameters to append to the URL"),
|
|
97777
|
+
body: z64.record(z64.string(), z64.unknown()).optional().describe("Request body (JSON). For partial updates, use the patch format: { patch: { $set: { ... } } }")
|
|
98052
97778
|
});
|
|
98053
|
-
var
|
|
98054
|
-
|
|
98055
|
-
success:
|
|
98056
|
-
status:
|
|
98057
|
-
data:
|
|
97779
|
+
var outputSchema62 = z64.discriminatedUnion("success", [
|
|
97780
|
+
z64.object({
|
|
97781
|
+
success: z64.literal(true),
|
|
97782
|
+
status: z64.number(),
|
|
97783
|
+
data: z64.unknown()
|
|
98058
97784
|
}),
|
|
98059
|
-
|
|
98060
|
-
success:
|
|
98061
|
-
error:
|
|
97785
|
+
z64.object({
|
|
97786
|
+
success: z64.literal(false),
|
|
97787
|
+
error: z64.string()
|
|
98062
97788
|
})
|
|
98063
97789
|
]);
|
|
98064
97790
|
var requestTool35 = new ConnectorTool({
|
|
@@ -98067,8 +97793,8 @@ var requestTool35 = new ConnectorTool({
|
|
|
98067
97793
|
Authentication is handled automatically via OAuth proxy.
|
|
98068
97794
|
{adAccountId} in the path is automatically replaced with the connection's ad account ID.
|
|
98069
97795
|
Required headers (LinkedIn-Version, X-Restli-Protocol-Version) are set automatically.`,
|
|
98070
|
-
inputSchema:
|
|
98071
|
-
outputSchema:
|
|
97796
|
+
inputSchema: inputSchema62,
|
|
97797
|
+
outputSchema: outputSchema62,
|
|
98072
97798
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
98073
97799
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
98074
97800
|
if (!connection) {
|
|
@@ -98081,7 +97807,7 @@ Required headers (LinkedIn-Version, X-Restli-Protocol-Version) are set automatic
|
|
|
98081
97807
|
`[connector-request] linkedin-ads-oauth/${connection.name}: ${method} ${path5}`
|
|
98082
97808
|
);
|
|
98083
97809
|
try {
|
|
98084
|
-
const adAccountId =
|
|
97810
|
+
const adAccountId = parameters52.adAccountId.tryGetValue(connection) ?? "";
|
|
98085
97811
|
const resolvedPath = adAccountId ? path5.replace(/\{adAccountId\}/g, adAccountId) : path5;
|
|
98086
97812
|
let url = `${BASE_URL32}${resolvedPath}`;
|
|
98087
97813
|
if (queryParams && Object.keys(queryParams).length > 0) {
|
|
@@ -98136,7 +97862,7 @@ Required headers (LinkedIn-Version, X-Restli-Protocol-Version) are set automatic
|
|
|
98136
97862
|
});
|
|
98137
97863
|
|
|
98138
97864
|
// ../connectors/src/connectors/linkedin-ads-oauth/index.ts
|
|
98139
|
-
var
|
|
97865
|
+
var tools52 = {
|
|
98140
97866
|
request: requestTool35,
|
|
98141
97867
|
listAdAccounts: listAdAccountsTool4
|
|
98142
97868
|
};
|
|
@@ -98146,7 +97872,7 @@ var linkedinAdsOauthConnector = new ConnectorPlugin({
|
|
|
98146
97872
|
name: "LinkedIn Ads (OAuth)",
|
|
98147
97873
|
description: "Connect to LinkedIn Ads (Marketing API) for advertising campaign data and reporting using OAuth.",
|
|
98148
97874
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/3x7xd9pVJkRFY7ADIg4ycq/b94720e34cb081e9ae45dfde799a59cd/LinkedIn_icon.svg.png",
|
|
98149
|
-
parameters:
|
|
97875
|
+
parameters: parameters52,
|
|
98150
97876
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
98151
97877
|
onboarding: linkedinAdsOauthOnboarding,
|
|
98152
97878
|
proxyPolicy: {
|
|
@@ -98345,7 +98071,7 @@ const res = await linkedin.request("adAccounts/{adAccountId}/adCampaigns?q=searc
|
|
|
98345
98071
|
const data = await res.json();
|
|
98346
98072
|
\`\`\``
|
|
98347
98073
|
},
|
|
98348
|
-
tools:
|
|
98074
|
+
tools: tools52,
|
|
98349
98075
|
async checkConnection(_params, config) {
|
|
98350
98076
|
const { proxyFetch } = config;
|
|
98351
98077
|
try {
|
|
@@ -98389,7 +98115,7 @@ var zendeskOnboarding = new ConnectorOnboarding({
|
|
|
98389
98115
|
});
|
|
98390
98116
|
|
|
98391
98117
|
// ../connectors/src/connectors/zendesk/parameters.ts
|
|
98392
|
-
var
|
|
98118
|
+
var parameters53 = {
|
|
98393
98119
|
subdomain: new ParameterDefinition({
|
|
98394
98120
|
slug: "subdomain",
|
|
98395
98121
|
name: "Zendesk Subdomain",
|
|
@@ -98420,30 +98146,30 @@ var parameters54 = {
|
|
|
98420
98146
|
};
|
|
98421
98147
|
|
|
98422
98148
|
// ../connectors/src/connectors/zendesk/tools/request.ts
|
|
98423
|
-
import { z as
|
|
98149
|
+
import { z as z65 } from "zod";
|
|
98424
98150
|
var REQUEST_TIMEOUT_MS48 = 6e4;
|
|
98425
|
-
var
|
|
98426
|
-
toolUseIntent:
|
|
98151
|
+
var inputSchema63 = z65.object({
|
|
98152
|
+
toolUseIntent: z65.string().optional().describe(
|
|
98427
98153
|
"Brief description of what you intend to accomplish with this tool call"
|
|
98428
98154
|
),
|
|
98429
|
-
connectionId:
|
|
98430
|
-
method:
|
|
98155
|
+
connectionId: z65.string().describe("ID of the Zendesk connection to use"),
|
|
98156
|
+
method: z65.enum(["GET", "POST", "PUT", "DELETE"]).describe(
|
|
98431
98157
|
"HTTP method. GET for reading, POST for creating/searching, PUT for updating, DELETE for removing."
|
|
98432
98158
|
),
|
|
98433
|
-
path:
|
|
98159
|
+
path: z65.string().describe(
|
|
98434
98160
|
"API path appended to https://{subdomain}.zendesk.com (e.g., '/api/v2/tickets.json', '/api/v2/search.json?query=status:open')"
|
|
98435
98161
|
),
|
|
98436
|
-
body:
|
|
98162
|
+
body: z65.record(z65.string(), z65.unknown()).optional().describe("Request body (JSON) for POST/PUT requests")
|
|
98437
98163
|
});
|
|
98438
|
-
var
|
|
98439
|
-
|
|
98440
|
-
success:
|
|
98441
|
-
status:
|
|
98442
|
-
data:
|
|
98164
|
+
var outputSchema63 = z65.discriminatedUnion("success", [
|
|
98165
|
+
z65.object({
|
|
98166
|
+
success: z65.literal(true),
|
|
98167
|
+
status: z65.number(),
|
|
98168
|
+
data: z65.record(z65.string(), z65.unknown())
|
|
98443
98169
|
}),
|
|
98444
|
-
|
|
98445
|
-
success:
|
|
98446
|
-
error:
|
|
98170
|
+
z65.object({
|
|
98171
|
+
success: z65.literal(false),
|
|
98172
|
+
error: z65.string()
|
|
98447
98173
|
})
|
|
98448
98174
|
]);
|
|
98449
98175
|
var requestTool36 = new ConnectorTool({
|
|
@@ -98452,8 +98178,8 @@ var requestTool36 = new ConnectorTool({
|
|
|
98452
98178
|
Authentication is handled automatically using email/token Basic auth.
|
|
98453
98179
|
Use this tool for all Zendesk API interactions: querying tickets, users, organizations, groups, and searching.
|
|
98454
98180
|
Zendesk uses cursor-based pagination with page[size] and page[after] parameters. All endpoints return .json suffix.`,
|
|
98455
|
-
inputSchema:
|
|
98456
|
-
outputSchema:
|
|
98181
|
+
inputSchema: inputSchema63,
|
|
98182
|
+
outputSchema: outputSchema63,
|
|
98457
98183
|
async execute({ connectionId, method, path: path5, body }, connections) {
|
|
98458
98184
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
98459
98185
|
if (!connection) {
|
|
@@ -98466,9 +98192,9 @@ Zendesk uses cursor-based pagination with page[size] and page[after] parameters.
|
|
|
98466
98192
|
`[connector-request] zendesk/${connection.name}: ${method} ${path5}`
|
|
98467
98193
|
);
|
|
98468
98194
|
try {
|
|
98469
|
-
const subdomain =
|
|
98470
|
-
const email =
|
|
98471
|
-
const apiToken =
|
|
98195
|
+
const subdomain = parameters53.subdomain.getValue(connection);
|
|
98196
|
+
const email = parameters53.email.getValue(connection);
|
|
98197
|
+
const apiToken = parameters53.apiToken.getValue(connection);
|
|
98472
98198
|
const authToken = Buffer.from(`${email}/token:${apiToken}`).toString(
|
|
98473
98199
|
"base64"
|
|
98474
98200
|
);
|
|
@@ -98502,14 +98228,14 @@ Zendesk uses cursor-based pagination with page[size] and page[after] parameters.
|
|
|
98502
98228
|
});
|
|
98503
98229
|
|
|
98504
98230
|
// ../connectors/src/connectors/zendesk/index.ts
|
|
98505
|
-
var
|
|
98231
|
+
var tools53 = { request: requestTool36 };
|
|
98506
98232
|
var zendeskConnector = new ConnectorPlugin({
|
|
98507
98233
|
slug: "zendesk",
|
|
98508
98234
|
authType: null,
|
|
98509
98235
|
name: "Zendesk",
|
|
98510
98236
|
description: "Connect to Zendesk Support for tickets, users, organizations, and customer service data using an API token.",
|
|
98511
98237
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/7e9Q7PwV6MJRJMj543m2gl/55385fae903ccfa1599e35be9d3516aa/zendesk-icon.svg",
|
|
98512
|
-
parameters:
|
|
98238
|
+
parameters: parameters53,
|
|
98513
98239
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
98514
98240
|
onboarding: zendeskOnboarding,
|
|
98515
98241
|
systemPrompt: {
|
|
@@ -98686,11 +98412,11 @@ export default async function handler(c: Context) {
|
|
|
98686
98412
|
- \`type:user role:agent\` \u2014 \u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30E6\u30FC\u30B6\u30FC
|
|
98687
98413
|
- \`type:organization {name}\` \u2014 \u540D\u524D\u304C\u4E00\u81F4\u3059\u308B\u7D44\u7E54`
|
|
98688
98414
|
},
|
|
98689
|
-
tools:
|
|
98415
|
+
tools: tools53
|
|
98690
98416
|
});
|
|
98691
98417
|
|
|
98692
98418
|
// ../connectors/src/connectors/zendesk-oauth/tools/request.ts
|
|
98693
|
-
import { z as
|
|
98419
|
+
import { z as z66 } from "zod";
|
|
98694
98420
|
var REQUEST_TIMEOUT_MS49 = 6e4;
|
|
98695
98421
|
var cachedToken24 = null;
|
|
98696
98422
|
async function getProxyToken24(config) {
|
|
@@ -98723,27 +98449,27 @@ async function getProxyToken24(config) {
|
|
|
98723
98449
|
};
|
|
98724
98450
|
return data.token;
|
|
98725
98451
|
}
|
|
98726
|
-
var
|
|
98727
|
-
toolUseIntent:
|
|
98452
|
+
var inputSchema64 = z66.object({
|
|
98453
|
+
toolUseIntent: z66.string().optional().describe(
|
|
98728
98454
|
"Brief description of what you intend to accomplish with this tool call"
|
|
98729
98455
|
),
|
|
98730
|
-
connectionId:
|
|
98731
|
-
method:
|
|
98732
|
-
path:
|
|
98456
|
+
connectionId: z66.string().describe("ID of the Zendesk OAuth connection to use"),
|
|
98457
|
+
method: z66.enum(["GET", "POST", "PUT", "DELETE"]).describe("HTTP method"),
|
|
98458
|
+
path: z66.string().describe(
|
|
98733
98459
|
"API path appended to the Zendesk base URL (e.g., '/api/v2/tickets.json', '/api/v2/search.json?query=status:open')"
|
|
98734
98460
|
),
|
|
98735
|
-
queryParams:
|
|
98736
|
-
body:
|
|
98461
|
+
queryParams: z66.record(z66.string(), z66.string()).optional().describe("Query parameters to append to the URL"),
|
|
98462
|
+
body: z66.record(z66.string(), z66.unknown()).optional().describe("Request body (JSON) for POST/PUT requests")
|
|
98737
98463
|
});
|
|
98738
|
-
var
|
|
98739
|
-
|
|
98740
|
-
success:
|
|
98741
|
-
status:
|
|
98742
|
-
data:
|
|
98464
|
+
var outputSchema64 = z66.discriminatedUnion("success", [
|
|
98465
|
+
z66.object({
|
|
98466
|
+
success: z66.literal(true),
|
|
98467
|
+
status: z66.number(),
|
|
98468
|
+
data: z66.record(z66.string(), z66.unknown())
|
|
98743
98469
|
}),
|
|
98744
|
-
|
|
98745
|
-
success:
|
|
98746
|
-
error:
|
|
98470
|
+
z66.object({
|
|
98471
|
+
success: z66.literal(false),
|
|
98472
|
+
error: z66.string()
|
|
98747
98473
|
})
|
|
98748
98474
|
]);
|
|
98749
98475
|
var requestTool37 = new ConnectorTool({
|
|
@@ -98752,8 +98478,8 @@ var requestTool37 = new ConnectorTool({
|
|
|
98752
98478
|
Authentication is handled automatically via OAuth proxy.
|
|
98753
98479
|
Use this tool for all Zendesk API interactions: querying tickets, users, organizations, groups, and searching.
|
|
98754
98480
|
Zendesk uses cursor-based pagination with page[size] and page[after] parameters. All endpoint paths end with .json.`,
|
|
98755
|
-
inputSchema:
|
|
98756
|
-
outputSchema:
|
|
98481
|
+
inputSchema: inputSchema64,
|
|
98482
|
+
outputSchema: outputSchema64,
|
|
98757
98483
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
98758
98484
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
98759
98485
|
if (!connection) {
|
|
@@ -98850,17 +98576,17 @@ var zendeskOauthOnboarding = new ConnectorOnboarding({
|
|
|
98850
98576
|
});
|
|
98851
98577
|
|
|
98852
98578
|
// ../connectors/src/connectors/zendesk-oauth/parameters.ts
|
|
98853
|
-
var
|
|
98579
|
+
var parameters54 = {};
|
|
98854
98580
|
|
|
98855
98581
|
// ../connectors/src/connectors/zendesk-oauth/index.ts
|
|
98856
|
-
var
|
|
98582
|
+
var tools54 = { request: requestTool37 };
|
|
98857
98583
|
var zendeskOauthConnector = new ConnectorPlugin({
|
|
98858
98584
|
slug: "zendesk",
|
|
98859
98585
|
authType: AUTH_TYPES.OAUTH,
|
|
98860
98586
|
name: "Zendesk (OAuth)",
|
|
98861
98587
|
description: "Connect to Zendesk Support for tickets, users, organizations, and customer service data using OAuth.",
|
|
98862
98588
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/7e9Q7PwV6MJRJMj543m2gl/55385fae903ccfa1599e35be9d3516aa/zendesk-icon.svg",
|
|
98863
|
-
parameters:
|
|
98589
|
+
parameters: parameters54,
|
|
98864
98590
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
98865
98591
|
onboarding: zendeskOauthOnboarding,
|
|
98866
98592
|
proxyPolicy: {
|
|
@@ -98989,7 +98715,7 @@ const res = await zendesk.request("/api/v2/tickets.json?page[size]=10");
|
|
|
98989
98715
|
const data = await res.json();
|
|
98990
98716
|
\`\`\``
|
|
98991
98717
|
},
|
|
98992
|
-
tools:
|
|
98718
|
+
tools: tools54,
|
|
98993
98719
|
async checkConnection(_params, config) {
|
|
98994
98720
|
const { proxyFetch } = config;
|
|
98995
98721
|
try {
|
|
@@ -99028,7 +98754,7 @@ var intercomOnboarding = new ConnectorOnboarding({
|
|
|
99028
98754
|
});
|
|
99029
98755
|
|
|
99030
98756
|
// ../connectors/src/connectors/intercom/parameters.ts
|
|
99031
|
-
var
|
|
98757
|
+
var parameters55 = {
|
|
99032
98758
|
accessToken: new ParameterDefinition({
|
|
99033
98759
|
slug: "access-token",
|
|
99034
98760
|
name: "Access Token",
|
|
@@ -99041,32 +98767,32 @@ var parameters56 = {
|
|
|
99041
98767
|
};
|
|
99042
98768
|
|
|
99043
98769
|
// ../connectors/src/connectors/intercom/tools/request.ts
|
|
99044
|
-
import { z as
|
|
98770
|
+
import { z as z67 } from "zod";
|
|
99045
98771
|
var BASE_URL33 = "https://api.intercom.io";
|
|
99046
98772
|
var API_VERSION = "2.11";
|
|
99047
98773
|
var REQUEST_TIMEOUT_MS50 = 6e4;
|
|
99048
|
-
var
|
|
99049
|
-
toolUseIntent:
|
|
98774
|
+
var inputSchema65 = z67.object({
|
|
98775
|
+
toolUseIntent: z67.string().optional().describe(
|
|
99050
98776
|
"Brief description of what you intend to accomplish with this tool call"
|
|
99051
98777
|
),
|
|
99052
|
-
connectionId:
|
|
99053
|
-
method:
|
|
98778
|
+
connectionId: z67.string().describe("ID of the Intercom connection to use"),
|
|
98779
|
+
method: z67.enum(["GET", "POST", "PUT", "DELETE"]).describe(
|
|
99054
98780
|
"HTTP method. GET for reading, POST for creating/searching, PUT for updating, DELETE for removing."
|
|
99055
98781
|
),
|
|
99056
|
-
path:
|
|
98782
|
+
path: z67.string().describe(
|
|
99057
98783
|
"API path appended to https://api.intercom.io (e.g., '/contacts', '/conversations', '/contacts/search')"
|
|
99058
98784
|
),
|
|
99059
|
-
body:
|
|
98785
|
+
body: z67.record(z67.string(), z67.unknown()).optional().describe("Request body (JSON) for POST/PUT requests")
|
|
99060
98786
|
});
|
|
99061
|
-
var
|
|
99062
|
-
|
|
99063
|
-
success:
|
|
99064
|
-
status:
|
|
99065
|
-
data:
|
|
98787
|
+
var outputSchema65 = z67.discriminatedUnion("success", [
|
|
98788
|
+
z67.object({
|
|
98789
|
+
success: z67.literal(true),
|
|
98790
|
+
status: z67.number(),
|
|
98791
|
+
data: z67.record(z67.string(), z67.unknown())
|
|
99066
98792
|
}),
|
|
99067
|
-
|
|
99068
|
-
success:
|
|
99069
|
-
error:
|
|
98793
|
+
z67.object({
|
|
98794
|
+
success: z67.literal(false),
|
|
98795
|
+
error: z67.string()
|
|
99070
98796
|
})
|
|
99071
98797
|
]);
|
|
99072
98798
|
var requestTool38 = new ConnectorTool({
|
|
@@ -99077,8 +98803,8 @@ Use this tool for all Intercom API interactions: querying contacts, conversation
|
|
|
99077
98803
|
Intercom uses cursor-based pagination with the starting_after parameter from pages.next.starting_after in the response.
|
|
99078
98804
|
Search endpoints (contacts/search, conversations/search) use POST with a query object in the body.
|
|
99079
98805
|
The Intercom-Version header is set to 2.11 automatically.`,
|
|
99080
|
-
inputSchema:
|
|
99081
|
-
outputSchema:
|
|
98806
|
+
inputSchema: inputSchema65,
|
|
98807
|
+
outputSchema: outputSchema65,
|
|
99082
98808
|
async execute({ connectionId, method, path: path5, body }, connections) {
|
|
99083
98809
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
99084
98810
|
if (!connection) {
|
|
@@ -99091,7 +98817,7 @@ The Intercom-Version header is set to 2.11 automatically.`,
|
|
|
99091
98817
|
`[connector-request] intercom/${connection.name}: ${method} ${path5}`
|
|
99092
98818
|
);
|
|
99093
98819
|
try {
|
|
99094
|
-
const accessToken =
|
|
98820
|
+
const accessToken = parameters55.accessToken.getValue(connection);
|
|
99095
98821
|
const url = `${BASE_URL33}${path5.startsWith("/") ? "" : "/"}${path5}`;
|
|
99096
98822
|
const controller = new AbortController();
|
|
99097
98823
|
const timeout = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS50);
|
|
@@ -99125,14 +98851,14 @@ The Intercom-Version header is set to 2.11 automatically.`,
|
|
|
99125
98851
|
});
|
|
99126
98852
|
|
|
99127
98853
|
// ../connectors/src/connectors/intercom/index.ts
|
|
99128
|
-
var
|
|
98854
|
+
var tools55 = { request: requestTool38 };
|
|
99129
98855
|
var intercomConnector = new ConnectorPlugin({
|
|
99130
98856
|
slug: "intercom",
|
|
99131
98857
|
authType: null,
|
|
99132
98858
|
name: "Intercom",
|
|
99133
98859
|
description: "Connect to Intercom for contacts, conversations, companies, and customer engagement data using an Access Token.",
|
|
99134
98860
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/sb2cRMGClpId0LKiSqsok/ae90a0849f21ffe3faf73e04a5676b45/intercom.svg",
|
|
99135
|
-
parameters:
|
|
98861
|
+
parameters: parameters55,
|
|
99136
98862
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
99137
98863
|
onboarding: intercomOnboarding,
|
|
99138
98864
|
systemPrompt: {
|
|
@@ -99329,11 +99055,11 @@ export default async function handler(c: Context) {
|
|
|
99329
99055
|
- \u8AD6\u7406\u6F14\u7B97\u5B50: \`AND\`, \`OR\`\uFF08\u8907\u6570\u30D5\u30A3\u30EB\u30BF\u306E\u7D50\u5408\uFF09
|
|
99330
99056
|
- \u65E5\u4ED8\u30D5\u30A3\u30FC\u30EB\u30C9\u306FUnix\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u4F7F\u7528`
|
|
99331
99057
|
},
|
|
99332
|
-
tools:
|
|
99058
|
+
tools: tools55
|
|
99333
99059
|
});
|
|
99334
99060
|
|
|
99335
99061
|
// ../connectors/src/connectors/intercom-oauth/tools/request.ts
|
|
99336
|
-
import { z as
|
|
99062
|
+
import { z as z68 } from "zod";
|
|
99337
99063
|
var BASE_URL34 = "https://api.intercom.io";
|
|
99338
99064
|
var REQUEST_TIMEOUT_MS51 = 6e4;
|
|
99339
99065
|
var cachedToken25 = null;
|
|
@@ -99367,27 +99093,27 @@ async function getProxyToken25(config) {
|
|
|
99367
99093
|
};
|
|
99368
99094
|
return data.token;
|
|
99369
99095
|
}
|
|
99370
|
-
var
|
|
99371
|
-
toolUseIntent:
|
|
99096
|
+
var inputSchema66 = z68.object({
|
|
99097
|
+
toolUseIntent: z68.string().optional().describe(
|
|
99372
99098
|
"Brief description of what you intend to accomplish with this tool call"
|
|
99373
99099
|
),
|
|
99374
|
-
connectionId:
|
|
99375
|
-
method:
|
|
99376
|
-
path:
|
|
99100
|
+
connectionId: z68.string().describe("ID of the Intercom OAuth connection to use"),
|
|
99101
|
+
method: z68.enum(["GET", "POST", "PUT", "DELETE"]).describe("HTTP method"),
|
|
99102
|
+
path: z68.string().describe(
|
|
99377
99103
|
"API path appended to https://api.intercom.io (e.g., '/contacts', '/conversations', '/contacts/search')"
|
|
99378
99104
|
),
|
|
99379
|
-
queryParams:
|
|
99380
|
-
body:
|
|
99105
|
+
queryParams: z68.record(z68.string(), z68.string()).optional().describe("Query parameters to append to the URL"),
|
|
99106
|
+
body: z68.record(z68.string(), z68.unknown()).optional().describe("Request body (JSON) for POST/PUT requests")
|
|
99381
99107
|
});
|
|
99382
|
-
var
|
|
99383
|
-
|
|
99384
|
-
success:
|
|
99385
|
-
status:
|
|
99386
|
-
data:
|
|
99108
|
+
var outputSchema66 = z68.discriminatedUnion("success", [
|
|
99109
|
+
z68.object({
|
|
99110
|
+
success: z68.literal(true),
|
|
99111
|
+
status: z68.number(),
|
|
99112
|
+
data: z68.record(z68.string(), z68.unknown())
|
|
99387
99113
|
}),
|
|
99388
|
-
|
|
99389
|
-
success:
|
|
99390
|
-
error:
|
|
99114
|
+
z68.object({
|
|
99115
|
+
success: z68.literal(false),
|
|
99116
|
+
error: z68.string()
|
|
99391
99117
|
})
|
|
99392
99118
|
]);
|
|
99393
99119
|
var requestTool39 = new ConnectorTool({
|
|
@@ -99397,8 +99123,8 @@ Authentication is handled automatically via OAuth proxy.
|
|
|
99397
99123
|
The Intercom-Version header (2.11) is set automatically.
|
|
99398
99124
|
Use this tool for all Intercom API interactions: querying contacts, conversations, companies, articles, tags, and segments.
|
|
99399
99125
|
Search endpoints (contacts/search, conversations/search) use POST with a query object in the body.`,
|
|
99400
|
-
inputSchema:
|
|
99401
|
-
outputSchema:
|
|
99126
|
+
inputSchema: inputSchema66,
|
|
99127
|
+
outputSchema: outputSchema66,
|
|
99402
99128
|
async execute({ connectionId, method, path: path5, queryParams, body }, connections, config) {
|
|
99403
99129
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
99404
99130
|
if (!connection) {
|
|
@@ -99496,17 +99222,17 @@ var intercomOauthOnboarding = new ConnectorOnboarding({
|
|
|
99496
99222
|
});
|
|
99497
99223
|
|
|
99498
99224
|
// ../connectors/src/connectors/intercom-oauth/parameters.ts
|
|
99499
|
-
var
|
|
99225
|
+
var parameters56 = {};
|
|
99500
99226
|
|
|
99501
99227
|
// ../connectors/src/connectors/intercom-oauth/index.ts
|
|
99502
|
-
var
|
|
99228
|
+
var tools56 = { request: requestTool39 };
|
|
99503
99229
|
var intercomOauthConnector = new ConnectorPlugin({
|
|
99504
99230
|
slug: "intercom",
|
|
99505
99231
|
authType: AUTH_TYPES.OAUTH,
|
|
99506
99232
|
name: "Intercom (OAuth)",
|
|
99507
99233
|
description: "Connect to Intercom for contacts, conversations, companies, and customer engagement data using OAuth.",
|
|
99508
99234
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/sb2cRMGClpId0LKiSqsok/ae90a0849f21ffe3faf73e04a5676b45/intercom.svg",
|
|
99509
|
-
parameters:
|
|
99235
|
+
parameters: parameters56,
|
|
99510
99236
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
99511
99237
|
onboarding: intercomOauthOnboarding,
|
|
99512
99238
|
proxyPolicy: {
|
|
@@ -99635,7 +99361,7 @@ const res = await intercom.request("/contacts?per_page=10");
|
|
|
99635
99361
|
const data = await res.json();
|
|
99636
99362
|
\`\`\``
|
|
99637
99363
|
},
|
|
99638
|
-
tools:
|
|
99364
|
+
tools: tools56,
|
|
99639
99365
|
async checkConnection(_params, config) {
|
|
99640
99366
|
const { proxyFetch } = config;
|
|
99641
99367
|
try {
|
|
@@ -99680,7 +99406,7 @@ NOTE: The Query API endpoints (insights, funnels, retention) require a bookmark_
|
|
|
99680
99406
|
});
|
|
99681
99407
|
|
|
99682
99408
|
// ../connectors/src/connectors/mixpanel/parameters.ts
|
|
99683
|
-
var
|
|
99409
|
+
var parameters57 = {
|
|
99684
99410
|
serviceAccountUsername: new ParameterDefinition({
|
|
99685
99411
|
slug: "service-account-username",
|
|
99686
99412
|
name: "Service Account Username",
|
|
@@ -99720,35 +99446,35 @@ var parameters58 = {
|
|
|
99720
99446
|
};
|
|
99721
99447
|
|
|
99722
99448
|
// ../connectors/src/connectors/mixpanel/tools/request.ts
|
|
99723
|
-
import { z as
|
|
99449
|
+
import { z as z69 } from "zod";
|
|
99724
99450
|
var REQUEST_TIMEOUT_MS52 = 6e4;
|
|
99725
|
-
var
|
|
99726
|
-
toolUseIntent:
|
|
99451
|
+
var inputSchema67 = z69.object({
|
|
99452
|
+
toolUseIntent: z69.string().optional().describe(
|
|
99727
99453
|
"Brief description of what you intend to accomplish with this tool call"
|
|
99728
99454
|
),
|
|
99729
|
-
connectionId:
|
|
99730
|
-
method:
|
|
99455
|
+
connectionId: z69.string().describe("ID of the Mixpanel connection to use"),
|
|
99456
|
+
method: z69.enum(["GET", "POST"]).describe(
|
|
99731
99457
|
"HTTP method. GET for most Query API and Export endpoints. POST for Engage (profile query) endpoint."
|
|
99732
99458
|
),
|
|
99733
|
-
url:
|
|
99459
|
+
url: z69.string().describe(
|
|
99734
99460
|
"Full URL including query parameters (e.g., 'https://mixpanel.com/api/query/insights?project_id=12345&bookmark_id=67890'). The project_id query parameter is added automatically if not present."
|
|
99735
99461
|
),
|
|
99736
|
-
body:
|
|
99462
|
+
body: z69.string().optional().describe(
|
|
99737
99463
|
"Request body for POST requests. Use application/x-www-form-urlencoded format for the Engage endpoint, or JSON string for other POST endpoints."
|
|
99738
99464
|
),
|
|
99739
|
-
contentType:
|
|
99465
|
+
contentType: z69.enum(["application/json", "application/x-www-form-urlencoded"]).optional().describe(
|
|
99740
99466
|
"Content-Type header. Defaults to application/json. Use application/x-www-form-urlencoded for the Engage endpoint."
|
|
99741
99467
|
)
|
|
99742
99468
|
});
|
|
99743
|
-
var
|
|
99744
|
-
|
|
99745
|
-
success:
|
|
99746
|
-
status:
|
|
99747
|
-
data:
|
|
99469
|
+
var outputSchema67 = z69.discriminatedUnion("success", [
|
|
99470
|
+
z69.object({
|
|
99471
|
+
success: z69.literal(true),
|
|
99472
|
+
status: z69.number(),
|
|
99473
|
+
data: z69.unknown()
|
|
99748
99474
|
}),
|
|
99749
|
-
|
|
99750
|
-
success:
|
|
99751
|
-
error:
|
|
99475
|
+
z69.object({
|
|
99476
|
+
success: z69.literal(false),
|
|
99477
|
+
error: z69.string()
|
|
99752
99478
|
})
|
|
99753
99479
|
]);
|
|
99754
99480
|
var requestTool40 = new ConnectorTool({
|
|
@@ -99769,8 +99495,8 @@ Key endpoints:
|
|
|
99769
99495
|
- GET {exportBase}?from_date=YYYY-MM-DD&to_date=YYYY-MM-DD \u2014 Export raw events (JSONL)
|
|
99770
99496
|
|
|
99771
99497
|
Rate limit: 60 queries/hour, 5 concurrent queries for Query API.`,
|
|
99772
|
-
inputSchema:
|
|
99773
|
-
outputSchema:
|
|
99498
|
+
inputSchema: inputSchema67,
|
|
99499
|
+
outputSchema: outputSchema67,
|
|
99774
99500
|
async execute({ connectionId, method, url, body, contentType }, connections) {
|
|
99775
99501
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
99776
99502
|
if (!connection) {
|
|
@@ -99783,9 +99509,9 @@ Rate limit: 60 queries/hour, 5 concurrent queries for Query API.`,
|
|
|
99783
99509
|
`[connector-request] mixpanel/${connection.name}: ${method} ${url}`
|
|
99784
99510
|
);
|
|
99785
99511
|
try {
|
|
99786
|
-
const username =
|
|
99787
|
-
const secret =
|
|
99788
|
-
const projectId =
|
|
99512
|
+
const username = parameters57.serviceAccountUsername.getValue(connection);
|
|
99513
|
+
const secret = parameters57.serviceAccountSecret.getValue(connection);
|
|
99514
|
+
const projectId = parameters57.projectId.getValue(connection);
|
|
99789
99515
|
const authToken = btoa(`${username}:${secret}`);
|
|
99790
99516
|
let finalUrl = url;
|
|
99791
99517
|
const urlObj = new URL(url);
|
|
@@ -99845,14 +99571,14 @@ Rate limit: 60 queries/hour, 5 concurrent queries for Query API.`,
|
|
|
99845
99571
|
});
|
|
99846
99572
|
|
|
99847
99573
|
// ../connectors/src/connectors/mixpanel/index.ts
|
|
99848
|
-
var
|
|
99574
|
+
var tools57 = { request: requestTool40 };
|
|
99849
99575
|
var mixpanelConnector = new ConnectorPlugin({
|
|
99850
99576
|
slug: "mixpanel",
|
|
99851
99577
|
authType: null,
|
|
99852
99578
|
name: "Mixpanel",
|
|
99853
99579
|
description: "Connect to Mixpanel for product analytics, event tracking, and user behavior analysis.",
|
|
99854
99580
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/7ykz0vNRjMqvTVrxS8wsj1/b2cd795be5b373877dee77cc6147c758/images__3_.png",
|
|
99855
|
-
parameters:
|
|
99581
|
+
parameters: parameters57,
|
|
99856
99582
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
99857
99583
|
onboarding: mixpanelOnboarding,
|
|
99858
99584
|
systemPrompt: {
|
|
@@ -99975,7 +99701,7 @@ export default async function handler(c: Context) {
|
|
|
99975
99701
|
|
|
99976
99702
|
\u91CD\u8981: Insights\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u306F\u3001Mixpanel UI\u306E\u65E2\u5B58\u30EC\u30DD\u30FC\u30C8\u306Ebookmark_id\u304C\u5FC5\u8981\u3067\u3059\u3002\u30A2\u30C9\u30DB\u30C3\u30AF\u306A\u30A4\u30D9\u30F3\u30C8\u5206\u6790\u306B\u306F\u3001Export API\u3067\u751F\u30A4\u30D9\u30F3\u30C8\u3092\u53D6\u5F97\u3057\u3001\u30B3\u30FC\u30C9\u4E0A\u3067\u96C6\u8A08\u3057\u3066\u304F\u3060\u3055\u3044\u3002Export API\u304C\u6700\u3082\u67D4\u8EDF\u3067\u5E83\u304F\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u3067\u3059\u3002`
|
|
99977
99703
|
},
|
|
99978
|
-
tools:
|
|
99704
|
+
tools: tools57
|
|
99979
99705
|
});
|
|
99980
99706
|
|
|
99981
99707
|
// ../connectors/src/connectors/posthog/setup.ts
|
|
@@ -99997,7 +99723,7 @@ var posthogOnboarding = new ConnectorOnboarding({
|
|
|
99997
99723
|
});
|
|
99998
99724
|
|
|
99999
99725
|
// ../connectors/src/connectors/posthog/parameters.ts
|
|
100000
|
-
var
|
|
99726
|
+
var parameters58 = {
|
|
100001
99727
|
personalApiKey: new ParameterDefinition({
|
|
100002
99728
|
slug: "personal-api-key",
|
|
100003
99729
|
name: "Personal API Key",
|
|
@@ -100028,30 +99754,30 @@ var parameters59 = {
|
|
|
100028
99754
|
};
|
|
100029
99755
|
|
|
100030
99756
|
// ../connectors/src/connectors/posthog/tools/request.ts
|
|
100031
|
-
import { z as
|
|
99757
|
+
import { z as z70 } from "zod";
|
|
100032
99758
|
var REQUEST_TIMEOUT_MS53 = 6e4;
|
|
100033
|
-
var
|
|
100034
|
-
toolUseIntent:
|
|
99759
|
+
var inputSchema68 = z70.object({
|
|
99760
|
+
toolUseIntent: z70.string().optional().describe(
|
|
100035
99761
|
"Brief description of what you intend to accomplish with this tool call"
|
|
100036
99762
|
),
|
|
100037
|
-
connectionId:
|
|
100038
|
-
method:
|
|
99763
|
+
connectionId: z70.string().describe("ID of the PostHog connection to use"),
|
|
99764
|
+
method: z70.enum(["GET", "POST", "PATCH", "DELETE"]).describe(
|
|
100039
99765
|
"HTTP method. GET for listing/retrieving resources. POST for creating resources or running queries. PATCH for updating. DELETE for removing."
|
|
100040
99766
|
),
|
|
100041
|
-
path:
|
|
99767
|
+
path: z70.string().describe(
|
|
100042
99768
|
"API path relative to the host (e.g., '/api/projects/12345/query/' or '/api/projects/12345/insights/'). The project ID segment must be included in the path."
|
|
100043
99769
|
),
|
|
100044
|
-
body:
|
|
99770
|
+
body: z70.record(z70.string(), z70.unknown()).optional().describe("Request body (JSON) for POST/PATCH requests")
|
|
100045
99771
|
});
|
|
100046
|
-
var
|
|
100047
|
-
|
|
100048
|
-
success:
|
|
100049
|
-
status:
|
|
100050
|
-
data:
|
|
99772
|
+
var outputSchema68 = z70.discriminatedUnion("success", [
|
|
99773
|
+
z70.object({
|
|
99774
|
+
success: z70.literal(true),
|
|
99775
|
+
status: z70.number(),
|
|
99776
|
+
data: z70.unknown()
|
|
100051
99777
|
}),
|
|
100052
|
-
|
|
100053
|
-
success:
|
|
100054
|
-
error:
|
|
99778
|
+
z70.object({
|
|
99779
|
+
success: z70.literal(false),
|
|
99780
|
+
error: z70.string()
|
|
100055
99781
|
})
|
|
100056
99782
|
]);
|
|
100057
99783
|
var requestTool41 = new ConnectorTool({
|
|
@@ -100072,8 +99798,8 @@ Key endpoints (replace {projectId} with the actual project ID from connection pa
|
|
|
100072
99798
|
|
|
100073
99799
|
The Query API supports multiple query kinds: HogQLQuery, EventsQuery, TrendsQuery, FunnelsQuery, RetentionQuery, PathsQuery, LifecycleQuery.
|
|
100074
99800
|
Rate limit: 240/minute, 1200/hour for analytics endpoints.`,
|
|
100075
|
-
inputSchema:
|
|
100076
|
-
outputSchema:
|
|
99801
|
+
inputSchema: inputSchema68,
|
|
99802
|
+
outputSchema: outputSchema68,
|
|
100077
99803
|
async execute({ connectionId, method, path: path5, body }, connections) {
|
|
100078
99804
|
const connection = connections.find((c6) => c6.id === connectionId);
|
|
100079
99805
|
if (!connection) {
|
|
@@ -100086,8 +99812,8 @@ Rate limit: 240/minute, 1200/hour for analytics endpoints.`,
|
|
|
100086
99812
|
`[connector-request] posthog/${connection.name}: ${method} ${path5}`
|
|
100087
99813
|
);
|
|
100088
99814
|
try {
|
|
100089
|
-
const apiKey =
|
|
100090
|
-
const host =
|
|
99815
|
+
const apiKey = parameters58.personalApiKey.getValue(connection);
|
|
99816
|
+
const host = parameters58.host.tryGetValue(connection) ?? "https://us.posthog.com";
|
|
100091
99817
|
const url = `${host.replace(/\/$/, "")}${path5}`;
|
|
100092
99818
|
const controller = new AbortController();
|
|
100093
99819
|
const timeout = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS53);
|
|
@@ -100120,14 +99846,14 @@ Rate limit: 240/minute, 1200/hour for analytics endpoints.`,
|
|
|
100120
99846
|
});
|
|
100121
99847
|
|
|
100122
99848
|
// ../connectors/src/connectors/posthog/index.ts
|
|
100123
|
-
var
|
|
99849
|
+
var tools58 = { request: requestTool41 };
|
|
100124
99850
|
var posthogConnector = new ConnectorPlugin({
|
|
100125
99851
|
slug: "posthog",
|
|
100126
99852
|
authType: null,
|
|
100127
99853
|
name: "PostHog",
|
|
100128
99854
|
description: "Connect to PostHog for product analytics, event tracking, and user behavior analysis.",
|
|
100129
99855
|
iconUrl: "https://images.ctfassets.net/9ncizv60xc5y/5GbGr8d2ncF746qlkN0Zpr/9bd6635dec75ba738f4afa61cb8dd4f1/posthog.png",
|
|
100130
|
-
parameters:
|
|
99856
|
+
parameters: parameters58,
|
|
100131
99857
|
releaseFlag: { dev1: true, dev2: false, prod: false },
|
|
100132
99858
|
onboarding: posthogOnboarding,
|
|
100133
99859
|
systemPrompt: {
|
|
@@ -100276,7 +100002,7 @@ HogQL\u306FClickHouse SQL\u30D9\u30FC\u30B9\u306ESQL\u30E9\u30A4\u30AF\u306A\u30
|
|
|
100276
100002
|
|
|
100277
100003
|
\u91CD\u8981: \u30A2\u30C9\u30DB\u30C3\u30AF\u5206\u6790\u306B\u306FHogQL\u3092\u4F7F\u7528\u3059\u308BQuery API\u3092\u63A8\u5968\u3057\u307E\u3059\u3002\u6700\u3082\u67D4\u8EDF\u3067\u3001\u3059\u3079\u3066\u306EPostHog\u30C7\u30FC\u30BF\u306B\u5BFE\u3057\u3066SQL\u30E9\u30A4\u30AF\u306A\u30AF\u30A8\u30EA\u304C\u53EF\u80FD\u3067\u3059\u3002\u30AF\u30A8\u30EA\u306B\u306F\u5FC5\u305ALIMIT\u3092\u542B\u3081\u3001\u5927\u898F\u6A21\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u3067\u306F\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u30D9\u30FC\u30B9\u306E\u30DA\u30FC\u30B8\u30CD\u30FC\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002`
|
|
100278
100004
|
},
|
|
100279
|
-
tools:
|
|
100005
|
+
tools: tools58
|
|
100280
100006
|
});
|
|
100281
100007
|
|
|
100282
100008
|
// ../connectors/src/connectors/registry.ts
|
|
@@ -100319,7 +100045,6 @@ var plugins = {
|
|
|
100319
100045
|
jira: jiraConnector,
|
|
100320
100046
|
linear: linearConnector,
|
|
100321
100047
|
asana: asanaConnector,
|
|
100322
|
-
trino: trinoConnector,
|
|
100323
100048
|
clickhouse: clickhouseConnector,
|
|
100324
100049
|
mongodb: mongodbConnector,
|
|
100325
100050
|
notion: notionConnector,
|
|
@@ -100556,62 +100281,62 @@ import { watch as fsWatch2 } from "fs";
|
|
|
100556
100281
|
import path2 from "path";
|
|
100557
100282
|
|
|
100558
100283
|
// src/types/server-logic.ts
|
|
100559
|
-
import { z as
|
|
100560
|
-
var parameterMetaSchema =
|
|
100561
|
-
name:
|
|
100562
|
-
type:
|
|
100563
|
-
description:
|
|
100564
|
-
required:
|
|
100565
|
-
default:
|
|
100566
|
-
});
|
|
100567
|
-
var serverLogicCacheConfigSchema =
|
|
100568
|
-
ttl:
|
|
100569
|
-
staleWhileRevalidate:
|
|
100570
|
-
});
|
|
100571
|
-
var serverLogicSchemaObjectSchema =
|
|
100572
|
-
() =>
|
|
100573
|
-
type:
|
|
100574
|
-
format:
|
|
100575
|
-
description:
|
|
100576
|
-
nullable:
|
|
100577
|
-
enum:
|
|
100284
|
+
import { z as z71 } from "zod";
|
|
100285
|
+
var parameterMetaSchema = z71.object({
|
|
100286
|
+
name: z71.string(),
|
|
100287
|
+
type: z71.enum(["string", "number", "boolean"]),
|
|
100288
|
+
description: z71.string(),
|
|
100289
|
+
required: z71.boolean().optional(),
|
|
100290
|
+
default: z71.union([z71.string(), z71.number(), z71.boolean()]).optional()
|
|
100291
|
+
});
|
|
100292
|
+
var serverLogicCacheConfigSchema = z71.object({
|
|
100293
|
+
ttl: z71.number(),
|
|
100294
|
+
staleWhileRevalidate: z71.boolean().optional()
|
|
100295
|
+
});
|
|
100296
|
+
var serverLogicSchemaObjectSchema = z71.lazy(
|
|
100297
|
+
() => z71.object({
|
|
100298
|
+
type: z71.enum(["string", "number", "integer", "boolean", "object", "array", "null"]).optional(),
|
|
100299
|
+
format: z71.string().optional(),
|
|
100300
|
+
description: z71.string().optional(),
|
|
100301
|
+
nullable: z71.boolean().optional(),
|
|
100302
|
+
enum: z71.array(z71.union([z71.string(), z71.number(), z71.boolean(), z71.null()])).optional(),
|
|
100578
100303
|
items: serverLogicSchemaObjectSchema.optional(),
|
|
100579
|
-
properties:
|
|
100580
|
-
required:
|
|
100581
|
-
additionalProperties:
|
|
100582
|
-
minimum:
|
|
100583
|
-
maximum:
|
|
100584
|
-
minLength:
|
|
100585
|
-
maxLength:
|
|
100586
|
-
pattern:
|
|
100304
|
+
properties: z71.record(z71.string(), serverLogicSchemaObjectSchema).optional(),
|
|
100305
|
+
required: z71.array(z71.string()).optional(),
|
|
100306
|
+
additionalProperties: z71.union([z71.boolean(), serverLogicSchemaObjectSchema]).optional(),
|
|
100307
|
+
minimum: z71.number().optional(),
|
|
100308
|
+
maximum: z71.number().optional(),
|
|
100309
|
+
minLength: z71.number().optional(),
|
|
100310
|
+
maxLength: z71.number().optional(),
|
|
100311
|
+
pattern: z71.string().optional()
|
|
100587
100312
|
})
|
|
100588
100313
|
);
|
|
100589
|
-
var serverLogicMediaTypeSchema =
|
|
100314
|
+
var serverLogicMediaTypeSchema = z71.object({
|
|
100590
100315
|
schema: serverLogicSchemaObjectSchema.optional(),
|
|
100591
|
-
example:
|
|
100316
|
+
example: z71.unknown().optional()
|
|
100592
100317
|
});
|
|
100593
|
-
var serverLogicResponseSchema =
|
|
100594
|
-
description:
|
|
100595
|
-
content:
|
|
100318
|
+
var serverLogicResponseSchema = z71.object({
|
|
100319
|
+
description: z71.string().optional(),
|
|
100320
|
+
content: z71.record(z71.string(), serverLogicMediaTypeSchema).optional()
|
|
100596
100321
|
});
|
|
100597
100322
|
var jsonBaseFields = {
|
|
100598
|
-
description:
|
|
100599
|
-
parameters:
|
|
100323
|
+
description: z71.string(),
|
|
100324
|
+
parameters: z71.array(parameterMetaSchema).optional(),
|
|
100600
100325
|
response: serverLogicResponseSchema.optional(),
|
|
100601
100326
|
cache: serverLogicCacheConfigSchema.optional()
|
|
100602
100327
|
};
|
|
100603
|
-
var jsonSqlServerLogicSchema =
|
|
100328
|
+
var jsonSqlServerLogicSchema = z71.object({
|
|
100604
100329
|
...jsonBaseFields,
|
|
100605
|
-
type:
|
|
100606
|
-
query:
|
|
100607
|
-
connectionId:
|
|
100330
|
+
type: z71.literal("sql").optional(),
|
|
100331
|
+
query: z71.string(),
|
|
100332
|
+
connectionId: z71.string()
|
|
100608
100333
|
});
|
|
100609
|
-
var jsonTypeScriptServerLogicSchema =
|
|
100334
|
+
var jsonTypeScriptServerLogicSchema = z71.object({
|
|
100610
100335
|
...jsonBaseFields,
|
|
100611
|
-
type:
|
|
100612
|
-
handlerPath:
|
|
100336
|
+
type: z71.literal("typescript"),
|
|
100337
|
+
handlerPath: z71.string()
|
|
100613
100338
|
});
|
|
100614
|
-
var anyJsonServerLogicSchema =
|
|
100339
|
+
var anyJsonServerLogicSchema = z71.union([
|
|
100615
100340
|
jsonTypeScriptServerLogicSchema,
|
|
100616
100341
|
jsonSqlServerLogicSchema
|
|
100617
100342
|
]);
|