Skip to content

Commit

Permalink
docs(providers): Added documentation for missing providers (#2167)
Browse files Browse the repository at this point in the history
Signed-off-by: Matvey Kukuy <[email protected]>
Signed-off-by: rishisulakhe <[email protected]>
Co-authored-by: Tal <[email protected]>
Co-authored-by: Matvey Kukuy <[email protected]>
  • Loading branch information
3 people authored Oct 14, 2024
1 parent 8e0ab8b commit dfb22f4
Show file tree
Hide file tree
Showing 16 changed files with 781 additions and 95 deletions.
169 changes: 91 additions & 78 deletions docs/mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,84 +107,97 @@
{
"group": "Supported Providers",
"pages": [
"providers/documentation/aks-provider",
"providers/documentation/appdynamics-provider",
"providers/documentation/axiom-provider",
"providers/documentation/azuremonitoring-provider",
"providers/documentation/centreon-provider",
"providers/documentation/clickhouse-provider",
"providers/documentation/cloudwatch-provider",
"providers/documentation/console-provider",
"providers/documentation/coralogix-provider",
"providers/documentation/datadog-provider",
"providers/documentation/discord-provider",
"providers/documentation/elastic-provider",
"providers/documentation/gcpmonitoring-provider",
"providers/documentation/github_workflows_provider",
"providers/documentation/gitlab-provider",
"providers/documentation/gitlabpipelines-provider",
"providers/documentation/google_chat-provider",
"providers/documentation/grafana-provider",
"providers/documentation/grafana_incident-provider",
"providers/documentation/grafana_oncall-provider",
"providers/documentation/http-provider",
"providers/documentation/ilert-provider",
"providers/documentation/incidentio-provider",
"providers/documentation/incidentmanager-provider",
"providers/documentation/jira-provider",
"providers/documentation/jira-on-prem-provider",
"providers/documentation/kibana-provider",
"providers/documentation/kubernetes-provider",
"providers/documentation/linear_provider",
"providers/documentation/linearb-provider",
"providers/documentation/mailchimp-provider",
"providers/documentation/mattermost-provider",
"providers/documentation/microsoft-planner-provider",
"providers/documentation/mock-provider",
"providers/documentation/mongodb-provider",
"providers/documentation/mysql-provider",
"providers/documentation/mailgun-provider",
"providers/documentation/netdata-provider",
"providers/documentation/new-relic-provider",
"providers/documentation/ntfy-provider",
"providers/documentation/openobserve-provider",
"providers/documentation/openshift-provider",
"providers/documentation/opsgenie-provider",
"providers/documentation/pagerduty-provider",
"providers/documentation/pagertree-provider",
"providers/documentation/pingdom-provider",
"providers/documentation/planner-provider",
"providers/documentation/postgresql-provider",
"providers/documentation/pushover-provider",
"providers/documentation/quickchart-provider",
"providers/documentation/redmine-provider",
"providers/documentation/resend-provider",
"providers/documentation/rollbar-provider",
"providers/documentation/sendgrid-provider",
"providers/documentation/sentry-provider",
"providers/documentation/signalfx-provider",
"providers/documentation/signl4-provider",
"providers/documentation/site24x7-provider",
"providers/documentation/slack-provider",
"providers/documentation/snowflake-provider",
"providers/documentation/smtp-provider",
"providers/documentation/splunk-provider",
"providers/documentation/squadcast-provider",
"providers/documentation/ssh-provider",
"providers/documentation/statuscake-provider",
"providers/documentation/sumologic-provider",
"providers/documentation/teams-provider",
"providers/documentation/telegram-provider",
"providers/documentation/template",
"providers/documentation/trello-provider",
"providers/documentation/twilio-provider",
"providers/documentation/uptimekuma-provider",
"providers/documentation/victoriametrics-provider",
"providers/documentation/webhook-provider",
"providers/documentation/websocket-provider",
"providers/documentation/zabbix-provider",
"providers/documentation/zenduty-provider"
]
"providers/documentation/aks-provider",
"providers/documentation/appdynamics-provider",
"providers/documentation/auth0-provider",
"providers/documentation/axiom-provider",
"providers/documentation/azuremonitoring-provider",
"providers/documentation/bash-provider",
"providers/documentation/bigquery-provider",
"providers/documentation/centreon-provider",
"providers/documentation/clickhouse-provider",
"providers/documentation/cloudwatch-provider",
"providers/documentation/console-provider",
"providers/documentation/coralogix-provider",
"providers/documentation/datadog-provider",
"providers/documentation/discord-provider",
"providers/documentation/dynatrace-provider",
"providers/documentation/elastic-provider",
"providers/documentation/gcpmonitoring-provider",
"providers/documentation/github-provider",
"providers/documentation/github_workflows_provider",
"providers/documentation/gitlab-provider",
"providers/documentation/gitlabpipelines-provider",
"providers/documentation/gke-provider",
"providers/documentation/google_chat-provider",
"providers/documentation/grafana-provider",
"providers/documentation/grafana_incident-provider",
"providers/documentation/grafana_oncall-provider",
"providers/documentation/http-provider",
"providers/documentation/ilert-provider",
"providers/documentation/incidentio-provider",
"providers/documentation/incidentmanager-provider",
"providers/documentation/jira-on-prem-provider",
"providers/documentation/jira-provider",
"providers/documentation/kafka-provider",
"providers/documentation/keep-provider",
"providers/documentation/kibana-provider",
"providers/documentation/kubernetes-provider",
"providers/documentation/linear_provider",
"providers/documentation/linearb-provider",
"providers/documentation/mailchimp-provider",
"providers/documentation/mailgun-provider",
"providers/documentation/mattermost-provider",
"providers/documentation/microsoft-planner-provider",
"providers/documentation/mock-provider",
"providers/documentation/mongodb-provider",
"providers/documentation/mysql-provider",
"providers/documentation/netdata-provider",
"providers/documentation/new-relic-provider",
"providers/documentation/ntfy-provider",
"providers/documentation/openobserve-provider",
"providers/documentation/openshift-provider",
"providers/documentation/opsgenie-provider",
"providers/documentation/pagerduty-provider",
"providers/documentation/pagertree-provider",
"providers/documentation/parseable-provider",
"providers/documentation/pingdom-provider",
"providers/documentation/planner-provider",
"providers/documentation/postgresql-provider",
"providers/documentation/prometheus-provider",
"providers/documentation/pushover-provider",
"providers/documentation/python-provider",
"providers/documentation/quickchart-provider",
"providers/documentation/redmine-provider",
"providers/documentation/resend-provider",
"providers/documentation/rollbar-provider",
"providers/documentation/sendgrid-provider",
"providers/documentation/sentry-provider",
"providers/documentation/service-now-provider",
"providers/documentation/signalfx-provider",
"providers/documentation/signl4-provider",
"providers/documentation/site24x7-provider",
"providers/documentation/slack-provider",
"providers/documentation/smtp-provider",
"providers/documentation/snowflake-provider",
"providers/documentation/splunk-provider",
"providers/documentation/squadcast-provider",
"providers/documentation/ssh-provider",
"providers/documentation/statuscake-provider",
"providers/documentation/sumologic-provider",
"providers/documentation/teams-provider",
"providers/documentation/telegram-provider",
"providers/documentation/template",
"providers/documentation/trello-provider",
"providers/documentation/twilio-provider",
"providers/documentation/uptimekuma-provider",
"providers/documentation/victoriametrics-provider",
"providers/documentation/webhook-provider",
"providers/documentation/websocket-provider",
"providers/documentation/zabbix-provider",
"providers/documentation/zenduty-provider"
]

}
]
},
Expand Down
11 changes: 6 additions & 5 deletions docs/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

