DBaaS Grafana

Grafana, the open-source software that lets you query and visualize metrics, logs and traces from any storage source.

Read more

reveal-dbaas-grafana-user-password

Reveal the secrets of a DBaaS Grafana user

GET /dbaas-grafana/{service-name}/user/{username}/password/reveal

null

Path parameters

NameInDescription
service-namepath
usernamepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
passwordstringGrafana password
usernamestringGrafana username
Example output
{
  "password": "string",
  "username": "string"
}

SDK reference for reveal-dbaas-grafana-user-password: golang | Python | Java

CLI: exo api reveal-dbaas-grafana-user-password

reset-dbaas-grafana-user-password

Reset the credentials of a DBaaS Grafana user

PUT /dbaas-grafana/{service-name}/user/{username}/password/reset

If no password is provided one will be generated automatically.

Path parameters

NameInDescription
service-namepath
usernamepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
passwordstringnoNew password
Example
{
  "password": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for reset-dbaas-grafana-user-password: golang | Python | Java

CLI: exo api reset-dbaas-grafana-user-password

create-dbaas-service-grafana

POST /dbaas-grafana/{name}

Create a DBaaS Grafana service

Path parameters

NameInDescription
namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
planstringyesSubscription plan
fork-from-servicestringnoService to fork from
grafana-settingsobjectnoGrafana specific settings schema details
ip-filterarray[string]noAllowed CIDR address blocks for incoming connections
maintenanceobjectnoAutomatic maintenance settings schema details
termination-protectionbooleannoService is protected against termination and powering off
Example
{
  "fork-from-service": "string",
  "grafana-settings": {
    "alerting_enabled": true,
    "alerting_error_or_timeout": "alerting",
    "alerting_max_annotations_to_keep": 0,
    "alerting_nodata_or_nullvalues": "alerting",
    "allow_embedding": true,
    "auth_azuread": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_groups": [
        "c0ffee15-c01d-0000-1111-012345abcdef"
      ],
      "auth_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/token"
    },
    "auth_basic_enabled": true,
    "auth_generic_oauth": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_organizations": [
        "myorg"
      ],
      "api_url": "https://yourprovider.com/api",
      "auth_url": "https://yourprovider.com/oauth/authorize",
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "name": "My authentication",
      "scopes": [
        "email"
      ],
      "token_url": "https://yourprovider.com/oauth/token"
    },
    "auth_github": {
      "allow_sign_up": true,
      "allowed_organizations": [
        "aiven"
      ],
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "skip_org_role_sync": true,
      "team_ids": [
        0
      ]
    },
    "auth_gitlab": {
      "allow_sign_up": true,
      "allowed_groups": [
        "aiven/developers"
      ],
      "api_url": "https://gitlab.com/api/v4",
      "auth_url": "https://gitlab.com/oauth/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://gitlab.com/oauth/token"
    },
    "auth_google": {
      "allow_sign_up": true,
      "allowed_domains": [
        "example.com"
      ],
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b"
    },
    "cookie_samesite": "lax",
    "custom_domain": "grafana.example.org",
    "dashboard_previews_enabled": true,
    "dashboards_min_refresh_interval": "5s",
    "dashboards_versions_to_keep": 0,
    "dataproxy_send_user_header": true,
    "dataproxy_timeout": 0,
    "date_formats": {
      "default_timezone": "Europe/Helsinki",
      "full_date": "YYYY MM DD",
      "interval_day": "MM/DD",
      "interval_hour": "MM/DD HH:mm",
      "interval_minute": "HH:mm",
      "interval_month": "YYYY-MM",
      "interval_second": "HH:mm:ss",
      "interval_year": "YYYY"
    },
    "disable_gravatar": true,
    "editors_can_admin": true,
    "google_analytics_ua_id": "UA-123456-4",
    "metrics_enabled": true,
    "oauth_allow_insecure_email_lookup": true,
    "service_log": true,
    "smtp_server": {
      "from_address": "yourgrafanauser@yourdomain.example.com",
      "from_name": "Company Grafana",
      "host": "smtp.example.com",
      "password": "ein0eemeev5eeth3Ahfu",
      "port": 0,
      "skip_verify": true,
      "starttls_policy": "OpportunisticStartTLS",
      "username": "smtpuser"
    },
    "unified_alerting_enabled": true,
    "user_auto_assign_org": true,
    "user_auto_assign_org_role": "Viewer",
    "viewers_can_edit": true,
    "wal": true
  },
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "plan": "string",
  "termination-protection": true
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-service-grafana: golang | Python | Java

