2024-08-27 14:41:12 +05:30

3.5 KiB

title slug
Run the Domo Dashboard Connector Externally /connectors/dashboard/domo-dashboard/yaml

{% connectorDetailsHeader name="Domo" stage="PROD" platform="OpenMetadata" availableFeatures=["Dashboards", "Charts", "Owners"] unavailableFeatures=["Tags", "Datamodels", "Projects", "Lineage"] / %}

In this section, we provide guides and references to use the DomoDashboard connector.

Configure and schedule DomoDashboard metadata and profiler workflows from the OpenMetadata UI:

{% partial file="/v1.5/connectors/external-ingestion-deployment.md" /%}

Requirements

Note: For metadata ingestion, kindly make sure add atleast dashboard scopes to the clientId provided. Question related to scopes, click here.

Python Requirements

{% partial file="/v1.5/connectors/python-requirements.md" /%}

To run the DomoDashboard ingestion, you will need to install:

pip3 install "openmetadata-ingestion[domo]"

Metadata Ingestion

All connectors are defined as JSON Schemas. Here you can find the structure to create a connection to DomoDashboard.

In order to create and run a Metadata Ingestion workflow, we will follow the steps to create a YAML configuration able to connect to the source, process the Entities if needed, and reach the OpenMetadata server.

The workflow is modeled around the following JSON Schema

1. Define the YAML Config

This is a sample config for Domo-Dashboard:

{% codePreview %}

{% codeInfoContainer %}

Source Configuration - Service Connection

{% codeInfo srNumber=1 %}

Client ID: Client ID to Connect to DOMO Dashboard.

{% /codeInfo %}

{% codeInfo srNumber=2 %}

Secret Token: Secret Token to Connect DOMO Dashboard.

{% /codeInfo %}

{% codeInfo srNumber=3 %}

Access Token: Access to Connect to DOMO Dashboard.

{% /codeInfo %}

{% codeInfo srNumber=4 %}

API Host: API Host to Connect to DOMO Dashboard instance.

{% /codeInfo %}

{% codeInfo srNumber=5 %}

Instance Domain: URL to connect to your Domo instance UI. For example https://<your>.domo.com.

{% /codeInfo %}

{% partial file="/v1.5/connectors/yaml/dashboard/source-config-def.md" /%}

{% partial file="/v1.5/connectors/yaml/ingestion-sink-def.md" /%}

{% partial file="/v1.5/connectors/yaml/workflow-config-def.md" /%}

{% /codeInfoContainer %}

{% codeBlock fileName="filename.yaml" %}

source:
  type: domodashboard
  serviceName: local_domodashboard
  serviceConnection:
    config:
      type: DomoDashboard
      clientId: clientid
      secretToken: secret-token
      accessToken: access-token
      apiHost: api.domo.com
      instanceDomain: https://<your>.domo.com

{% partial file="/v1.5/connectors/yaml/dashboard/source-config.md" /%}

{% partial file="/v1.5/connectors/yaml/ingestion-sink.md" /%}

{% partial file="/v1.5/connectors/yaml/workflow-config.md" /%}

{% /codeBlock %}

{% /codePreview %}

{% partial file="/v1.5/connectors/yaml/ingestion-cli.md" /%}