56 changes: 56 additions & 0 deletions docs/providers/documentation/auth0-provider.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
title: "Auth0"
sidebarTitle: "Auth0 Provider"
description: "Auth0 provider allows interaction with Auth0 APIs for authentication and user management."
---

## Inputs

- `client_id`: str : The client ID for the Auth0 application.
- `client_secret`: str : The client secret for the Auth0 application.
- `audience`: str : The audience for the API authorization request.
- `grant_type`: str : The type of authorization grant requested (e.g., `client_credentials`).

## Outputs

- `access_token`: The access token issued by Auth0 for authenticated requests.
- `expires_in`: The time in seconds before the access token expires.
- `token_type`: The type of token, typically `Bearer`.

## Authentication Parameters

To authenticate with Auth0, the following parameters are needed:
- **client_id**: The unique identifier for your Auth0 application.
- **client_secret**: A secret associated with your application, used for secure communication.
- **audience**: Defines the API resources you're trying to access.

These parameters can be retrieved from your Auth0 dashboard under the application's settings.

## Connecting with the Provider

The Auth0 provider connects to both the **Authentication API** and the **Management API**, enabling functionality such as token-based authentication and user management. Depending on your needs, you can:
- Use the **Authentication API** to obtain access tokens, manage user profiles, or handle multi-factor authentication.
- Use the **Management API** to automate the configuration of your Auth0 environment, register applications, manage users, and more.

## Example of usage

