{
  "description": "VMStaticScrape  defines static targets configuration for scraping.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": "string"
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "VMStaticScrapeSpec defines the desired state of VMStaticScrape.",
      "properties": {
        "jobName": {
          "description": "JobName name of job.",
          "type": "string"
        },
        "sampleLimit": {
          "description": "SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.",
          "format": "int64",
          "type": "integer"
        },
        "seriesLimit": {
          "description": "SeriesLimit defines per-scrape limit on number of unique time series\na single target can expose during all the scrapes on the time window of 24h.",
          "format": "int64",
          "type": "integer"
        },
        "targetEndpoints": {
          "description": "A list of target endpoints to scrape metrics from.",
          "items": {
            "description": "TargetEndpoint defines single static target endpoint.",
            "properties": {
              "authorization": {
                "description": "Authorization with http header Authorization",
                "properties": {
                  "credentials": {
                    "description": "Reference to the secret with value for authorization",
                    "properties": {
                      "key": {
                        "description": "The key of the secret to select from.  Must be a valid secret key.",
                        "type": "string"
                      },
                      "name": {
                        "default": "",
                        "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                      },
                      "optional": {
                        "description": "Specify whether the Secret or its key must be defined",
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key"
                    ],
                    "type": "object",
                    "x-kubernetes-map-type": "atomic",
                    "additionalProperties": false
                  },
                  "credentialsFile": {
                    "description": "File with value for authorization",
                    "type": "string"
                  },
                  "type": {
                    "description": "Type of authorization, default to bearer",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "basicAuth": {
                "description": "BasicAuth allow an endpoint to authenticate over basic authentication",
                "properties": {
                  "password": {
                    "description": "Password defines reference for secret with password value\nThe secret needs to be in the same namespace as scrape object",
                    "properties": {
                      "key": {
                        "description": "The key of the secret to select from.  Must be a valid secret key.",
                        "type": "string"
                      },
                      "name": {
                        "default": "",
                        "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                      },
                      "optional": {
                        "description": "Specify whether the Secret or its key must be defined",
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key"
                    ],
                    "type": "object",
                    "x-kubernetes-map-type": "atomic",
                    "additionalProperties": false
                  },
                  "password_file": {
                    "description": "PasswordFile defines path to password file at disk\nmust be pre-mounted",
                    "type": "string"
                  },
                  "username": {
                    "description": "Username defines reference for secret with username value\nThe secret needs to be in the same namespace as scrape object",
                    "properties": {
                      "key": {
                        "description": "The key of the secret to select from.  Must be a valid secret key.",
                        "type": "string"
                      },
                      "name": {
                        "default": "",
                        "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                      },
                      "optional": {
                        "description": "Specify whether the Secret or its key must be defined",
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key"
                    ],
                    "type": "object",
                    "x-kubernetes-map-type": "atomic",
                    "additionalProperties": false
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "bearerTokenFile": {
                "description": "File to read bearer token for scraping targets.",
                "type": "string"
              },
              "bearerTokenSecret": {
                "description": "Secret to mount to read bearer token for scraping targets. The secret\nneeds to be in the same namespace as the scrape object and accessible by\nthe victoria-metrics operator.",
                "nullable": true,
                "properties": {
                  "key": {
                    "description": "The key of the secret to select from.  Must be a valid secret key.",
                    "type": "string"
                  },
                  "name": {
                    "default": "",
                    "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                    "type": "string"
                  },
                  "optional": {
                    "description": "Specify whether the Secret or its key must be defined",
                    "type": "boolean"
                  }
                },
                "required": [
                  "key"
                ],
                "type": "object",
                "x-kubernetes-map-type": "atomic",
                "additionalProperties": false
              },
              "follow_redirects": {
                "description": "FollowRedirects controls redirects for scraping.",
                "type": "boolean"
              },
              "honorLabels": {
                "description": "HonorLabels chooses the metric's labels on collisions with target labels.",
                "type": "boolean"
              },
              "honorTimestamps": {
                "description": "HonorTimestamps controls whether vmagent respects the timestamps present in scraped data.",
                "type": "boolean"
              },
              "interval": {
                "description": "Interval at which metrics should be scraped",
                "type": "string"
              },
              "labels": {
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Labels static labels for targets.",
                "type": "object"
              },
              "max_scrape_size": {
                "description": "MaxScrapeSize defines a maximum size of scraped data for a job",
                "type": "string"
              },
              "metricRelabelConfigs": {
                "description": "MetricRelabelConfigs to apply to samples after scrapping.",
                "items": {
                  "description": "RelabelConfig allows dynamic rewriting of the label set\nMore info: https://docs.victoriametrics.com/#relabeling",
                  "properties": {
                    "action": {
                      "description": "Action to perform based on regex matching. Default is 'replace'",
                      "type": "string"
                    },
                    "if": {
                      "description": "If represents metricsQL match expression (or list of expressions): '{__name__=~\"foo_.*\"}'",
                      "x-kubernetes-preserve-unknown-fields": true
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels is used together with Match for `action: graphite`",
                      "type": "object"
                    },
                    "match": {
                      "description": "Match is used together with Labels for `action: graphite`",
                      "type": "string"
                    },
                    "modulus": {
                      "description": "Modulus to take of the hash of the source label values.",
                      "format": "int64",
                      "type": "integer"
                    },
                    "regex": {
                      "description": "Regular expression against which the extracted value is matched. Default is '(.*)'\nvictoriaMetrics supports multiline regex joined with |\nhttps://docs.victoriametrics.com/vmagent/#relabeling-enhancements",
                      "x-kubernetes-preserve-unknown-fields": true
                    },
                    "replacement": {
                      "description": "Replacement value against which a regex replace is performed if the\nregular expression matches. Regex capture groups are available. Default is '$1'",
                      "type": "string"
                    },
                    "separator": {
                      "description": "Separator placed between concatenated source label values. default is ';'.",
                      "type": "string"
                    },
                    "source_labels": {
                      "description": "UnderScoreSourceLabels - additional form of source labels source_labels\nfor compatibility with original relabel config.\nif set  both sourceLabels and source_labels, sourceLabels has priority.\nfor details https://github.com/VictoriaMetrics/operator/issues/131",
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "sourceLabels": {
                      "description": "The source labels select values from existing labels. Their content is concatenated\nusing the configured separator and matched against the configured regular expression\nfor the replace, keep, and drop actions.",
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "target_label": {
                      "description": "UnderScoreTargetLabel - additional form of target label - target_label\nfor compatibility with original relabel config.\nif set  both targetLabel and target_label, targetLabel has priority.\nfor details https://github.com/VictoriaMetrics/operator/issues/131",
                      "type": "string"
                    },
                    "targetLabel": {
                      "description": "Label to which the resulting value is written in a replace action.\nIt is mandatory for replace actions. Regex capture groups are available.",
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                },
                "type": "array"
              },
              "oauth2": {
                "description": "OAuth2 defines auth configuration",
                "properties": {
                  "client_id": {
                    "description": "The secret or configmap containing the OAuth2 client id",
                    "properties": {
                      "configMap": {
                        "description": "ConfigMap containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key to select.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the ConfigMap or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      },
                      "secret": {
                        "description": "Secret containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key of the secret to select from.  Must be a valid secret key.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the Secret or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "client_secret": {
                    "description": "The secret containing the OAuth2 client secret",
                    "properties": {
                      "key": {
                        "description": "The key of the secret to select from.  Must be a valid secret key.",
                        "type": "string"
                      },
                      "name": {
                        "default": "",
                        "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                      },
                      "optional": {
                        "description": "Specify whether the Secret or its key must be defined",
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key"
                    ],
                    "type": "object",
                    "x-kubernetes-map-type": "atomic",
                    "additionalProperties": false
                  },
                  "client_secret_file": {
                    "description": "ClientSecretFile defines path for client secret file.",
                    "type": "string"
                  },
                  "endpoint_params": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "Parameters to append to the token URL",
                    "type": "object"
                  },
                  "scopes": {
                    "description": "OAuth2 scopes used for the token request",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "token_url": {
                    "description": "The URL to fetch the token from",
                    "minLength": 1,
                    "type": "string"
                  }
                },
                "required": [
                  "client_id",
                  "token_url"
                ],
                "type": "object",
                "additionalProperties": false
              },
              "params": {
                "additionalProperties": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "description": "Optional HTTP URL parameters",
                "type": "object"
              },
              "path": {
                "description": "HTTP path to scrape for metrics.",
                "type": "string"
              },
              "proxyURL": {
                "description": "ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.",
                "type": "string"
              },
              "relabelConfigs": {
                "description": "RelabelConfigs to apply to samples during service discovery.",
                "items": {
                  "description": "RelabelConfig allows dynamic rewriting of the label set\nMore info: https://docs.victoriametrics.com/#relabeling",
                  "properties": {
                    "action": {
                      "description": "Action to perform based on regex matching. Default is 'replace'",
                      "type": "string"
                    },
                    "if": {
                      "description": "If represents metricsQL match expression (or list of expressions): '{__name__=~\"foo_.*\"}'",
                      "x-kubernetes-preserve-unknown-fields": true
                    },
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Labels is used together with Match for `action: graphite`",
                      "type": "object"
                    },
                    "match": {
                      "description": "Match is used together with Labels for `action: graphite`",
                      "type": "string"
                    },
                    "modulus": {
                      "description": "Modulus to take of the hash of the source label values.",
                      "format": "int64",
                      "type": "integer"
                    },
                    "regex": {
                      "description": "Regular expression against which the extracted value is matched. Default is '(.*)'\nvictoriaMetrics supports multiline regex joined with |\nhttps://docs.victoriametrics.com/vmagent/#relabeling-enhancements",
                      "x-kubernetes-preserve-unknown-fields": true
                    },
                    "replacement": {
                      "description": "Replacement value against which a regex replace is performed if the\nregular expression matches. Regex capture groups are available. Default is '$1'",
                      "type": "string"
                    },
                    "separator": {
                      "description": "Separator placed between concatenated source label values. default is ';'.",
                      "type": "string"
                    },
                    "source_labels": {
                      "description": "UnderScoreSourceLabels - additional form of source labels source_labels\nfor compatibility with original relabel config.\nif set  both sourceLabels and source_labels, sourceLabels has priority.\nfor details https://github.com/VictoriaMetrics/operator/issues/131",
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "sourceLabels": {
                      "description": "The source labels select values from existing labels. Their content is concatenated\nusing the configured separator and matched against the configured regular expression\nfor the replace, keep, and drop actions.",
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "target_label": {
                      "description": "UnderScoreTargetLabel - additional form of target label - target_label\nfor compatibility with original relabel config.\nif set  both targetLabel and target_label, targetLabel has priority.\nfor details https://github.com/VictoriaMetrics/operator/issues/131",
                      "type": "string"
                    },
                    "targetLabel": {
                      "description": "Label to which the resulting value is written in a replace action.\nIt is mandatory for replace actions. Regex capture groups are available.",
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                },
                "type": "array"
              },
              "sampleLimit": {
                "description": "SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.",
                "format": "int64",
                "type": "integer"
              },
              "scheme": {
                "description": "HTTP scheme to use for scraping.",
                "enum": [
                  "http",
                  "https",
                  "HTTPS",
                  "HTTP"
                ],
                "type": "string"
              },
              "scrape_interval": {
                "description": "ScrapeInterval is the same as Interval and has priority over it.\none of scrape_interval or interval can be used",
                "type": "string"
              },
              "scrapeTimeout": {
                "description": "Timeout after which the scrape is ended",
                "type": "string"
              },
              "seriesLimit": {
                "description": "SeriesLimit defines per-scrape limit on number of unique time series\na single target can expose during all the scrapes on the time window of 24h.",
                "format": "int64",
                "type": "integer"
              },
              "targets": {
                "description": "Targets static targets addresses in form of [\"192.122.55.55:9100\",\"some-name:9100\"].",
                "items": {
                  "type": "string"
                },
                "minItems": 1,
                "type": "array"
              },
              "tlsConfig": {
                "description": "TLSConfig configuration to use when scraping the endpoint",
                "properties": {
                  "ca": {
                    "description": "Stuct containing the CA cert to use for the targets.",
                    "properties": {
                      "configMap": {
                        "description": "ConfigMap containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key to select.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the ConfigMap or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      },
                      "secret": {
                        "description": "Secret containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key of the secret to select from.  Must be a valid secret key.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the Secret or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "caFile": {
                    "description": "Path to the CA cert in the container to use for the targets.",
                    "type": "string"
                  },
                  "cert": {
                    "description": "Struct containing the client cert file for the targets.",
                    "properties": {
                      "configMap": {
                        "description": "ConfigMap containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key to select.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the ConfigMap or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      },
                      "secret": {
                        "description": "Secret containing data to use for the targets.",
                        "properties": {
                          "key": {
                            "description": "The key of the secret to select from.  Must be a valid secret key.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the Secret or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "certFile": {
                    "description": "Path to the client cert file in the container for the targets.",
                    "type": "string"
                  },
                  "insecureSkipVerify": {
                    "description": "Disable target certificate validation.",
                    "type": "boolean"
                  },
                  "keyFile": {
                    "description": "Path to the client key file in the container for the targets.",
                    "type": "string"
                  },
                  "keySecret": {
                    "description": "Secret containing the client key file for the targets.",
                    "properties": {
                      "key": {
                        "description": "The key of the secret to select from.  Must be a valid secret key.",
                        "type": "string"
                      },
                      "name": {
                        "default": "",
                        "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                      },
                      "optional": {
                        "description": "Specify whether the Secret or its key must be defined",
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key"
                    ],
                    "type": "object",
                    "x-kubernetes-map-type": "atomic",
                    "additionalProperties": false
                  },
                  "serverName": {
                    "description": "Used to verify the hostname for the targets.",
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "vm_scrape_params": {
                "description": "VMScrapeParams defines VictoriaMetrics specific scrape parameters",
                "properties": {
                  "disable_compression": {
                    "description": "DisableCompression",
                    "type": "boolean"
                  },
                  "disable_keep_alive": {
                    "description": "disable_keepalive allows disabling HTTP keep-alive when scraping targets.\nBy default, HTTP keep-alive is enabled, so TCP connections to scrape targets\ncould be re-used.\nSee https://docs.victoriametrics.com/vmagent#scrape_config-enhancements",
                    "type": "boolean"
                  },
                  "headers": {
                    "description": "Headers allows sending custom headers to scrape targets\nmust be in of semicolon separated header with it's value\neg:\nheaderName: headerValue\nvmagent supports since 1.79.0 version",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "no_stale_markers": {
                    "type": "boolean"
                  },
                  "proxy_client_config": {
                    "description": "ProxyClientConfig configures proxy auth settings for scraping\nSee feature description https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy",
                    "properties": {
                      "basic_auth": {
                        "description": "BasicAuth allow an endpoint to authenticate over basic authentication",
                        "properties": {
                          "password": {
                            "description": "Password defines reference for secret with password value\nThe secret needs to be in the same namespace as scrape object",
                            "properties": {
                              "key": {
                                "description": "The key of the secret to select from.  Must be a valid secret key.",
                                "type": "string"
                              },
                              "name": {
                                "default": "",
                                "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                "type": "string"
                              },
                              "optional": {
                                "description": "Specify whether the Secret or its key must be defined",
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "key"
                            ],
                            "type": "object",
                            "x-kubernetes-map-type": "atomic",
                            "additionalProperties": false
                          },
                          "password_file": {
                            "description": "PasswordFile defines path to password file at disk\nmust be pre-mounted",
                            "type": "string"
                          },
                          "username": {
                            "description": "Username defines reference for secret with username value\nThe secret needs to be in the same namespace as scrape object",
                            "properties": {
                              "key": {
                                "description": "The key of the secret to select from.  Must be a valid secret key.",
                                "type": "string"
                              },
                              "name": {
                                "default": "",
                                "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                "type": "string"
                              },
                              "optional": {
                                "description": "Specify whether the Secret or its key must be defined",
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "key"
                            ],
                            "type": "object",
                            "x-kubernetes-map-type": "atomic",
                            "additionalProperties": false
                          }
                        },
                        "type": "object",
                        "additionalProperties": false
                      },
                      "bearer_token": {
                        "description": "SecretKeySelector selects a key of a Secret.",
                        "properties": {
                          "key": {
                            "description": "The key of the secret to select from.  Must be a valid secret key.",
                            "type": "string"
                          },
                          "name": {
                            "default": "",
                            "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                            "type": "string"
                          },
                          "optional": {
                            "description": "Specify whether the Secret or its key must be defined",
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "key"
                        ],
                        "type": "object",
                        "x-kubernetes-map-type": "atomic",
                        "additionalProperties": false
                      },
                      "bearer_token_file": {
                        "type": "string"
                      },
                      "tls_config": {
                        "description": "TLSConfig specifies TLSConfig configuration parameters.",
                        "properties": {
                          "ca": {
                            "description": "Stuct containing the CA cert to use for the targets.",
                            "properties": {
                              "configMap": {
                                "description": "ConfigMap containing data to use for the targets.",
                                "properties": {
                                  "key": {
                                    "description": "The key to select.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "default": "",
                                    "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                    "type": "string"
                                  },
                                  "optional": {
                                    "description": "Specify whether the ConfigMap or its key must be defined",
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "key"
                                ],
                                "type": "object",
                                "x-kubernetes-map-type": "atomic",
                                "additionalProperties": false
                              },
                              "secret": {
                                "description": "Secret containing data to use for the targets.",
                                "properties": {
                                  "key": {
                                    "description": "The key of the secret to select from.  Must be a valid secret key.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "default": "",
                                    "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                    "type": "string"
                                  },
                                  "optional": {
                                    "description": "Specify whether the Secret or its key must be defined",
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "key"
                                ],
                                "type": "object",
                                "x-kubernetes-map-type": "atomic",
                                "additionalProperties": false
                              }
                            },
                            "type": "object",
                            "additionalProperties": false
                          },
                          "caFile": {
                            "description": "Path to the CA cert in the container to use for the targets.",
                            "type": "string"
                          },
                          "cert": {
                            "description": "Struct containing the client cert file for the targets.",
                            "properties": {
                              "configMap": {
                                "description": "ConfigMap containing data to use for the targets.",
                                "properties": {
                                  "key": {
                                    "description": "The key to select.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "default": "",
                                    "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                    "type": "string"
                                  },
                                  "optional": {
                                    "description": "Specify whether the ConfigMap or its key must be defined",
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "key"
                                ],
                                "type": "object",
                                "x-kubernetes-map-type": "atomic",
                                "additionalProperties": false
                              },
                              "secret": {
                                "description": "Secret containing data to use for the targets.",
                                "properties": {
                                  "key": {
                                    "description": "The key of the secret to select from.  Must be a valid secret key.",
                                    "type": "string"
                                  },
                                  "name": {
                                    "default": "",
                                    "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                    "type": "string"
                                  },
                                  "optional": {
                                    "description": "Specify whether the Secret or its key must be defined",
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "key"
                                ],
                                "type": "object",
                                "x-kubernetes-map-type": "atomic",
                                "additionalProperties": false
                              }
                            },
                            "type": "object",
                            "additionalProperties": false
                          },
                          "certFile": {
                            "description": "Path to the client cert file in the container for the targets.",
                            "type": "string"
                          },
                          "insecureSkipVerify": {
                            "description": "Disable target certificate validation.",
                            "type": "boolean"
                          },
                          "keyFile": {
                            "description": "Path to the client key file in the container for the targets.",
                            "type": "string"
                          },
                          "keySecret": {
                            "description": "Secret containing the client key file for the targets.",
                            "properties": {
                              "key": {
                                "description": "The key of the secret to select from.  Must be a valid secret key.",
                                "type": "string"
                              },
                              "name": {
                                "default": "",
                                "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                                "type": "string"
                              },
                              "optional": {
                                "description": "Specify whether the Secret or its key must be defined",
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "key"
                            ],
                            "type": "object",
                            "x-kubernetes-map-type": "atomic",
                            "additionalProperties": false
                          },
                          "serverName": {
                            "description": "Used to verify the hostname for the targets.",
                            "type": "string"
                          }
                        },
                        "type": "object",
                        "additionalProperties": false
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "scrape_align_interval": {
                    "type": "string"
                  },
                  "scrape_offset": {
                    "type": "string"
                  },
                  "stream_parse": {
                    "type": "boolean"
                  }
                },
                "type": "object",
                "additionalProperties": false
              }
            },
            "required": [
              "targets"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        }
      },
      "required": [
        "targetEndpoints"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "ScrapeObjectStatus defines the observed state of ScrapeObjects",
      "properties": {
        "conditions": {
          "description": "Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"",
          "items": {
            "description": "Condition defines status condition of the resource",
            "properties": {
              "lastTransitionTime": {
                "description": "lastTransitionTime is the last time the condition transitioned from one status to another.",
                "format": "date-time",
                "type": "string"
              },
              "lastUpdateTime": {
                "description": "LastUpdateTime is the last time of given type update.\nThis value is used for status TTL update and removal",
                "format": "date-time",
                "type": "string"
              },
              "message": {
                "description": "message is a human readable message indicating details about the transition.\nThis may be an empty string.",
                "maxLength": 32768,
                "type": "string"
              },
              "observedGeneration": {
                "description": "observedGeneration represents the .metadata.generation that the condition was set based upon.\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\nwith respect to the current state of the instance.",
                "format": "int64",
                "minimum": 0,
                "type": "integer"
              },
              "reason": {
                "description": "reason contains a programmatic identifier indicating the reason for the condition's last transition.\nProducers of specific condition types may define expected values and meanings for this field,\nand whether the values are considered a guaranteed API.\nThe value should be a CamelCase string.\nThis field may not be empty.",
                "maxLength": 1024,
                "minLength": 1,
                "type": "string"
              },
              "status": {
                "description": "status of the condition, one of True, False, Unknown.",
                "enum": [
                  "True",
                  "False",
                  "Unknown"
                ],
                "type": "string"
              },
              "type": {
                "description": "Type of condition in CamelCase or in name.namespace.resource.victoriametrics.com/CamelCase.",
                "maxLength": 316,
                "type": "string"
              }
            },
            "required": [
              "lastTransitionTime",
              "lastUpdateTime",
              "reason",
              "status",
              "type"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array",
          "x-kubernetes-list-map-keys": [
            "type"
          ],
          "x-kubernetes-list-type": "map"
        },
        "observedGeneration": {
          "description": "ObservedGeneration defines current generation picked by operator for the\nreconcile",
          "format": "int64",
          "type": "integer"
        },
        "reason": {
          "description": "Reason defines human readable error reason",
          "type": "string"
        },
        "updateStatus": {
          "description": "UpdateStatus defines a status for update rollout",
          "type": "string"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