CLI: exo api create-dbaas-service-grafana

get-dbaas-service-grafana

Get a DBaaS Grafana service

GET /dbaas-grafana/{name}

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
backupsarray[object]List of backups for the service schema details
componentsarray[object]Service component information objects schema details
connection-infoobjectGrafana connection information properties schema details
created-atstringService creation timestamp (ISO 8601)
descriptionstringDbaaS service description
disk-sizeintegerTODO UNIT disk space for data storage
grafana-settingsobjectGrafana specific settings schema details
integrationsarray[object]Service integrations schema details
ip-filterarray[string]Allowed CIDR address blocks for incoming connections
maintenanceobjectAutomatic maintenance settings schema details
namestringService name
node-countintegerNumber of service nodes in the active plan
node-cpu-countintegerNumber of CPUs for each node
node-memoryintegerTODO UNIT of memory for each node
node-statesarray[object]State of individual service nodes schema details
notificationsarray[object]Service notifications schema details
planstringSubscription plan
prometheus-uriobjectPrometheus integration URI schema details
statestringState of the service

Allowed values: running, rebuilding, rebalancing, poweroff.
termination-protectionbooleanService is protected against termination and powering off
typestringService type code
updated-atstringService last update timestamp (ISO 8601)
uristringURI for connecting to the service (may be absent)
uri-paramsobjectservice_uri parameterized into key-value pairs
usersarray[object]List of service users schema details
versionstringGrafana version
zonestringThe zone where the service is running
Example output
{
  "backups": [
    {
      "backup-name": "string",
      "backup-time": "2024-01-01T12:00:00Z",
      "data-size": 0
    }
  ],
  "components": [
    {
      "component": "string",
      "host": "string",
      "port": 0,
      "route": "dynamic",
      "usage": "primary"
    }
  ],
  "connection-info": {
    "password": "string",
    "uri": "string",
    "username": "string"
  },
  "created-at": "2024-01-01T12:00:00Z",
  "description": "string",
  "disk-size": 0,
  "grafana-settings": {
    "alerting_enabled": true,
    "alerting_error_or_timeout": "alerting",
    "alerting_max_annotations_to_keep": 0,
    "alerting_nodata_or_nullvalues": "alerting",
    "allow_embedding": true,
    "auth_azuread": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_groups": [
        "c0ffee15-c01d-0000-1111-012345abcdef"
      ],
      "auth_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/token"
    },
    "auth_basic_enabled": true,
    "auth_generic_oauth": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_organizations": [
        "myorg"
      ],
      "api_url": "https://yourprovider.com/api",
      "auth_url": "https://yourprovider.com/oauth/authorize",
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "name": "My authentication",
      "scopes": [
        "email"
      ],
      "token_url": "https://yourprovider.com/oauth/token"
    },
    "auth_github": {
      "allow_sign_up": true,
      "allowed_organizations": [
        "aiven"
      ],
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "skip_org_role_sync": true,
      "team_ids": [
        0
      ]
    },
    "auth_gitlab": {
      "allow_sign_up": true,
      "allowed_groups": [
        "aiven/developers"
      ],
      "api_url": "https://gitlab.com/api/v4",
      "auth_url": "https://gitlab.com/oauth/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://gitlab.com/oauth/token"
    },
    "auth_google": {
      "allow_sign_up": true,
      "allowed_domains": [
        "example.com"
      ],
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b"
    },
    "cookie_samesite": "lax",
    "custom_domain": "grafana.example.org",
    "dashboard_previews_enabled": true,
    "dashboards_min_refresh_interval": "5s",
    "dashboards_versions_to_keep": 0,
    "dataproxy_send_user_header": true,
    "dataproxy_timeout": 0,
    "date_formats": {
      "default_timezone": "Europe/Helsinki",
      "full_date": "YYYY MM DD",
      "interval_day": "MM/DD",
      "interval_hour": "MM/DD HH:mm",
      "interval_minute": "HH:mm",
      "interval_month": "YYYY-MM",
      "interval_second": "HH:mm:ss",
      "interval_year": "YYYY"
    },
    "disable_gravatar": true,
    "editors_can_admin": true,
    "google_analytics_ua_id": "UA-123456-4",
    "metrics_enabled": true,
    "oauth_allow_insecure_email_lookup": true,
    "service_log": true,
    "smtp_server": {
      "from_address": "yourgrafanauser@yourdomain.example.com",
      "from_name": "Company Grafana",
      "host": "smtp.example.com",
      "password": "ein0eemeev5eeth3Ahfu",
      "port": 0,
      "skip_verify": true,
      "starttls_policy": "OpportunisticStartTLS",
      "username": "smtpuser"
    },
    "unified_alerting_enabled": true,
    "user_auto_assign_org": true,
    "user_auto_assign_org_role": "Viewer",
    "viewers_can_edit": true,
    "wal": true
  },
  "integrations": [
    {
      "description": "string",
      "dest": "string",
      "id": "string",
      "is-active": true,
      "is-enabled": true,
      "settings": {},
      "source": "string",
      "status": "string",
      "type": "string"
    }
  ],
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string",
    "updates": [
      {
        "deadline": "2024-01-01T12:00:00Z",
        "description": "string",
        "start-after": "2024-01-01T12:00:00Z",
        "start-at": "2024-01-01T12:00:00Z"
      }
    ]
  },
  "name": "string",
  "node-count": 0,
  "node-cpu-count": 0,
  "node-memory": 0,
  "node-states": [
    {
      "name": "string",
      "progress-updates": [
        {
          "completed": true,
          "current": 0,
          "max": 0,
          "min": 0,
          "phase": "stream",
          "unit": "string"
        }
      ],
      "role": "standby",
      "state": "leaving"
    }
  ],
  "notifications": [
    {
      "level": "warning",
      "message": "string",
      "metadata": {},
      "type": "service_powered_off_removal"
    }
  ],
  "plan": "string",
  "prometheus-uri": {
    "host": "string",
    "port": 0
  },
  "state": "running",
  "termination-protection": true,
  "type": "string",
  "updated-at": "2024-01-01T12:00:00Z",
  "uri": "string",
  "uri-params": {},
  "users": [
    {
      "password": "string",
      "type": "string",
      "username": "string"
    }
  ],
  "version": "string",
  "zone": "string"
}

