@automate.ax/catalog 0.105.0 → 0.109.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog.d.ts +56 -4
- package/dist/catalog.js +34 -5
- package/dist/triggers/airtable.d.ts +34 -45
- package/dist/triggers/airtable.js +57 -18
- package/dist/triggers/cloudflare.d.ts +80 -0
- package/dist/triggers/cloudflare.js +33 -0
- package/dist/triggers/index.d.ts +3565 -2229
- package/dist/triggers/index.js +2 -0
- package/dist/triggers/linear.d.ts +602 -0
- package/dist/triggers/linear.js +237 -0
- package/package.json +7 -1
- package/src/catalog.ts +35 -5
- package/src/triggers/airtable.ts +71 -19
- package/src/triggers/cloudflare.ts +36 -0
- package/src/triggers/index.ts +2 -0
- package/src/triggers/linear.ts +237 -0
package/dist/catalog.d.ts
CHANGED
|
@@ -4,10 +4,23 @@ export declare const airtableService: {
|
|
|
4
4
|
readonly id: "oauth";
|
|
5
5
|
readonly name: "OAuth";
|
|
6
6
|
readonly type: "redirect";
|
|
7
|
+
}, {
|
|
8
|
+
readonly credentialUrl: "https://airtable.com/create/tokens";
|
|
9
|
+
readonly fields: readonly [{
|
|
10
|
+
readonly input: "password";
|
|
11
|
+
readonly label: "Personal access token";
|
|
12
|
+
readonly name: "apiKey";
|
|
13
|
+
readonly placeholder: "pat...";
|
|
14
|
+
readonly required: true;
|
|
15
|
+
}];
|
|
16
|
+
readonly id: "personal-access-token";
|
|
17
|
+
readonly name: "Personal access token";
|
|
18
|
+
readonly type: "form";
|
|
7
19
|
}];
|
|
8
|
-
readonly description: "Connect
|
|
20
|
+
readonly description: "Connect Airtable with OAuth or a personal access token.";
|
|
9
21
|
readonly id: "airtable";
|
|
10
22
|
readonly name: "Airtable";
|
|
23
|
+
readonly preferredConnectionMethodId: "oauth";
|
|
11
24
|
};
|
|
12
25
|
export declare const anthropicService: {
|
|
13
26
|
readonly id: "anthropic";
|
|
@@ -425,10 +438,23 @@ export declare const linearService: {
|
|
|
425
438
|
readonly id: "oauth";
|
|
426
439
|
readonly name: "OAuth";
|
|
427
440
|
readonly type: "redirect";
|
|
441
|
+
}, {
|
|
442
|
+
readonly credentialUrl: "https://linear.app/settings/api";
|
|
443
|
+
readonly fields: readonly [{
|
|
444
|
+
readonly placeholder: "lin_api_...";
|
|
445
|
+
readonly input: "password";
|
|
446
|
+
readonly label: "API key";
|
|
447
|
+
readonly name: "apiKey";
|
|
448
|
+
readonly required: true;
|
|
449
|
+
}];
|
|
450
|
+
readonly id: "api-key";
|
|
451
|
+
readonly name: "Personal API key";
|
|
452
|
+
readonly type: "form";
|
|
428
453
|
}];
|
|
429
|
-
readonly description: "Connect a Linear workspace.";
|
|
454
|
+
readonly description: "Connect a Linear workspace with OAuth or a personal API key.";
|
|
430
455
|
readonly id: "linear";
|
|
431
456
|
readonly name: "Linear";
|
|
457
|
+
readonly preferredConnectionMethodId: "oauth";
|
|
432
458
|
};
|
|
433
459
|
export declare const jobNimbusService: {
|
|
434
460
|
readonly id: "jobnimbus";
|
|
@@ -848,10 +874,23 @@ export declare const integrationCatalog: readonly [{
|
|
|
848
874
|
readonly id: "oauth";
|
|
849
875
|
readonly name: "OAuth";
|
|
850
876
|
readonly type: "redirect";
|
|
877
|
+
}, {
|
|
878
|
+
readonly credentialUrl: "https://airtable.com/create/tokens";
|
|
879
|
+
readonly fields: readonly [{
|
|
880
|
+
readonly input: "password";
|
|
881
|
+
readonly label: "Personal access token";
|
|
882
|
+
readonly name: "apiKey";
|
|
883
|
+
readonly placeholder: "pat...";
|
|
884
|
+
readonly required: true;
|
|
885
|
+
}];
|
|
886
|
+
readonly id: "personal-access-token";
|
|
887
|
+
readonly name: "Personal access token";
|
|
888
|
+
readonly type: "form";
|
|
851
889
|
}];
|
|
852
|
-
readonly description: "Connect
|
|
890
|
+
readonly description: "Connect Airtable with OAuth or a personal access token.";
|
|
853
891
|
readonly id: "airtable";
|
|
854
892
|
readonly name: "Airtable";
|
|
893
|
+
readonly preferredConnectionMethodId: "oauth";
|
|
855
894
|
}, {
|
|
856
895
|
readonly id: "anthropic";
|
|
857
896
|
readonly name: string;
|
|
@@ -1266,10 +1305,23 @@ export declare const integrationCatalog: readonly [{
|
|
|
1266
1305
|
readonly id: "oauth";
|
|
1267
1306
|
readonly name: "OAuth";
|
|
1268
1307
|
readonly type: "redirect";
|
|
1308
|
+
}, {
|
|
1309
|
+
readonly credentialUrl: "https://linear.app/settings/api";
|
|
1310
|
+
readonly fields: readonly [{
|
|
1311
|
+
readonly placeholder: "lin_api_...";
|
|
1312
|
+
readonly input: "password";
|
|
1313
|
+
readonly label: "API key";
|
|
1314
|
+
readonly name: "apiKey";
|
|
1315
|
+
readonly required: true;
|
|
1316
|
+
}];
|
|
1317
|
+
readonly id: "api-key";
|
|
1318
|
+
readonly name: "Personal API key";
|
|
1319
|
+
readonly type: "form";
|
|
1269
1320
|
}];
|
|
1270
|
-
readonly description: "Connect a Linear workspace.";
|
|
1321
|
+
readonly description: "Connect a Linear workspace with OAuth or a personal API key.";
|
|
1271
1322
|
readonly id: "linear";
|
|
1272
1323
|
readonly name: "Linear";
|
|
1324
|
+
readonly preferredConnectionMethodId: "oauth";
|
|
1273
1325
|
}, {
|
|
1274
1326
|
readonly connectionMethods: readonly [{
|
|
1275
1327
|
readonly id: "oauth";
|
package/dist/catalog.js
CHANGED
|
@@ -6,10 +6,28 @@ const API_KEY_FIELD = {
|
|
|
6
6
|
required: true,
|
|
7
7
|
};
|
|
8
8
|
export const airtableService = defineIntegrationService({
|
|
9
|
-
connectionMethods: [
|
|
10
|
-
|
|
9
|
+
connectionMethods: [
|
|
10
|
+
{ id: "oauth", name: "OAuth", type: "redirect" },
|
|
11
|
+
{
|
|
12
|
+
credentialUrl: "https://airtable.com/create/tokens",
|
|
13
|
+
fields: [
|
|
14
|
+
{
|
|
15
|
+
input: "password",
|
|
16
|
+
label: "Personal access token",
|
|
17
|
+
name: "apiKey",
|
|
18
|
+
placeholder: "pat...",
|
|
19
|
+
required: true,
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
id: "personal-access-token",
|
|
23
|
+
name: "Personal access token",
|
|
24
|
+
type: "form",
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
description: "Connect Airtable with OAuth or a personal access token.",
|
|
11
28
|
id: "airtable",
|
|
12
29
|
name: "Airtable",
|
|
30
|
+
preferredConnectionMethodId: "oauth",
|
|
13
31
|
});
|
|
14
32
|
export const anthropicService = defineApiKeyService({
|
|
15
33
|
description: "Connect an Anthropic API key.",
|
|
@@ -61,7 +79,8 @@ export const automateService = defineIntegrationService({
|
|
|
61
79
|
name: "Automate.ax",
|
|
62
80
|
});
|
|
63
81
|
export const brevoService = defineApiKeyService({
|
|
64
|
-
|
|
82
|
+
credentialUrl: "https://app.brevo.com/settings/keys/api",
|
|
83
|
+
description: "Connect a Brevo API key for messaging, contacts, campaigns, and managed events.",
|
|
65
84
|
id: "brevo",
|
|
66
85
|
name: "Brevo",
|
|
67
86
|
placeholder: "xkeysib-...",
|
|
@@ -271,10 +290,20 @@ export const huggingfaceService = defineIntegrationService({
|
|
|
271
290
|
name: "Hugging Face",
|
|
272
291
|
});
|
|
273
292
|
export const linearService = defineIntegrationService({
|
|
274
|
-
connectionMethods: [
|
|
275
|
-
|
|
293
|
+
connectionMethods: [
|
|
294
|
+
{ id: "oauth", name: "OAuth", type: "redirect" },
|
|
295
|
+
{
|
|
296
|
+
credentialUrl: "https://linear.app/settings/api",
|
|
297
|
+
fields: [{ ...API_KEY_FIELD, placeholder: "lin_api_..." }],
|
|
298
|
+
id: "api-key",
|
|
299
|
+
name: "Personal API key",
|
|
300
|
+
type: "form",
|
|
301
|
+
},
|
|
302
|
+
],
|
|
303
|
+
description: "Connect a Linear workspace with OAuth or a personal API key.",
|
|
276
304
|
id: "linear",
|
|
277
305
|
name: "Linear",
|
|
306
|
+
preferredConnectionMethodId: "oauth",
|
|
278
307
|
});
|
|
279
308
|
export const jobNimbusService = defineApiKeyService({
|
|
280
309
|
credentialUrl: "https://app.jobnimbus.com/account#api",
|
|
@@ -1,62 +1,51 @@
|
|
|
1
|
+
import type { IntegrationAccountRequirement } from "../types.js";
|
|
1
2
|
export declare const airtableTriggerDefinitions: {
|
|
3
|
+
readonly airtableBaseEvent: {
|
|
4
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
5
|
+
readonly type: "airtable.base.event";
|
|
6
|
+
};
|
|
7
|
+
readonly airtableFieldCreated: {
|
|
8
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
9
|
+
readonly type: "airtable.field.created";
|
|
10
|
+
};
|
|
11
|
+
readonly airtableFieldDeleted: {
|
|
12
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
13
|
+
readonly type: "airtable.field.deleted";
|
|
14
|
+
};
|
|
15
|
+
readonly airtableFieldUpdated: {
|
|
16
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
17
|
+
readonly type: "airtable.field.updated";
|
|
18
|
+
};
|
|
2
19
|
readonly airtableRecordCreated: {
|
|
3
|
-
readonly account:
|
|
4
|
-
readonly connectionOptions: readonly [{
|
|
5
|
-
readonly requiredScopes: readonly [{
|
|
6
|
-
readonly requirements: readonly ["data.records:read", "webhook:manage"];
|
|
7
|
-
readonly type: "and";
|
|
8
|
-
}];
|
|
9
|
-
}];
|
|
10
|
-
readonly serviceId: "airtable";
|
|
11
|
-
};
|
|
20
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
12
21
|
readonly type: "airtable.record.created";
|
|
13
22
|
};
|
|
14
23
|
readonly airtableRecordDeleted: {
|
|
15
|
-
readonly account:
|
|
16
|
-
readonly connectionOptions: readonly [{
|
|
17
|
-
readonly requiredScopes: readonly [{
|
|
18
|
-
readonly requirements: readonly ["data.records:read", "webhook:manage"];
|
|
19
|
-
readonly type: "and";
|
|
20
|
-
}];
|
|
21
|
-
}];
|
|
22
|
-
readonly serviceId: "airtable";
|
|
23
|
-
};
|
|
24
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
24
25
|
readonly type: "airtable.record.deleted";
|
|
25
26
|
};
|
|
26
27
|
readonly airtableRecordMovedIntoView: {
|
|
27
|
-
readonly account:
|
|
28
|
-
readonly connectionOptions: readonly [{
|
|
29
|
-
readonly requiredScopes: readonly [{
|
|
30
|
-
readonly requirements: readonly ["data.records:read", "webhook:manage"];
|
|
31
|
-
readonly type: "and";
|
|
32
|
-
}];
|
|
33
|
-
}];
|
|
34
|
-
readonly serviceId: "airtable";
|
|
35
|
-
};
|
|
28
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
36
29
|
readonly type: "airtable.record.movedIntoView";
|
|
37
30
|
};
|
|
38
31
|
readonly airtableRecordMovedOutOfView: {
|
|
39
|
-
readonly account:
|
|
40
|
-
readonly connectionOptions: readonly [{
|
|
41
|
-
readonly requiredScopes: readonly [{
|
|
42
|
-
readonly requirements: readonly ["data.records:read", "webhook:manage"];
|
|
43
|
-
readonly type: "and";
|
|
44
|
-
}];
|
|
45
|
-
}];
|
|
46
|
-
readonly serviceId: "airtable";
|
|
47
|
-
};
|
|
32
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
48
33
|
readonly type: "airtable.record.movedOutOfView";
|
|
49
34
|
};
|
|
50
35
|
readonly airtableRecordUpdated: {
|
|
51
|
-
readonly account:
|
|
52
|
-
readonly connectionOptions: readonly [{
|
|
53
|
-
readonly requiredScopes: readonly [{
|
|
54
|
-
readonly requirements: readonly ["data.records:read", "webhook:manage"];
|
|
55
|
-
readonly type: "and";
|
|
56
|
-
}];
|
|
57
|
-
}];
|
|
58
|
-
readonly serviceId: "airtable";
|
|
59
|
-
};
|
|
36
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
60
37
|
readonly type: "airtable.record.updated";
|
|
61
38
|
};
|
|
39
|
+
readonly airtableTableCreated: {
|
|
40
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
41
|
+
readonly type: "airtable.table.created";
|
|
42
|
+
};
|
|
43
|
+
readonly airtableTableDeleted: {
|
|
44
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
45
|
+
readonly type: "airtable.table.deleted";
|
|
46
|
+
};
|
|
47
|
+
readonly airtableTableUpdated: {
|
|
48
|
+
readonly account: IntegrationAccountRequirement<"airtable">;
|
|
49
|
+
readonly type: "airtable.table.updated";
|
|
50
|
+
};
|
|
62
51
|
};
|
|
@@ -1,35 +1,74 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
1
|
+
import { integrationScope as scope } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Builds equivalent OAuth and personal-access-token trigger requirements.
|
|
4
|
+
*
|
|
5
|
+
* @param requiredScope - Least-privilege provider scope expression.
|
|
6
|
+
*/
|
|
7
|
+
function airtableAccount(requiredScope) {
|
|
8
|
+
return {
|
|
9
|
+
connectionOptions: [
|
|
10
|
+
{
|
|
11
|
+
connectionMethodId: "oauth",
|
|
12
|
+
requiredScopes: [requiredScope],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
connectionMethodId: "personal-access-token",
|
|
16
|
+
requiredScopes: [requiredScope],
|
|
17
|
+
},
|
|
18
|
+
],
|
|
19
|
+
serviceId: "airtable",
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const AIRTABLE_RECORD_ACCOUNT = airtableAccount(scope.and("data.records:read", "webhook:manage"));
|
|
23
|
+
const AIRTABLE_SCHEMA_ACCOUNT = airtableAccount(scope.and("schema.bases:read", "webhook:manage"));
|
|
24
|
+
const AIRTABLE_BASE_EVENT_ACCOUNT = airtableAccount(scope.and("data.records:read", "schema.bases:read", "webhook:manage"));
|
|
14
25
|
export const airtableTriggerDefinitions = {
|
|
26
|
+
airtableBaseEvent: {
|
|
27
|
+
account: AIRTABLE_BASE_EVENT_ACCOUNT,
|
|
28
|
+
type: "airtable.base.event",
|
|
29
|
+
},
|
|
30
|
+
airtableFieldCreated: {
|
|
31
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
32
|
+
type: "airtable.field.created",
|
|
33
|
+
},
|
|
34
|
+
airtableFieldDeleted: {
|
|
35
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
36
|
+
type: "airtable.field.deleted",
|
|
37
|
+
},
|
|
38
|
+
airtableFieldUpdated: {
|
|
39
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
40
|
+
type: "airtable.field.updated",
|
|
41
|
+
},
|
|
15
42
|
airtableRecordCreated: {
|
|
16
|
-
account:
|
|
43
|
+
account: AIRTABLE_RECORD_ACCOUNT,
|
|
17
44
|
type: "airtable.record.created",
|
|
18
45
|
},
|
|
19
46
|
airtableRecordDeleted: {
|
|
20
|
-
account:
|
|
47
|
+
account: AIRTABLE_RECORD_ACCOUNT,
|
|
21
48
|
type: "airtable.record.deleted",
|
|
22
49
|
},
|
|
23
50
|
airtableRecordMovedIntoView: {
|
|
24
|
-
account:
|
|
51
|
+
account: AIRTABLE_RECORD_ACCOUNT,
|
|
25
52
|
type: "airtable.record.movedIntoView",
|
|
26
53
|
},
|
|
27
54
|
airtableRecordMovedOutOfView: {
|
|
28
|
-
account:
|
|
55
|
+
account: AIRTABLE_RECORD_ACCOUNT,
|
|
29
56
|
type: "airtable.record.movedOutOfView",
|
|
30
57
|
},
|
|
31
58
|
airtableRecordUpdated: {
|
|
32
|
-
account:
|
|
59
|
+
account: AIRTABLE_RECORD_ACCOUNT,
|
|
33
60
|
type: "airtable.record.updated",
|
|
34
61
|
},
|
|
62
|
+
airtableTableCreated: {
|
|
63
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
64
|
+
type: "airtable.table.created",
|
|
65
|
+
},
|
|
66
|
+
airtableTableDeleted: {
|
|
67
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
68
|
+
type: "airtable.table.deleted",
|
|
69
|
+
},
|
|
70
|
+
airtableTableUpdated: {
|
|
71
|
+
account: AIRTABLE_SCHEMA_ACCOUNT,
|
|
72
|
+
type: "airtable.table.updated",
|
|
73
|
+
},
|
|
35
74
|
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
export declare const cloudflareTriggerDefinitions: {
|
|
2
|
+
readonly cloudflareAccessCertificateExpiring: {
|
|
3
|
+
readonly account: {
|
|
4
|
+
readonly connectionOptions: readonly [{
|
|
5
|
+
readonly connectionMethodId: "oauth";
|
|
6
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
7
|
+
}, {
|
|
8
|
+
readonly connectionMethodId: "api-token";
|
|
9
|
+
readonly requiredScopes: readonly [];
|
|
10
|
+
}];
|
|
11
|
+
readonly serviceId: "cloudflare";
|
|
12
|
+
};
|
|
13
|
+
readonly type: "cloudflare.accessCertificate.expiring";
|
|
14
|
+
};
|
|
15
|
+
readonly cloudflareLayer4DdosAttack: {
|
|
16
|
+
readonly account: {
|
|
17
|
+
readonly connectionOptions: readonly [{
|
|
18
|
+
readonly connectionMethodId: "oauth";
|
|
19
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
20
|
+
}, {
|
|
21
|
+
readonly connectionMethodId: "api-token";
|
|
22
|
+
readonly requiredScopes: readonly [];
|
|
23
|
+
}];
|
|
24
|
+
readonly serviceId: "cloudflare";
|
|
25
|
+
};
|
|
26
|
+
readonly type: "cloudflare.layer4DdosAttack";
|
|
27
|
+
};
|
|
28
|
+
readonly cloudflareLayer7DdosAttack: {
|
|
29
|
+
readonly account: {
|
|
30
|
+
readonly connectionOptions: readonly [{
|
|
31
|
+
readonly connectionMethodId: "oauth";
|
|
32
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
33
|
+
}, {
|
|
34
|
+
readonly connectionMethodId: "api-token";
|
|
35
|
+
readonly requiredScopes: readonly [];
|
|
36
|
+
}];
|
|
37
|
+
readonly serviceId: "cloudflare";
|
|
38
|
+
};
|
|
39
|
+
readonly type: "cloudflare.layer7DdosAttack";
|
|
40
|
+
};
|
|
41
|
+
readonly cloudflareNotification: {
|
|
42
|
+
readonly account: {
|
|
43
|
+
readonly connectionOptions: readonly [{
|
|
44
|
+
readonly connectionMethodId: "oauth";
|
|
45
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
46
|
+
}, {
|
|
47
|
+
readonly connectionMethodId: "api-token";
|
|
48
|
+
readonly requiredScopes: readonly [];
|
|
49
|
+
}];
|
|
50
|
+
readonly serviceId: "cloudflare";
|
|
51
|
+
};
|
|
52
|
+
readonly type: "cloudflare.notification";
|
|
53
|
+
};
|
|
54
|
+
readonly cloudflareOriginHealthCheckStatusChanged: {
|
|
55
|
+
readonly account: {
|
|
56
|
+
readonly connectionOptions: readonly [{
|
|
57
|
+
readonly connectionMethodId: "oauth";
|
|
58
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
59
|
+
}, {
|
|
60
|
+
readonly connectionMethodId: "api-token";
|
|
61
|
+
readonly requiredScopes: readonly [];
|
|
62
|
+
}];
|
|
63
|
+
readonly serviceId: "cloudflare";
|
|
64
|
+
};
|
|
65
|
+
readonly type: "cloudflare.originHealthCheckStatusChanged";
|
|
66
|
+
};
|
|
67
|
+
readonly cloudflareSslCertificateEvent: {
|
|
68
|
+
readonly account: {
|
|
69
|
+
readonly connectionOptions: readonly [{
|
|
70
|
+
readonly connectionMethodId: "oauth";
|
|
71
|
+
readonly requiredScopes: readonly ["account.write"];
|
|
72
|
+
}, {
|
|
73
|
+
readonly connectionMethodId: "api-token";
|
|
74
|
+
readonly requiredScopes: readonly [];
|
|
75
|
+
}];
|
|
76
|
+
readonly serviceId: "cloudflare";
|
|
77
|
+
};
|
|
78
|
+
readonly type: "cloudflare.sslCertificate.event";
|
|
79
|
+
};
|
|
80
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
const CLOUDFLARE_ACCOUNT = {
|
|
2
|
+
connectionOptions: [
|
|
3
|
+
{ connectionMethodId: "oauth", requiredScopes: ["account.write"] },
|
|
4
|
+
{ connectionMethodId: "api-token", requiredScopes: [] },
|
|
5
|
+
],
|
|
6
|
+
serviceId: "cloudflare",
|
|
7
|
+
};
|
|
8
|
+
export const cloudflareTriggerDefinitions = {
|
|
9
|
+
cloudflareAccessCertificateExpiring: {
|
|
10
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
11
|
+
type: "cloudflare.accessCertificate.expiring",
|
|
12
|
+
},
|
|
13
|
+
cloudflareLayer4DdosAttack: {
|
|
14
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
15
|
+
type: "cloudflare.layer4DdosAttack",
|
|
16
|
+
},
|
|
17
|
+
cloudflareLayer7DdosAttack: {
|
|
18
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
19
|
+
type: "cloudflare.layer7DdosAttack",
|
|
20
|
+
},
|
|
21
|
+
cloudflareNotification: {
|
|
22
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
23
|
+
type: "cloudflare.notification",
|
|
24
|
+
},
|
|
25
|
+
cloudflareOriginHealthCheckStatusChanged: {
|
|
26
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
27
|
+
type: "cloudflare.originHealthCheckStatusChanged",
|
|
28
|
+
},
|
|
29
|
+
cloudflareSslCertificateEvent: {
|
|
30
|
+
account: CLOUDFLARE_ACCOUNT,
|
|
31
|
+
type: "cloudflare.sslCertificate.event",
|
|
32
|
+
},
|
|
33
|
+
};
|