{"type":"model","meta":{"id":"/apps/pubhub/media/crosswork-network-controller-7-1/f445c17e25a1120e8fbde4bd413083d0fd88b2b3/42552ab7-d679-37b0-afe0-7313ad2e8c01","info":{"title":"Service Health Heuristic Packages APIs","description":"APIs for requesting rule and metric data stored by the Crosswork Service Health application.","termsOfService":"terms-of-service","contact":{"name":"Crosswork Team, Cisco","email":"support@cisco.com"},"license":{"name":"Cisco Software License Agreement","url":"http://www.cisco.com/public/sw-license-agreement.html"},"version":"7.1.0"},"security":[{"bearerAuth":[]}],"x-parser-conf":{"overview":{"markdownPath":"reference/ServiceHealth/sh_heuristic_packages_overview.md"}},"openapi":"3.0.1","servers":[{"url":"/crosswork/aa/hpmgr"}],"securitySchemes":{"bearerAuth":{"type":"apiKey","description":"Security token for authorizing requests for these APIs.","name":"Authorization","in":"header"}}},"spec":{"type":"object","properties":{"string_t":{"type":"object","properties":{"if_empty":{"type":"string","description":"if_empty: optional. The value to be associated to the metric if it returns an empty value. It is useful when no value is interesting information by itself, but it doesn't make sense for all metrics. If not empty then the value of this field shall be assigned as the default value for this metric."},"output_values":{"type":"array","description":"If the device feed is of the enum type, then they are converted to corresponding string values.\nThe expression enum { init, start, end } ==\u003e translates to string literals: 'init', 'start', 'end'. This field can be left empty, which makes it optional. If it is empty, the Service Health application will take all the values from the mapping field at face value and perform no validations. If this field is not empty, Service Health will check and validate whether all the values specified in the mapping are a subset of this list.","items":{"type":"string"}}},"description":"output_values: What values does this metric return? In case of list type: The possible values for each list element.","$$ref":"#/components/schemas/MetricClassStringType"},"bool_t":{"type":"object","description":"Metric calls Bool type","properties":{"if_empty":{"type":"string","description":"if_empty: optional. The value to be associated to the metric if it returns an empty value. It is useful when no value is interesting information by itself, but it doesn't make sense for all metrics. If the value is not empty, then the boolean equivalent value of this field shall be assigned as the default value for this metric. This field is intentionally not defined as of bool type, in order to distinguish it from the cases where the absence of a value is expected to be reported as a monitoring failure. Valid values to assign to this field are 'true' or 'false' only. Any other value will be treated as invalid."}},"$$ref":"#/components/schemas/MetricClassBoolType"},"int_t":{"type":"object","description":"Metric calls Int type","properties":{"if_empty":{"type":"string","description":"if_empty: optional. The value to be associated to the metric if it returns an empty value. It is useful when no value is interesting information by itself but it doesn't make sense for all metrics. If the value is not empty then the value of this field shall be assigned as the default value for this metric."},"output_values":{"type":"array","description":"Use this only when there are small number of discrete integer values. If the full range is needed or the set is too large to specify in the metric definition, then leave it as zero.","items":{"type":"string","format":"int64"}}},"$$ref":"#/components/schemas/MetricClassIntType"},"float_t":{"description":"Float types are used by counters. Hence they don't require constructs like 'if_empty' and 'output_values'.","type":"number","format":"float"}},"description":"The given metric can be of list (or non-list) of type bool, string, integer or float.","$$ref":"#/components/schemas/MetricClassMType","title":"MetricClassMType"}}