SDK reference for get-dbaas-service-grafana: golang | Python | Java

CLI: exo api get-dbaas-service-grafana

update-dbaas-service-grafana

Update a DBaaS Grafana service

PUT /dbaas-grafana/{name}

null

Path parameters

NameInDescription
namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
grafana-settingsobjectnoGrafana specific settings schema details
ip-filterarray[string]noAllowed CIDR address blocks for incoming connections
maintenanceobjectnoAutomatic maintenance settings schema details
planstringnoSubscription plan
termination-protectionbooleannoService is protected against termination and powering off
Example
{
  "grafana-settings": {
    "alerting_enabled": true,
    "alerting_error_or_timeout": "alerting",
    "alerting_max_annotations_to_keep": 0,
    "alerting_nodata_or_nullvalues": "alerting",
    "allow_embedding": true,
    "auth_azuread": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_groups": [
        "c0ffee15-c01d-0000-1111-012345abcdef"
      ],
      "auth_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://login.microsoftonline.com/\u003cAZURE_TENANT_ID\u003e/oauth2/v2.0/token"
    },
    "auth_basic_enabled": true,
    "auth_generic_oauth": {
      "allow_sign_up": true,
      "allowed_domains": [
        "mycompany.com"
      ],
      "allowed_organizations": [
        "myorg"
      ],
      "api_url": "https://yourprovider.com/api",
      "auth_url": "https://yourprovider.com/oauth/authorize",
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "name": "My authentication",
      "scopes": [
        "email"
      ],
      "token_url": "https://yourprovider.com/oauth/token"
    },
    "auth_github": {
      "allow_sign_up": true,
      "allowed_organizations": [
        "aiven"
      ],
      "auto_login": true,
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "skip_org_role_sync": true,
      "team_ids": [
        0
      ]
    },
    "auth_gitlab": {
      "allow_sign_up": true,
      "allowed_groups": [
        "aiven/developers"
      ],
      "api_url": "https://gitlab.com/api/v4",
      "auth_url": "https://gitlab.com/oauth/authorize",
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b",
      "token_url": "https://gitlab.com/oauth/token"
    },
    "auth_google": {
      "allow_sign_up": true,
      "allowed_domains": [
        "example.com"
      ],
      "client_id": "b1ba0bf54a4c2c0a1c29",
      "client_secret": "bfa6gea4f129076761dcba8ce5e1e406bd83af7b"
    },
    "cookie_samesite": "lax",
    "custom_domain": "grafana.example.org",
    "dashboard_previews_enabled": true,
    "dashboards_min_refresh_interval": "5s",
    "dashboards_versions_to_keep": 0,
    "dataproxy_send_user_header": true,
    "dataproxy_timeout": 0,
    "date_formats": {
      "default_timezone": "Europe/Helsinki",
      "full_date": "YYYY MM DD",
      "interval_day": "MM/DD",
      "interval_hour": "MM/DD HH:mm",
      "interval_minute": "HH:mm",
      "interval_month": "YYYY-MM",
      "interval_second": "HH:mm:ss",
      "interval_year": "YYYY"
    },
    "disable_gravatar": true,
    "editors_can_admin": true,
    "google_analytics_ua_id": "UA-123456-4",
    "metrics_enabled": true,
    "oauth_allow_insecure_email_lookup": true,
    "service_log": true,
    "smtp_server": {
      "from_address": "yourgrafanauser@yourdomain.example.com",
      "from_name": "Company Grafana",
      "host": "smtp.example.com",
      "password": "ein0eemeev5eeth3Ahfu",
      "port": 0,
      "skip_verify": true,
      "starttls_policy": "OpportunisticStartTLS",
      "username": "smtpuser"
    },
    "unified_alerting_enabled": true,
    "user_auto_assign_org": true,
    "user_auto_assign_org_role": "Viewer",
    "viewers_can_edit": true,
    "wal": true
  },
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "plan": "string",
  "termination-protection": true
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for update-dbaas-service-grafana: golang | Python | Java

CLI: exo api update-dbaas-service-grafana

delete-dbaas-service-grafana

Delete a Grafana service

DELETE /dbaas-grafana/{name}

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-service-grafana: golang | Python | Java

CLI: exo api delete-dbaas-service-grafana


Other Operations

start-dbaas-grafana-maintenance

Initiate Grafana maintenance update

PUT /dbaas-grafana/{name}/maintenance/start

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for start-dbaas-grafana-maintenance: golang | Python | Java

CLI: exo api start-dbaas-grafana-maintenance

get-dbaas-settings-grafana

Get DBaaS Grafana settings

GET /dbaas-settings-grafana

Get DBaaS Grafana settings

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
settingsobjectschema details
Example output
{
  "settings": {
    "grafana": {
      "additionalProperties": true,
      "properties": {},
      "title": "string",
      "type": "string"
    }
  }
}

SDK reference for get-dbaas-settings-grafana: golang | Python | Java

CLI: exo api get-dbaas-settings-grafana

Last updated on