```yaml
workflow:
id: auth0-example
description: Auth0 example
triggers:
- type: manual
actions:
- name: auth0
provider:
type: auth0
config: "{{ providers.auth0config }}"
with:
client_id: "{{ secrets.auth0_client_id }}"
client_secret: "{{ secrets.auth0_client_secret }}"
audience: "https://api.example.com"
grant_type: "client_credentials"

##Usefull Links
-[Auth0 API Documentation](https://auth0.com/docs/api)
-[Auth0 as an authentication method for keep](https://docs.keephq.dev/deployment/authentication/auth0-auth)
47 changes: 47 additions & 0 deletions docs/providers/documentation/bash-provider.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: "Bash"
sidebarTitle: "Bash Provider"
description: "Bash provider allows executing Bash commands in a workflow, with a limitation for cloud execution."
---

## Inputs

- `script`: str : The Bash script or command to execute.

## Outputs

- `stdout`: The standard output from the executed Bash command.
- `stderr`: The standard error output from the executed Bash command (if any).
- `exit_code`: The exit code of the Bash command.

## Authentication Parameters

_None required for local execution of Bash scripts._

## Connecting with the Provider

The Bash provider allows you to run Bash commands or scripts in your workflow. You can pass in any valid Bash command, and it will be executed in a local environment.

### **Cloud Limitation**
This provider is disabled for cloud environments and can only be used in local or self-hosted environments.

## Example of usage

```yaml
workflow:
id: bash-example
description: Bash example
triggers:
- type: manual
actions:
- name: bash
provider:
type: bash
config: "{{ providers.bashtest }}"
with:
script: |
echo "Hello, World!"
ls -l
## Usefull Links
-[Bash Documentation](https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html)
47 changes: 47 additions & 0 deletions docs/providers/documentation/bigquery-provider.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: "BigQuery"
sidebarTitle: "BigQuery Provider"
description: "BigQuery provider allows interaction with Google BigQuery for querying and managing datasets."
---

## Inputs

- `query`: str : The SQL query to execute against the BigQuery dataset
- `dataset`: str : The name of the dataset in BigQuery to use for the query
- `project_id`: str : The Google Cloud project ID where the BigQuery dataset is located

## Outputs

- `result`: The results of the executed query, returned as a list of dictionaries.

## Authentication Parameters

- `service_account_key`: JSON key file for the Google Cloud service account with permissions to access BigQuery.

## Connecting with the Provider

1. Create a Google Cloud project and enable the BigQuery API.
2. Create a service account in your Google Cloud project and download the JSON key file.
3. Share the necessary datasets with the service account.
4. Configure your provider using the `service_account_key`, `project_id`, and `dataset`.

## Example of usage

```yaml
workflow:
id: bigquery-example
description: BigQuery example
triggers:
- type: manual
actions:
- name: bigquery
provider:
type: bigquery
config: "{{ providers.bigquerytest }}"
with:
query: "SELECT * FROM `my_dataset.my_table` WHERE condition = 'value'"
dataset: "my_dataset"
project_id: "my_project_id"

##Usefull Links
-[BigQuery Documentation](https://cloud.google.com/bigquery/docs)
48 changes: 48 additions & 0 deletions docs/providers/documentation/dynatrace-provider.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: "Dynatrace"
sidebarTitle: "Dynatrace Provider"
description: "Dynatrace provider allows integration with Dynatrace for monitoring, alerting, and collecting metrics."
---

## Inputs

- `metric_key`: str : The key of the Dynatrace metric to query.
- `time_range`: str (optional) : Time range for the query (e.g., `last30mins`, `last24hours`, etc.)
- `filters`: dict (optional) : Filters to apply to the Dynatrace query (e.g., entityId, host).

## Outputs

- `result`: The result of the Dynatrace metric query, returned in a JSON format.

## Authentication Parameters

- `api_token`: Dynatrace API token required to authenticate requests.
- `dynatrace_url`: URL of the Dynatrace environment (e.g., `https://<your-environment-id>.live.dynatrace.com`).

## Connecting with the Provider

1. Log in to your Dynatrace account and navigate to "Settings" → "Integration" → "Dynatrace API."
2. Generate an API token with appropriate permissions (e.g., Read metrics).
3. Get your environment's Dynatrace URL.
4. Configure the Dynatrace provider using the API token and Dynatrace URL.

## Example of usage

```yaml
workflow:
id: dynatrace-example
description: Dynatrace example
triggers:
- type: manual
actions:
- name: dynatrace
provider:
type: dynatrace
config: "{{ providers.dynatracetest }}"
with:
metric_key: "builtin:host.cpu.usage"
time_range: "last24hours"
filters:
entityId: "HOST-12345"
## Useful Links
-[Dynatrace API Documentation](https://docs.dynatrace.com/docs/dynatrace-api)
Loading

0 comments on commit dfb22f4

Please sign in to comment.