{
  "name": "ess_billing",
  "title": "Elasticsearch Service Billing",
  "version": "1.9.1",
  "release": "ga",
  "source": {
    "license": "Elastic-2.0"
  },
  "description": "Collect billing metrics for your Elastic Cloud organization, including Hosted, Serverless, and cloud connected usage",
  "type": "integration",
  "download": "/epr/ess_billing/ess_billing-1.9.1.zip",
  "path": "/package/ess_billing/1.9.1",
  "icons": [
    {
      "src": "/img/sample-logo.svg",
      "path": "/package/ess_billing/1.9.1/img/sample-logo.svg",
      "title": "Sample logo",
      "size": "32x32",
      "type": "image/svg+xml"
    }
  ],
  "conditions": {
    "kibana": {
      "version": "^9.3.0"
    },
    "elastic": {
      "subscription": "basic"
    }
  },
  "owner": {
    "type": "elastic",
    "github": "elastic/obs-infraobs-integrations"
  },
  "categories": [
    "cloud"
  ],
  "signature_path": "/epr/ess_billing/ess_billing-1.9.1.zip.sig",
  "format_version": "3.3.2",
  "readme": "/package/ess_billing/1.9.1/docs/README.md",
  "license": "basic",
  "screenshots": [
    {
      "src": "/img/ess_billing-billingdashboard.png",
      "path": "/package/ess_billing/1.9.1/img/ess_billing-billingdashboard.png",
      "title": "ESS Billing Dashboard",
      "size": "3372×5458",
      "type": "image/png"
    },
    {
      "src": "/img/ess_billing-creditsdashboard.png",
      "path": "/package/ess_billing/1.9.1/img/ess_billing-creditsdashboard.png",
      "title": "ESS Credits Dashboard",
      "size": "3356×1652",
      "type": "image/png"
    }
  ],
  "assets": [
    "/package/ess_billing/1.9.1/LICENSE.txt",
    "/package/ess_billing/1.9.1/changelog.yml",
    "/package/ess_billing/1.9.1/manifest.yml",
    "/package/ess_billing/1.9.1/validation.yml",
    "/package/ess_billing/1.9.1/docs/README.md",
    "/package/ess_billing/1.9.1/img/ess_billing-billingdashboard.png",
    "/package/ess_billing/1.9.1/img/ess_billing-creditsdashboard.png",
    "/package/ess_billing/1.9.1/img/sample-logo.svg",
    "/package/ess_billing/1.9.1/data_stream/billing/manifest.yml",
    "/package/ess_billing/1.9.1/data_stream/billing/sample_event.json",
    "/package/ess_billing/1.9.1/data_stream/credits/manifest.yml",
    "/package/ess_billing/1.9.1/data_stream/credits/sample_event.json",
    "/package/ess_billing/1.9.1/kibana/dashboard/ess_billing-billingdashboard.json",
    "/package/ess_billing/1.9.1/kibana/dashboard/ess_billing-creditsdashboard.json",
    "/package/ess_billing/1.9.1/data_stream/billing/fields/base-fields.yml",
    "/package/ess_billing/1.9.1/data_stream/billing/fields/fields.yml",
    "/package/ess_billing/1.9.1/data_stream/credits/fields/base-fields.yml",
    "/package/ess_billing/1.9.1/data_stream/credits/fields/fields.yml",
    "/package/ess_billing/1.9.1/data_stream/billing/agent/stream/cel.yml.hbs",
    "/package/ess_billing/1.9.1/data_stream/billing/elasticsearch/ingest_pipeline/default.yml",
    "/package/ess_billing/1.9.1/data_stream/credits/agent/stream/cel.yml.hbs",
    "/package/ess_billing/1.9.1/data_stream/credits/elasticsearch/ingest_pipeline/default.yml"
  ],
  "policy_templates": [
    {
      "name": "ESS Billing",
      "title": "Elasticsearch Service Billing Metrics",
      "description": "Collect organization-level billing metrics from the Elastic Cloud Billing API for Hosted, Serverless, and cloud connected usage.",
      "inputs": [
        {
          "type": "cel",
          "vars": [
            {
              "name": "organization_id",
              "type": "integer",
              "title": "Organization ID",
              "description": "ID of your Elastic Cloud organization. You can find this on your organization page in the Elastic Cloud Console. Billing data includes all Hosted deployments, Serverless projects, and cloud connected usage in this organization.",
              "multi": false,
              "required": true,
              "show_user": true
            },
            {
              "name": "api_key",
              "type": "password",
              "title": "API Key",
              "description": "API key for the Elastic Cloud Billing API with the Billing admin role. Create this key in the Elastic Cloud Console.",
              "multi": false,
              "required": true,
              "show_user": true
            },
            {
              "name": "url",
              "type": "text",
              "title": "URL",
              "description": "Base URL of the Elastic Cloud Billing API. Alter this for private clouds or admin usage.",
              "multi": false,
              "required": false,
              "show_user": false,
              "default": "https://billing.elastic-cloud.com"
            },
            {
              "name": "proxy_url",
              "type": "text",
              "title": "Proxy URL",
              "description": "URL to proxy connections in the form of http[s]://<user>:<password>@<server name/ip>:<port>. Please ensure your username and password are in URL encoded format.",
              "multi": false,
              "required": false,
              "show_user": false
            },
            {
              "name": "ssl",
              "type": "yaml",
              "title": "SSL Configuration",
              "description": "SSL configuration options. See [documentation](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-ssl.html#ssl-client-config) for details.",
              "multi": false,
              "required": false,
              "show_user": false,
              "default": "#certificate_authorities:\n#  - |\n#    -----BEGIN CERTIFICATE-----\n#    MIIDCjCCAfKgAwIBAgITJ706Mu2wJlKckpIvkWxEHvEyijANBgkqhkiG9w0BAQsF\n#    ADAUMRIwEAYDVQQDDAlsb2NhbGhvc3QwIBcNMTkwNzIyMTkyOTA0WhgPMjExOTA2\n#    MjgxOTI5MDRaMBQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEB\n#    BQADggEPADCCAQoCggEBANce58Y/JykI58iyOXpxGfw0/gMvF0hUQAcUrSMxEO6n\n#    fZRA49b4OV4SwWmA3395uL2eB2NB8y8qdQ9muXUdPBWE4l9rMZ6gmfu90N5B5uEl\n#    94NcfBfYOKi1fJQ9i7WKhTjlRkMCgBkWPkUokvBZFRt8RtF7zI77BSEorHGQCk9t\n#    /D7BS0GJyfVEhftbWcFEAG3VRcoMhF7kUzYwp+qESoriFRYLeDWv68ZOvG7eoWnP\n#    PsvZStEVEimjvK5NSESEQa9xWyJOmlOKXhkdymtcUd/nXnx6UTCFgnkgzSdTWV41\n#    CI6B6aJ9svCTI2QuoIq2HxX/ix7OvW1huVmcyHVxyUECAwEAAaNTMFEwHQYDVR0O\n#    BBYEFPwN1OceFGm9v6ux8G+DZ3TUDYxqMB8GA1UdIwQYMBaAFPwN1OceFGm9v6ux\n#    8G+DZ3TUDYxqMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAG5D\n#    874A4YI7YUwOVsVAdbWtgp1d0zKcPRR+r2OdSbTAV5/gcS3jgBJ3i1BN34JuDVFw\n#    3DeJSYT3nxy2Y56lLnxDeF8CUTUtVQx3CuGkRg1ouGAHpO/6OqOhwLLorEmxi7tA\n#    H2O8mtT0poX5AnOAhzVy7QW0D/k4WaoLyckM5hUa6RtvgvLxOwA0U+VGurCDoctu\n#    8F4QOgTAWyh8EZIwaKCliFRSynDpv3JTUwtfZkxo6K6nce1RhCWFAsMvDZL8Dgc0\n#    yvgJ38BRsFOtkRuAGSf6ZUwTO8JJRRIFnpUzXflAnGivK9M13D5GEQMmIl6U9Pvk\n#    sxSmbIUfc2SGJGCJD4I=\n#    -----END CERTIFICATE-----\n"
            }
          ],
          "title": "Collect Elasticsearch Service Billing Metrics",
          "description": "Collect organization-level billing metrics from the Elastic Cloud Billing API."
        }
      ],
      "multiple": true,
      "deployment_modes": {
        "default": {
          "enabled": true
        },
        "agentless": {
          "enabled": true,
          "is_default": true,
          "release": "beta"
        }
      }
    }
  ],
  "data_streams": [
    {
      "type": "metrics",
      "dataset": "ess_billing.billing",
      "title": "Elasticsearch Service Billing",
      "release": "ga",
      "ingest_pipeline": "default",
      "streams": [
        {
          "input": "cel",
          "vars": [
            {
              "name": "add_tags",
              "type": "bool",
              "title": "Add deployment tags",
              "description": "Whether to add deployment tags to each event collected (this will perform an additional API call against the configured deployment search API, for each execution).",
              "multi": false,
              "required": false,
              "show_user": true,
              "default": false
            },
            {
              "name": "dep_search_url",
              "type": "text",
              "title": "Deployment search URL",
              "description": "Endpoint to fetch deployment tags from. Only used if \"Add deployment tags\" is enabled.",
              "multi": false,
              "required": false,
              "show_user": false,
              "default": "https://cloud.elastic.co/api/v1/deployments/_search"
            },
            {
              "name": "lookbehind",
              "type": "integer",
              "title": "Lookbehind",
              "description": "How far back to fetch data for the first run (in days), default to 1 year.",
              "multi": false,
              "required": true,
              "show_user": true,
              "default": 365
            },
            {
              "name": "hide_sensitive",
              "type": "bool",
              "title": "Hide Sensitive True",
              "description": "Hide sensitive user details.",
              "multi": false,
              "required": false,
              "show_user": false,
              "default": true
            },
            {
              "name": "http_client_timeout",
              "type": "text",
              "title": "HTTP Client Timeout",
              "description": "Duration before declaring that the HTTP client connection has timed out. Supported time units are ns, us, ms, s, m, h.",
              "multi": false,
              "required": true,
              "show_user": false,
              "default": "30s"
            },
            {
              "name": "enable_request_tracer",
              "type": "bool",
              "title": "Enable request tracing",
              "description": "The request tracer logs requests and responses to the agent's local file-system for debugging configurations. Enabling this request tracing compromises security and should only be used for debugging. See [documentation](https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-input-cel.html#_resource_tracer_filename) for details.",
              "multi": false,
              "required": false,
              "show_user": false
            },
            {
              "name": "tags",
              "type": "text",
              "title": "Tags",
              "multi": true,
              "required": true,
              "show_user": false,
              "default": [
                "forwarded",
                "billing"
              ]
            },
            {
              "name": "processors",
              "type": "yaml",
              "title": "Processors",
              "description": "Processors are used to reduce the number of fields in the exported event or to enhance the event with metadata. This executes in the agent before the logs are parsed. See [Processors](https://www.elastic.co/guide/en/beats/filebeat/current/filtering-and-enhancing-data.html) for details.",
              "multi": false,
              "required": false,
              "show_user": false
            }
          ],
          "template_path": "cel.yml.hbs",
          "title": "Elasticsearch Service Billing",
          "description": "Collect daily billing information from Elasticsearch Service billing API.",
          "enabled": true,
          "ingestion_method": "API"
        }
      ],
      "package": "ess_billing",
      "elasticsearch": {
        "ingest_pipeline.name": "default"
      },
      "path": "billing"
    },
    {
      "type": "metrics",
      "dataset": "ess_billing.credits",
      "title": "Elasticsearch Service Credits",
      "release": "ga",
      "ingest_pipeline": "default",
      "streams": [
        {
          "input": "cel",
          "vars": [
            {
              "name": "http_client_timeout",
              "type": "text",
              "title": "HTTP Client Timeout",
              "description": "Duration before declaring that the HTTP client connection has timed out. Supported time units are ns, us, ms, s, m, h.",
              "multi": false,
              "required": true,
              "show_user": false,
              "default": "30s"
            },
            {
              "name": "enable_request_tracer",
              "type": "bool",
              "title": "Enable request tracing",
              "description": "The request tracer logs requests and responses to the agent's local file-system for debugging configurations. Enabling this request tracing compromises security and should only be used for debugging. See [documentation](https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-input-cel.html#_resource_tracer_filename) for details.",
              "multi": false,
              "required": false,
              "show_user": false
            },
            {
              "name": "tags",
              "type": "text",
              "title": "Tags",
              "multi": true,
              "required": true,
              "show_user": false,
              "default": [
                "forwarded",
                "billing"
              ]
            },
            {
              "name": "processors",
              "type": "yaml",
              "title": "Processors",
              "description": "Processors are used to reduce the number of fields in the exported event or to enhance the event with metadata. This executes in the agent before the logs are parsed. See [Processors](https://www.elastic.co/guide/en/beats/filebeat/current/filtering-and-enhancing-data.html) for details.",
              "multi": false,
              "required": false,
              "show_user": false
            }
          ],
          "template_path": "cel.yml.hbs",
          "title": "Elasticsearch Service Credits",
          "description": "Collect credits information from Elasticsearch Service credits API, once every day.",
          "enabled": false,
          "ingestion_method": "API"
        }
      ],
      "package": "ess_billing",
      "elasticsearch": {
        "ingest_pipeline.name": "default"
      },
      "path": "credits"
    }
  ]
}
