@jupiterone/jupiterone-mcp 0.0.1
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/LICENSE +21 -0
- package/README.md +89 -0
- package/dist/client/graphql/mutations.d.ts +11 -0
- package/dist/client/graphql/mutations.d.ts.map +1 -0
- package/dist/client/graphql/mutations.js +315 -0
- package/dist/client/graphql/mutations.js.map +1 -0
- package/dist/client/graphql/queries.d.ts +15 -0
- package/dist/client/graphql/queries.d.ts.map +1 -0
- package/dist/client/graphql/queries.js +692 -0
- package/dist/client/graphql/queries.js.map +1 -0
- package/dist/client/jupiterone-client.d.ts +106 -0
- package/dist/client/jupiterone-client.d.ts.map +1 -0
- package/dist/client/jupiterone-client.js +137 -0
- package/dist/client/jupiterone-client.js.map +1 -0
- package/dist/client/services/account-service.d.ts +17 -0
- package/dist/client/services/account-service.d.ts.map +1 -0
- package/dist/client/services/account-service.js +37 -0
- package/dist/client/services/account-service.js.map +1 -0
- package/dist/client/services/alert-service.d.ts +15 -0
- package/dist/client/services/alert-service.d.ts.map +1 -0
- package/dist/client/services/alert-service.js +56 -0
- package/dist/client/services/alert-service.js.map +1 -0
- package/dist/client/services/dashboard-service.d.ts +123 -0
- package/dist/client/services/dashboard-service.d.ts.map +1 -0
- package/dist/client/services/dashboard-service.js +74 -0
- package/dist/client/services/dashboard-service.js.map +1 -0
- package/dist/client/services/integration-service.d.ts +45 -0
- package/dist/client/services/integration-service.d.ts.map +1 -0
- package/dist/client/services/integration-service.js +114 -0
- package/dist/client/services/integration-service.js.map +1 -0
- package/dist/client/services/j1ql-service.d.ts +21 -0
- package/dist/client/services/j1ql-service.d.ts.map +1 -0
- package/dist/client/services/j1ql-service.js +29 -0
- package/dist/client/services/j1ql-service.js.map +1 -0
- package/dist/client/services/rule-service.d.ts +61 -0
- package/dist/client/services/rule-service.d.ts.map +1 -0
- package/dist/client/services/rule-service.js +140 -0
- package/dist/client/services/rule-service.js.map +1 -0
- package/dist/descriptions/create-dashboard-widget.md +325 -0
- package/dist/descriptions/create-dashboard.md +12 -0
- package/dist/descriptions/create-inline-question-rule.md +357 -0
- package/dist/descriptions/create-j1ql-from-natural-language.md +7 -0
- package/dist/descriptions/execute-j1ql-query.md +426 -0
- package/dist/descriptions/list-alerts.md +14 -0
- package/dist/descriptions/list-rules.md +14 -0
- package/dist/descriptions/update-dashboard.md +467 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/server/mcp-server.d.ts +10 -0
- package/dist/server/mcp-server.d.ts.map +1 -0
- package/dist/server/mcp-server.js +1496 -0
- package/dist/server/mcp-server.js.map +1 -0
- package/dist/types/jupiterone.d.ts +752 -0
- package/dist/types/jupiterone.d.ts.map +1 -0
- package/dist/types/jupiterone.js +2 -0
- package/dist/types/jupiterone.js.map +1 -0
- package/dist/utils/description-loader.d.ts +2 -0
- package/dist/utils/description-loader.d.ts.map +1 -0
- package/dist/utils/description-loader.js +14 -0
- package/dist/utils/description-loader.js.map +1 -0
- package/dist/utils/load-description.d.ts +2 -0
- package/dist/utils/load-description.d.ts.map +1 -0
- package/dist/utils/load-description.js +9 -0
- package/dist/utils/load-description.js.map +1 -0
- package/package.json +64 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 JupiterOne MCP Team
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# JupiterOne MCP Server
|
|
2
|
+
|
|
3
|
+
A Model Context Protocol (MCP) server that provides access to JupiterOne account rules and alert details. This server enables AI assistants and other MCP clients to interact with JupiterOne's security monitoring and alerting system.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
### Rules Management
|
|
8
|
+
- **list-rules** - List all rules with optional limit parameter
|
|
9
|
+
- **get-rule-details** - Get detailed information about a specific rule by ID
|
|
10
|
+
- **create-inline-question-rule** - Create new inline question-based rules with operations and actions
|
|
11
|
+
- **update-inline-question-rule** - Update existing inline question rule instances
|
|
12
|
+
- **evaluate-rule** - Trigger on-demand evaluation of a specific rule
|
|
13
|
+
|
|
14
|
+
### Rule Evaluations
|
|
15
|
+
- **list-rule-evaluations** - Get historical evaluation data for a rule with optional time filtering
|
|
16
|
+
- **get-rule-evaluation-details** - Get detailed evaluation information including query, condition, and action results
|
|
17
|
+
- **get-raw-data-download-url** - Get download URL for raw evaluation data
|
|
18
|
+
- **get-rule-evaluation-query-results** - Get the actual query results from a rule evaluation
|
|
19
|
+
|
|
20
|
+
### Alert Monitoring
|
|
21
|
+
- **get-active-alerts** - Get all currently active alerts with optional limit parameter
|
|
22
|
+
|
|
23
|
+
### Dashboard Management
|
|
24
|
+
- **get-dashboards** - List all dashboards in your account
|
|
25
|
+
- **create-dashboard** - Create new dashboards
|
|
26
|
+
- **get-dashboard-details** - Get detailed dashboard information including widgets and layouts
|
|
27
|
+
- **update-dashboard** - Update an existing dashboard layout
|
|
28
|
+
|
|
29
|
+
### Integration Management
|
|
30
|
+
- **get-integration-definitions** - List available integration definitions with optional configuration details
|
|
31
|
+
- **get-integration-instances** - Get integration instances with optional filtering by definition ID
|
|
32
|
+
- **get-integration-jobs** - List integration jobs with optional filtering by status, instance, or definition
|
|
33
|
+
- **get-integration-job** - Get details for a specific integration job
|
|
34
|
+
- **get-integration-events** - Get events for a specific integration job with pagination support
|
|
35
|
+
|
|
36
|
+
### Account Management
|
|
37
|
+
- **test-connection** - Test connection to JupiterOne API and get account information
|
|
38
|
+
|
|
39
|
+
## Available Tools
|
|
40
|
+
|
|
41
|
+
### Rules Management
|
|
42
|
+
| Tool | Description | Parameters |
|
|
43
|
+
|------|-------------|------------|
|
|
44
|
+
| `list-rules` | List all rules in the account | `limit` (optional): Number of rules to return (1-1000) |
|
|
45
|
+
| `get-rule-details` | Get detailed rule information | `ruleId`: ID of the rule |
|
|
46
|
+
| `create-inline-question-rule` | Create new inline question rule | Complex object: `name`, `description`, `notifyOnFailure` (optional), `triggerActionsOnNewEntitiesOnly` (optional), `ignorePreviousResults` (optional), `pollingInterval`, `outputs`, `specVersion` (optional), `tags` (optional), `templates` (optional), `queries`, `operations` |
|
|
47
|
+
| `update-inline-question-rule` | Update existing rule | `id`, `name`, `description`, `notifyOnFailure`, `triggerActionsOnNewEntitiesOnly`, `ignorePreviousResults`, `pollingInterval`, `outputs`, `specVersion`, `version`, `tags`, `templates`, `labels`, `resourceGroupId`, `remediationSteps`, `question`, `operations` |
|
|
48
|
+
| `evaluate-rule` | Trigger rule evaluation | `ruleId`: ID of the rule to evaluate |
|
|
49
|
+
|
|
50
|
+
### Rule Evaluations
|
|
51
|
+
| Tool | Description | Parameters |
|
|
52
|
+
|------|-------------|------------|
|
|
53
|
+
| `list-rule-evaluations` | Get rule evaluation history | `ruleId`, `beginTimestamp` (optional), `endTimestamp` (optional), `limit` (optional), `tag` (optional) |
|
|
54
|
+
| `get-rule-evaluation-details` | Get detailed evaluation results | `ruleId`, `timestamp` |
|
|
55
|
+
| `get-raw-data-download-url` | Get download URL for raw data | `rawDataKey` |
|
|
56
|
+
| `get-rule-evaluation-query-results` | Get query results from evaluation | `rawDataKey` |
|
|
57
|
+
|
|
58
|
+
### Alert Monitoring
|
|
59
|
+
| Tool | Description | Parameters |
|
|
60
|
+
|------|-------------|------------|
|
|
61
|
+
| `get-active-alerts` | List active alerts | `limit` (optional): Number of alerts to return (1-1000) |
|
|
62
|
+
|
|
63
|
+
### Dashboard Management
|
|
64
|
+
| Tool | Description | Parameters |
|
|
65
|
+
|------|-------------|------------|
|
|
66
|
+
| `get-dashboards` | List all dashboards | None |
|
|
67
|
+
| `create-dashboard` | Create new dashboard | `name`, `type` |
|
|
68
|
+
| `get-dashboard-details` | Get dashboard details | `dashboardId` |
|
|
69
|
+
| `update-dashboard` | Update an existing dashboard layout | `dashboardId`, `layouts` |
|
|
70
|
+
| `create-dashboard-widget` | Create a widget on a dashboard | `dashboardId`, `input` |
|
|
71
|
+
|
|
72
|
+
### Integration Management
|
|
73
|
+
| Tool | Description | Parameters |
|
|
74
|
+
|------|-------------|------------|
|
|
75
|
+
| `get-integration-definitions` | List integration definitions | `includeConfig` (optional): Include configuration fields |
|
|
76
|
+
| `get-integration-instances` | Get integration instances | `definitionId` (optional), `limit` (optional) |
|
|
77
|
+
| `get-integration-jobs` | List integration jobs | `status` (optional), `integrationInstanceId` (optional), `integrationDefinitionId` (optional), `integrationInstanceIds` (optional), `size` (optional) |
|
|
78
|
+
| `get-integration-job` | Get details for a specific integration job | `integrationJobId`, `integrationInstanceId` |
|
|
79
|
+
| `get-integration-events` | Get events for a specific integration job | `jobId`, `integrationInstanceId`, `cursor` (optional), `size` (optional) |
|
|
80
|
+
|
|
81
|
+
### Account Management
|
|
82
|
+
| Tool | Description | Parameters |
|
|
83
|
+
|------|-------------|------------|
|
|
84
|
+
| `test-connection` | Test connection to JupiterOne API and get account information | None |
|
|
85
|
+
|
|
86
|
+
### Query Execution
|
|
87
|
+
| Tool | Description | Parameters |
|
|
88
|
+
|------|-------------|------------|
|
|
89
|
+
| `execute-j1ql-query` | Execute a J1QL query | `query`, `variables` (optional), `cursor` (optional), `includeDeleted` (optional), `deferredResponse` (optional), `flags` (optional), `scopeFilters` (optional) |
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const CREATE_INLINE_QUESTION_RULE = "\n mutation createInlineQuestionRuleInstance($instance: CreateInlineQuestionRuleInstanceInput!) {\n createInlineQuestionRuleInstance(instance: $instance) {\n ...RuleInstanceFields\n __typename\n }\n }\n\n fragment RuleInstanceFields on QuestionRuleInstance {\n id\n resourceGroupId\n accountId\n name\n description\n version\n lastEvaluationStartOn\n lastEvaluationEndOn\n evaluationStep\n specVersion\n notifyOnFailure\n triggerActionsOnNewEntitiesOnly\n ignorePreviousResults\n pollingInterval\n templates\n outputs\n labels {\n labelName\n labelValue\n __typename\n }\n question {\n queries {\n query\n name\n includeDeleted\n __typename\n }\n __typename\n }\n questionId\n latest\n deleted\n type\n operations {\n when\n actions\n __typename\n }\n latestAlertId\n latestAlertIsActive\n state {\n actions\n __typename\n }\n tags\n remediationSteps\n __typename\n }\n";
|
|
2
|
+
export declare const UPDATE_INLINE_QUESTION_RULE = "\n mutation UpdateInlineQuestionRuleInstance(\n $instance: UpdateInlineQuestionRuleInstanceInput!\n ) {\n updateInlineQuestionRuleInstance(instance: $instance) {\n id\n name\n description\n version\n pollingInterval\n question {\n queries {\n query\n name\n version\n }\n }\n operations {\n when\n actions\n }\n outputs\n }\n }\n";
|
|
3
|
+
export declare const CREATE_REFERENCED_QUESTION_RULE = "\n mutation CreateReferencedQuestionRuleInstance(\n $instance: CreateReferencedQuestionRuleInstanceInput!\n ) {\n createReferencedQuestionRuleInstance(instance: $instance) {\n id\n name\n description\n version\n pollingInterval\n questionId\n questionName\n operations {\n when {\n type\n version\n condition\n }\n actions {\n type\n ... on SetPropertyAction {\n targetProperty\n targetValue\n }\n }\n }\n outputs\n }\n }\n";
|
|
4
|
+
export declare const UPDATE_REFERENCED_QUESTION_RULE = "\n mutation UpdateReferencedQuestionRuleInstance(\n $instance: UpdateReferencedQuestionRuleInstanceInput!\n ) {\n updateReferencedQuestionRuleInstance(instance: $instance) {\n id\n name\n description\n version\n pollingInterval\n questionId\n questionName\n operations {\n when {\n type\n version\n condition\n }\n actions {\n type\n ... on SetPropertyAction {\n targetProperty\n targetValue\n }\n }\n }\n outputs\n }\n }\n";
|
|
5
|
+
export declare const DELETE_RULE = "\n mutation DeleteRuleInstance($id: ID!) {\n deleteRuleInstance(id: $id) {\n id\n }\n }\n";
|
|
6
|
+
export declare const EVALUATE_RULE = "\n mutation evaluateRuleInstance($id: ID!) {\n evaluateRuleInstance(id: $id) {\n id\n __typename\n }\n }\n";
|
|
7
|
+
export declare const CREATE_DASHBOARD = "\n mutation CreateDashboard($input: CreateInsightsDashboardInput!) {\n createDashboard(input: $input) {\n id\n __typename\n }\n }\n";
|
|
8
|
+
export declare const CREATE_J1QL_FROM_NATURAL_LANGUAGE = "\n mutation createJ1qlFromNaturalLanguage($naturalLanguage: String!) {\n createJ1qlFromNaturalLanguage(naturalLanguage: $naturalLanguage) {\n uuid\n question\n query\n __typename\n }\n }\n";
|
|
9
|
+
export declare const CREATE_DASHBOARD_WIDGET = "\n mutation CreateWidget($dashboardId: String!, $input: CreateInsightsWidgetInput!) {\n createWidget(dashboardId: $dashboardId, input: $input) {\n ...InsightsWidget\n __typename\n }\n }\n\n fragment InsightsWidget on InsightsWidget {\n id\n title\n description\n type\n questionId\n noResultMessage\n includeDeleted\n config {\n queries {\n id\n name\n query\n __typename\n }\n settings\n postQueryFilters\n disableQueryPolicyFilters\n __typename\n }\n __typename\n }\n";
|
|
10
|
+
export declare const PATCH_DASHBOARD = "\n mutation PatchDashboard($input: PatchInsightsDashboardInput!) {\n patchDashboard(input: $input) {\n id\n name\n category\n userId\n supportedUseCase\n isJ1ManagedBoard\n published\n publishedToUserIds\n publishedToGroupIds\n groupIds\n userIds\n scopeFilters\n resourceGroupId\n starred\n _timeUpdated\n _createdAt\n prerequisites {\n prerequisitesMet\n preRequisitesGroupsFulfilled\n preRequisitesGroupsRequired\n }\n parameters {\n dashboardId\n accountId\n id\n label\n name\n options\n valueType\n type\n default\n disableCustomInput\n requireValue\n }\n widgets {\n id\n title\n description\n type\n questionId\n noResultMessage\n includeDeleted\n config {\n queries {\n id\n name\n query\n }\n settings\n postQueryFilters\n disableQueryPolicyFilters\n }\n }\n layouts {\n xs {\n static\n moved\n w\n h\n x\n y\n i\n }\n sm {\n static\n moved\n w\n h\n x\n y\n i\n }\n md {\n static\n moved\n w\n h\n x\n y\n i\n }\n lg {\n static\n moved\n w\n h\n x\n y\n i\n }\n xl {\n static\n moved\n w\n h\n x\n y\n i\n }\n }\n }\n }\n";
|
|
11
|
+
//# sourceMappingURL=mutations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutations.d.ts","sourceRoot":"","sources":["../../../src/client/graphql/mutations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,ojCA0DvC,CAAC;AAEF,eAAO,MAAM,2BAA2B,mcAwBvC,CAAC;AAEF,eAAO,MAAM,+BAA+B,klBA6B3C,CAAC;AAEF,eAAO,MAAM,+BAA+B,klBA6B3C,CAAC;AAEF,eAAO,MAAM,WAAW,2GAMvB,CAAC;AAEF,eAAO,MAAM,aAAa,iIAOzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,0JAO5B,CAAC;AAEF,eAAO,MAAM,iCAAiC,6NAS7C,CAAC;AAEF,eAAO,MAAM,uBAAuB,skBA8BnC,CAAC;AAEF,eAAO,MAAM,eAAe,6vDAyG3B,CAAC"}
|
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
export const CREATE_INLINE_QUESTION_RULE = `
|
|
2
|
+
mutation createInlineQuestionRuleInstance($instance: CreateInlineQuestionRuleInstanceInput!) {
|
|
3
|
+
createInlineQuestionRuleInstance(instance: $instance) {
|
|
4
|
+
...RuleInstanceFields
|
|
5
|
+
__typename
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
fragment RuleInstanceFields on QuestionRuleInstance {
|
|
10
|
+
id
|
|
11
|
+
resourceGroupId
|
|
12
|
+
accountId
|
|
13
|
+
name
|
|
14
|
+
description
|
|
15
|
+
version
|
|
16
|
+
lastEvaluationStartOn
|
|
17
|
+
lastEvaluationEndOn
|
|
18
|
+
evaluationStep
|
|
19
|
+
specVersion
|
|
20
|
+
notifyOnFailure
|
|
21
|
+
triggerActionsOnNewEntitiesOnly
|
|
22
|
+
ignorePreviousResults
|
|
23
|
+
pollingInterval
|
|
24
|
+
templates
|
|
25
|
+
outputs
|
|
26
|
+
labels {
|
|
27
|
+
labelName
|
|
28
|
+
labelValue
|
|
29
|
+
__typename
|
|
30
|
+
}
|
|
31
|
+
question {
|
|
32
|
+
queries {
|
|
33
|
+
query
|
|
34
|
+
name
|
|
35
|
+
includeDeleted
|
|
36
|
+
__typename
|
|
37
|
+
}
|
|
38
|
+
__typename
|
|
39
|
+
}
|
|
40
|
+
questionId
|
|
41
|
+
latest
|
|
42
|
+
deleted
|
|
43
|
+
type
|
|
44
|
+
operations {
|
|
45
|
+
when
|
|
46
|
+
actions
|
|
47
|
+
__typename
|
|
48
|
+
}
|
|
49
|
+
latestAlertId
|
|
50
|
+
latestAlertIsActive
|
|
51
|
+
state {
|
|
52
|
+
actions
|
|
53
|
+
__typename
|
|
54
|
+
}
|
|
55
|
+
tags
|
|
56
|
+
remediationSteps
|
|
57
|
+
__typename
|
|
58
|
+
}
|
|
59
|
+
`;
|
|
60
|
+
export const UPDATE_INLINE_QUESTION_RULE = `
|
|
61
|
+
mutation UpdateInlineQuestionRuleInstance(
|
|
62
|
+
$instance: UpdateInlineQuestionRuleInstanceInput!
|
|
63
|
+
) {
|
|
64
|
+
updateInlineQuestionRuleInstance(instance: $instance) {
|
|
65
|
+
id
|
|
66
|
+
name
|
|
67
|
+
description
|
|
68
|
+
version
|
|
69
|
+
pollingInterval
|
|
70
|
+
question {
|
|
71
|
+
queries {
|
|
72
|
+
query
|
|
73
|
+
name
|
|
74
|
+
version
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
operations {
|
|
78
|
+
when
|
|
79
|
+
actions
|
|
80
|
+
}
|
|
81
|
+
outputs
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
`;
|
|
85
|
+
export const CREATE_REFERENCED_QUESTION_RULE = `
|
|
86
|
+
mutation CreateReferencedQuestionRuleInstance(
|
|
87
|
+
$instance: CreateReferencedQuestionRuleInstanceInput!
|
|
88
|
+
) {
|
|
89
|
+
createReferencedQuestionRuleInstance(instance: $instance) {
|
|
90
|
+
id
|
|
91
|
+
name
|
|
92
|
+
description
|
|
93
|
+
version
|
|
94
|
+
pollingInterval
|
|
95
|
+
questionId
|
|
96
|
+
questionName
|
|
97
|
+
operations {
|
|
98
|
+
when {
|
|
99
|
+
type
|
|
100
|
+
version
|
|
101
|
+
condition
|
|
102
|
+
}
|
|
103
|
+
actions {
|
|
104
|
+
type
|
|
105
|
+
... on SetPropertyAction {
|
|
106
|
+
targetProperty
|
|
107
|
+
targetValue
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
outputs
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
`;
|
|
115
|
+
export const UPDATE_REFERENCED_QUESTION_RULE = `
|
|
116
|
+
mutation UpdateReferencedQuestionRuleInstance(
|
|
117
|
+
$instance: UpdateReferencedQuestionRuleInstanceInput!
|
|
118
|
+
) {
|
|
119
|
+
updateReferencedQuestionRuleInstance(instance: $instance) {
|
|
120
|
+
id
|
|
121
|
+
name
|
|
122
|
+
description
|
|
123
|
+
version
|
|
124
|
+
pollingInterval
|
|
125
|
+
questionId
|
|
126
|
+
questionName
|
|
127
|
+
operations {
|
|
128
|
+
when {
|
|
129
|
+
type
|
|
130
|
+
version
|
|
131
|
+
condition
|
|
132
|
+
}
|
|
133
|
+
actions {
|
|
134
|
+
type
|
|
135
|
+
... on SetPropertyAction {
|
|
136
|
+
targetProperty
|
|
137
|
+
targetValue
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
outputs
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
`;
|
|
145
|
+
export const DELETE_RULE = `
|
|
146
|
+
mutation DeleteRuleInstance($id: ID!) {
|
|
147
|
+
deleteRuleInstance(id: $id) {
|
|
148
|
+
id
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
`;
|
|
152
|
+
export const EVALUATE_RULE = `
|
|
153
|
+
mutation evaluateRuleInstance($id: ID!) {
|
|
154
|
+
evaluateRuleInstance(id: $id) {
|
|
155
|
+
id
|
|
156
|
+
__typename
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
`;
|
|
160
|
+
export const CREATE_DASHBOARD = `
|
|
161
|
+
mutation CreateDashboard($input: CreateInsightsDashboardInput!) {
|
|
162
|
+
createDashboard(input: $input) {
|
|
163
|
+
id
|
|
164
|
+
__typename
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
`;
|
|
168
|
+
export const CREATE_J1QL_FROM_NATURAL_LANGUAGE = `
|
|
169
|
+
mutation createJ1qlFromNaturalLanguage($naturalLanguage: String!) {
|
|
170
|
+
createJ1qlFromNaturalLanguage(naturalLanguage: $naturalLanguage) {
|
|
171
|
+
uuid
|
|
172
|
+
question
|
|
173
|
+
query
|
|
174
|
+
__typename
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
`;
|
|
178
|
+
export const CREATE_DASHBOARD_WIDGET = `
|
|
179
|
+
mutation CreateWidget($dashboardId: String!, $input: CreateInsightsWidgetInput!) {
|
|
180
|
+
createWidget(dashboardId: $dashboardId, input: $input) {
|
|
181
|
+
...InsightsWidget
|
|
182
|
+
__typename
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
fragment InsightsWidget on InsightsWidget {
|
|
187
|
+
id
|
|
188
|
+
title
|
|
189
|
+
description
|
|
190
|
+
type
|
|
191
|
+
questionId
|
|
192
|
+
noResultMessage
|
|
193
|
+
includeDeleted
|
|
194
|
+
config {
|
|
195
|
+
queries {
|
|
196
|
+
id
|
|
197
|
+
name
|
|
198
|
+
query
|
|
199
|
+
__typename
|
|
200
|
+
}
|
|
201
|
+
settings
|
|
202
|
+
postQueryFilters
|
|
203
|
+
disableQueryPolicyFilters
|
|
204
|
+
__typename
|
|
205
|
+
}
|
|
206
|
+
__typename
|
|
207
|
+
}
|
|
208
|
+
`;
|
|
209
|
+
export const PATCH_DASHBOARD = `
|
|
210
|
+
mutation PatchDashboard($input: PatchInsightsDashboardInput!) {
|
|
211
|
+
patchDashboard(input: $input) {
|
|
212
|
+
id
|
|
213
|
+
name
|
|
214
|
+
category
|
|
215
|
+
userId
|
|
216
|
+
supportedUseCase
|
|
217
|
+
isJ1ManagedBoard
|
|
218
|
+
published
|
|
219
|
+
publishedToUserIds
|
|
220
|
+
publishedToGroupIds
|
|
221
|
+
groupIds
|
|
222
|
+
userIds
|
|
223
|
+
scopeFilters
|
|
224
|
+
resourceGroupId
|
|
225
|
+
starred
|
|
226
|
+
_timeUpdated
|
|
227
|
+
_createdAt
|
|
228
|
+
prerequisites {
|
|
229
|
+
prerequisitesMet
|
|
230
|
+
preRequisitesGroupsFulfilled
|
|
231
|
+
preRequisitesGroupsRequired
|
|
232
|
+
}
|
|
233
|
+
parameters {
|
|
234
|
+
dashboardId
|
|
235
|
+
accountId
|
|
236
|
+
id
|
|
237
|
+
label
|
|
238
|
+
name
|
|
239
|
+
options
|
|
240
|
+
valueType
|
|
241
|
+
type
|
|
242
|
+
default
|
|
243
|
+
disableCustomInput
|
|
244
|
+
requireValue
|
|
245
|
+
}
|
|
246
|
+
widgets {
|
|
247
|
+
id
|
|
248
|
+
title
|
|
249
|
+
description
|
|
250
|
+
type
|
|
251
|
+
questionId
|
|
252
|
+
noResultMessage
|
|
253
|
+
includeDeleted
|
|
254
|
+
config {
|
|
255
|
+
queries {
|
|
256
|
+
id
|
|
257
|
+
name
|
|
258
|
+
query
|
|
259
|
+
}
|
|
260
|
+
settings
|
|
261
|
+
postQueryFilters
|
|
262
|
+
disableQueryPolicyFilters
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
layouts {
|
|
266
|
+
xs {
|
|
267
|
+
static
|
|
268
|
+
moved
|
|
269
|
+
w
|
|
270
|
+
h
|
|
271
|
+
x
|
|
272
|
+
y
|
|
273
|
+
i
|
|
274
|
+
}
|
|
275
|
+
sm {
|
|
276
|
+
static
|
|
277
|
+
moved
|
|
278
|
+
w
|
|
279
|
+
h
|
|
280
|
+
x
|
|
281
|
+
y
|
|
282
|
+
i
|
|
283
|
+
}
|
|
284
|
+
md {
|
|
285
|
+
static
|
|
286
|
+
moved
|
|
287
|
+
w
|
|
288
|
+
h
|
|
289
|
+
x
|
|
290
|
+
y
|
|
291
|
+
i
|
|
292
|
+
}
|
|
293
|
+
lg {
|
|
294
|
+
static
|
|
295
|
+
moved
|
|
296
|
+
w
|
|
297
|
+
h
|
|
298
|
+
x
|
|
299
|
+
y
|
|
300
|
+
i
|
|
301
|
+
}
|
|
302
|
+
xl {
|
|
303
|
+
static
|
|
304
|
+
moved
|
|
305
|
+
w
|
|
306
|
+
h
|
|
307
|
+
x
|
|
308
|
+
y
|
|
309
|
+
i
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
`;
|
|
315
|
+
//# sourceMappingURL=mutations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../../src/client/graphql/mutations.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0D1C,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwB1C,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B9C,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B9C,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;CAM1B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;CAO5B,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;CAO/B,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAAG;;;;;;;;;CAShD,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BtC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyG9B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const LIST_ALERT_INSTANCES = "\n query listAlertInstances($alertStatus: AlertStatus, $limit: Int, $cursor: String) {\n listAlertInstances(alertStatus: $alertStatus, limit: $limit, cursor: $cursor) {\n instances {\n ...AlertInstanceFragment\n __typename\n }\n pageInfo {\n endCursor\n hasNextPage\n __typename\n }\n __typename\n }\n }\n\n fragment AlertInstanceFragment on AlertInstance {\n accountId\n resourceGroupId\n createdOn\n dismissedOn\n endReason\n id\n lastEvaluationBeginOn\n lastEvaluationEndOn\n lastEvaluationResult {\n answerText\n evaluationEndOn\n outputs {\n name\n value\n __typename\n }\n rawDataDescriptors {\n name\n recordCount\n __typename\n }\n __typename\n }\n lastUpdatedOn\n level\n questionRuleInstance {\n id\n name\n description\n tags\n pollingInterval\n labels {\n labelName\n labelValue\n __typename\n }\n __typename\n }\n reportRuleInstance {\n name\n description\n __typename\n }\n ruleId\n ruleVersion\n status\n users\n __typename\n }\n";
|
|
2
|
+
export declare const LIST_RULE_INSTANCES = "\n query listRuleInstances($limit: Int, $cursor: String, $filters: ListRuleInstancesFilters) {\n listRuleInstances(limit: $limit, cursor: $cursor, filters: $filters) {\n questionInstances {\n ...RuleInstanceFields\n __typename\n }\n pageInfo {\n hasNextPage\n endCursor\n __typename\n }\n __typename\n }\n }\n\n fragment RuleInstanceFields on QuestionRuleInstance {\n id\n resourceGroupId\n accountId\n name\n description\n version\n lastEvaluationStartOn\n lastEvaluationEndOn\n evaluationStep\n specVersion\n notifyOnFailure\n triggerActionsOnNewEntitiesOnly\n ignorePreviousResults\n pollingInterval\n templates\n outputs\n labels {\n labelName\n labelValue\n __typename\n }\n question {\n queries {\n query\n name\n version\n includeDeleted\n __typename\n }\n __typename\n }\n questionId\n latest\n deleted\n type\n operations {\n when\n actions\n __typename\n }\n latestAlertId\n latestAlertIsActive\n state {\n actions\n __typename\n }\n tags\n remediationSteps\n __typename\n }\n";
|
|
3
|
+
export declare const GET_ACCOUNT_INFO = "\n query account {\n iamGetAccount {\n accountId\n accountSubdomain\n accountName\n accountOwner\n status\n accountType\n accountLogoUrl\n __typename\n }\n }\n";
|
|
4
|
+
export declare const GET_DASHBOARDS = "\n query GetDashboards {\n getDashboards(options: {includeAllJ1ManagedDashboards: true}) {\n id\n name\n userId\n category\n supportedUseCase\n prerequisites {\n prerequisitesMet\n preRequisitesGroupsFulfilled\n preRequisitesGroupsRequired\n __typename\n }\n isJ1ManagedBoard\n resourceGroupId\n starred\n _timeUpdated\n _createdAt\n __typename\n }\n }\n";
|
|
5
|
+
export declare const GET_DASHBOARD_DETAILS = "\n query solo_GetDashboard($dashboardId: String!) {\n getDashboard(dashboardId: $dashboardId) {\n ...InsightsDashboard\n __typename\n }\n }\n\n fragment InsightsDashboard on InsightsDashboard {\n id\n name\n category\n userId\n supportedUseCase\n isJ1ManagedBoard\n published\n publishedToUserIds\n publishedToGroupIds\n groupIds\n userIds\n scopeFilters\n resourceGroupId\n starred\n _timeUpdated\n _createdAt\n prerequisites {\n prerequisitesMet\n preRequisitesGroupsFulfilled\n preRequisitesGroupsRequired\n __typename\n }\n parameters {\n ...DashboardParameterFields\n __typename\n }\n widgets {\n ...InsightsWidget\n __typename\n }\n layouts {\n ...InsightsDashboardLayoutConfig\n __typename\n }\n __typename\n }\n\n fragment DashboardParameterFields on DashboardParameter {\n dashboardId\n accountId\n id\n label\n name\n options\n valueType\n type\n default\n disableCustomInput\n requireValue\n __typename\n }\n\n fragment InsightsWidget on InsightsWidget {\n id\n title\n description\n type\n questionId\n noResultMessage\n includeDeleted\n config {\n queries {\n id\n name\n query\n __typename\n }\n settings\n postQueryFilters\n disableQueryPolicyFilters\n __typename\n }\n __typename\n }\n\n fragment InsightsDashboardLayoutConfig on InsightsDashboardLayoutConfig {\n xs {\n ...InsightsDashboardLayoutItem\n __typename\n }\n sm {\n ...InsightsDashboardLayoutItem\n __typename\n }\n md {\n ...InsightsDashboardLayoutItem\n __typename\n }\n lg {\n ...InsightsDashboardLayoutItem\n __typename\n }\n xl {\n ...InsightsDashboardLayoutItem\n __typename\n }\n __typename\n }\n\n fragment InsightsDashboardLayoutItem on InsightsDashboardLayoutItem {\n static\n moved\n w\n h\n x\n y\n i\n __typename\n }\n";
|
|
6
|
+
export declare const GET_INTEGRATION_DEFINITIONS = "\n query IntegrationDefinitions($cursor: String, $includeConfig: Boolean = false) {\n integrationDefinitions(cursor: $cursor) {\n definitions {\n ...IntegrationDefinitionsValues\n __typename\n }\n pageInfo {\n endCursor\n __typename\n }\n __typename\n }\n }\n\n fragment IntegrationDefinitionsValues on IntegrationDefinition {\n id\n name\n type\n title\n displayMode\n oAuth {\n oAuthUrlGeneratorPath\n __typename\n }\n offsiteUrl\n offsiteButtonTitle\n offsiteStatusQuery\n integrationType\n integrationClass\n integrationCategory\n beta\n docsWebLink\n repoWebLink\n invocationPaused\n managedExecutionDisabled\n managedCreateDisabled\n managedDeleteDisabled\n integrationPlatformFeatures {\n supportsChildInstances\n supportsCollectors\n supportsIngestionSourcesConfig\n supportsAgentConfigurations\n __typename\n }\n ingestionSourcesConfig {\n id\n title\n description\n defaultsToDisabled\n childIngestionSourcesMetadata {\n id\n name\n __typename\n }\n cannotBeDisabled\n __typename\n }\n ingestionSourcesOverrides {\n enabled\n ingestionSourceId\n __typename\n }\n totalInstanceCount\n integrationJobStatusMetrics {\n count\n status\n __typename\n }\n icon\n provisioningType\n description\n customDefinitionType\n ...IntegrationDefinitionConfigFragment @include(if: $includeConfig)\n __typename\n }\n\n fragment IntegrationDefinitionConfigFragment on IntegrationDefinition {\n configFields {\n ...ConfigFieldsRecursive\n __typename\n }\n authSections {\n id\n description\n displayName\n configFields {\n ...ConfigFieldsRecursive\n __typename\n }\n verificationDisabled\n __typename\n }\n configSections {\n displayName\n configFields {\n ...ConfigFieldsRecursive\n __typename\n }\n __typename\n }\n __typename\n }\n\n fragment ConfigFieldsRecursive on ConfigField {\n ...ConfigFieldValues\n configFields {\n ...ConfigFieldValues\n configFields {\n ...ConfigFieldValues\n __typename\n }\n __typename\n }\n __typename\n }\n\n fragment ConfigFieldValues on ConfigField {\n key\n displayName\n description\n type\n format\n defaultValue\n helperText\n inputAdornment\n mask\n optional\n immutable\n readonly\n computed\n options {\n value\n description\n label\n webLink\n default\n __typename\n }\n __typename\n }\n";
|
|
7
|
+
export declare const GET_INTEGRATION_INSTANCES = "\n query IntegrationInstances($definitionId: String, $cursor: String, $limit: Int, $filter: ListIntegrationInstancesSearchFilter) {\n integrationInstancesV2(\n definitionId: $definitionId\n cursor: $cursor\n limit: $limit\n filter: $filter\n ) {\n instances {\n ...IntegrationInstanceLiteValues\n __typename\n }\n pageInfo {\n endCursor\n __typename\n }\n __typename\n }\n }\n\n fragment IntegrationInstanceLiteValues on IntegrationInstanceLite {\n id\n name\n accountId\n sourceIntegrationInstanceId\n pollingInterval\n pollingIntervalCronExpression {\n hour\n dayOfWeek\n __typename\n }\n integrationDefinitionId\n description\n config\n instanceRelationship\n resourceGroupId\n createdOn\n createdBy\n updatedOn\n updatedBy\n mostRecentJob {\n status\n hasSkippedSteps\n createDate\n __typename\n }\n __typename\n }\n";
|
|
8
|
+
export declare const GET_INTEGRATION_JOBS = "\n query IntegrationJobs($status: IntegrationJobStatus, $integrationInstanceId: String, $integrationDefinitionId: String, $integrationInstanceIds: [String], $cursor: String, $size: Int) {\n integrationJobs(\n status: $status\n integrationInstanceId: $integrationInstanceId\n integrationDefinitionId: $integrationDefinitionId\n integrationInstanceIds: $integrationInstanceIds\n cursor: $cursor\n size: $size\n ) {\n jobs {\n ...IntegrationJobValues\n __typename\n }\n pageInfo {\n endCursor\n __typename\n }\n __typename\n }\n }\n\n fragment IntegrationJobValues on IntegrationJob {\n id\n status\n integrationInstanceId\n createDate\n endDate\n hasSkippedSteps\n integrationInstance {\n id\n name\n __typename\n }\n integrationDefinition {\n id\n title\n integrationType\n __typename\n }\n __typename\n }\n";
|
|
9
|
+
export declare const GET_INTEGRATION_JOB = "\n query IntegrationJob($integrationJobId: ID!, $integrationInstanceId: String!) {\n integrationJob(\n id: $integrationJobId\n integrationInstanceId: $integrationInstanceId\n ) {\n ...IntegrationJobValues\n __typename\n }\n }\n\n fragment IntegrationJobValues on IntegrationJob {\n id\n status\n integrationInstanceId\n createDate\n endDate\n hasSkippedSteps\n integrationInstance {\n id\n name\n __typename\n }\n integrationDefinition {\n id\n title\n integrationType\n __typename\n }\n __typename\n }\n";
|
|
10
|
+
export declare const GET_INTEGRATION_EVENTS = "\n query ListEvents($jobId: String!, $integrationInstanceId: String!, $cursor: String, $size: Int) {\n integrationEvents(\n size: $size\n cursor: $cursor\n jobId: $jobId\n integrationInstanceId: $integrationInstanceId\n ) {\n events {\n ...IntegrationInstanceEventValues\n __typename\n }\n pageInfo {\n endCursor\n hasNextPage\n __typename\n }\n __typename\n }\n }\n\n fragment IntegrationInstanceEventValues on IntegrationEvent {\n id\n name\n description\n createDate\n jobId\n level\n eventCode\n __typename\n }\n";
|
|
11
|
+
export declare const LIST_RULE_EVALUATIONS = "\n query listCollectionResults($collectionType: CollectionType!, $collectionOwnerId: String!, $beginTimestamp: Long!, $endTimestamp: Long!, $limit: Int, $cursor: String, $tag: String) {\n listCollectionResults(\n collectionType: $collectionType\n collectionOwnerId: $collectionOwnerId\n beginTimestamp: $beginTimestamp\n endTimestamp: $endTimestamp\n limit: $limit\n cursor: $cursor\n tag: $tag\n ) {\n results {\n accountId\n collectionOwnerId\n collectionOwnerVersion\n collectionType\n outputs {\n name\n value\n __typename\n }\n rawDataDescriptors {\n name\n persistedResultType\n rawDataKey\n recordCount\n recordCreateCount\n recordDeleteCount\n recordUpdateCount\n __typename\n }\n tag\n timestamp\n __typename\n }\n pageInfo {\n endCursor\n hasNextPage\n __typename\n }\n __typename\n }\n }\n";
|
|
12
|
+
export declare const GET_RULE_EVALUATION_DETAILS = "\n query ruleEvaluationDetails($ruleEvaluationDetailsInput: RuleEvaluationDetailsInput!) {\n ruleEvaluationDetails(input: $ruleEvaluationDetailsInput) {\n accountRuleId\n startedOn\n question {\n totalDuration\n queries {\n status\n queryEvaluationDetails {\n name\n duration\n status\n error\n __typename\n }\n __typename\n }\n __typename\n }\n conditions {\n status\n condition\n __typename\n }\n actions {\n status\n actionEvaluationDetails {\n actionId\n action\n status\n duration\n finishedOn\n logs\n __typename\n }\n __typename\n }\n ruleEvaluationOrigin\n __typename\n }\n }\n";
|
|
13
|
+
export declare const GET_RAW_DATA_DOWNLOAD_URL = "\n query getRawDataDownloadUrl($rawDataKey: String!) {\n getRawDataDownloadUrl(rawDataKey: $rawDataKey)\n }\n";
|
|
14
|
+
export declare const QUERY_V1 = "\n query J1QL($query: String!, $variables: JSON, $cursor: String, $scopeFilters: [JSON!], $flags: QueryV1Flags) {\n queryV1(query: $query, variables: $variables, cursor: $cursor, scopeFilters: $scopeFilters, flags: $flags) {\n type\n data\n cursor\n }\n }\n";
|
|
15
|
+
//# sourceMappingURL=queries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/client/graphql/queries.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,mtCAkEhC,CAAC;AAEF,eAAO,MAAM,mBAAmB,kuCAmE/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,oNAa5B,CAAC;AAEF,eAAO,MAAM,cAAc,4cAsB1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,kjEAsHjC,CAAC;AAEF,eAAO,MAAM,2BAA2B,6sFA6IvC,CAAC;AAEF,eAAO,MAAM,yBAAyB,2+BAgDrC,CAAC;AAEF,eAAO,MAAM,oBAAoB,+8BA0ChC,CAAC;AAEF,eAAO,MAAM,mBAAmB,kmBA+B/B,CAAC;AAEF,eAAO,MAAM,sBAAsB,8nBA+BlC,CAAC;AAEF,eAAO,MAAM,qBAAqB,ijCA2CjC,CAAC;AAEF,eAAO,MAAM,2BAA2B,+2BA0CvC,CAAC;AAEF,eAAO,MAAM,yBAAyB,uHAIrC,CAAC;AAGF,eAAO,MAAM,QAAQ,6RAQpB,CAAC"}
|