{
  "leansignal_demand_export": "1.0",
  "exported_at": "2026-07-17T00:00:00Z",
  "source_tenant": "leansignal-catalog",
  "catalog": {
    "slug": "dotnet-otel-demand-extended",
    "integration": "dotnet",
    "variant": "extended",
    "title": ".NET — Extended",
    "category": "SDK",
    "dashboards": 1,
    "panels": 14,
    "alerts": 9,
    "docs_url": "https://docs.leansignal.io/integrations/dotnet/"
  },
  "demand": {
    "ref": "demand",
    "name": ".NET — Extended (OpenTelemetry)",
    "description": "Deep CLR visibility: CPU, per-generation GC heap and allocation rate, exceptions and lock contention, outbound HttpClient latency and errors, and the full alert set. For services you need to diagnose under load.",
    "dashboards": [
      {
        "ref": "dash-dotnet",
        "name": ".NET — Extended",
        "description": ".NET CLR runtime health (GC, JIT, thread pool, memory, exceptions) plus ASP.NET Core HTTP server and HttpClient request metrics (extended variant).",
        "data": {
          "display": {
            "name": ".NET — Extended"
          },
          "panels": {
            "http_request_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "HTTP request rate",
                  "description": "Inbound request throughput per instance."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "requests/sec"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(http_server_request_duration_seconds_count{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "http_error_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "HTTP 5xx error rate",
                  "description": "Share of requests answered 5xx."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "percent-decimal"
                      },
                      "min": 0,
                      "max": 1
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(http_server_request_duration_seconds_count{instance=~\"$instance\",http_response_status_code=~\"5..\"}[5m])) / sum by (instance) (rate(http_server_request_duration_seconds_count{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "http_latency_p95": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "HTTP request duration p95",
                  "description": "95th-percentile request latency per instance."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "seconds"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "histogram_quantile(0.95, sum by (le, instance) (rate(http_server_request_duration_seconds_bucket{instance=~\"$instance\"}[5m])))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "http_client_latency_p95": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "HTTP client duration p95",
                  "description": "Outbound HttpClient latency — a slow downstream shows up here first."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "seconds"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "histogram_quantile(0.95, sum by (le, instance) (rate(http_client_request_duration_seconds_bucket{instance=~\"$instance\"}[5m])))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "cpu_utilization": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "CPU utilization",
                  "description": "Process CPU normalized by available cores, averaged over 5m windows — a diagnosis view; saturation alerting rides on the thread-pool queue."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "percent-decimal"
                      },
                      "min": 0,
                      "max": 1
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(dotnet_process_cpu_time_seconds_total{instance=~\"$instance\"}[5m])) / avg by (instance) (dotnet_process_cpu_count{instance=~\"$instance\"})",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "exception_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Exception rate",
                  "description": "Managed exceptions thrown, handled or not."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "counts/sec"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(dotnet_exceptions_total{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "process_memory_working_set": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Working set memory",
                  "description": "Physical memory of the process as the OS sees it."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "bytes"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (dotnet_process_memory_working_set_bytes{instance=~\"$instance\"})",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "gc_heap_size_by_gen": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "GC heap size by generation",
                  "description": "Heap size at the last collection, per generation — gen2/LOH growth is the leak signal."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "bytes"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance, dotnet_gc_heap_generation) (dotnet_gc_last_collection_heap_size_bytes{instance=~\"$instance\"})",
                          "seriesNameFormat": "{{instance}} · {{dotnet_gc_heap_generation}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "gc_allocation_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "GC heap allocation rate",
                  "description": "Allocation throughput — the driver of GC frequency."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "bytes/sec"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(dotnet_gc_heap_total_allocated_bytes_total{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "gc_collection_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "GC collections by generation",
                  "description": "Collection frequency per generation — frequent gen2 means memory pressure."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "ops/sec"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance, dotnet_gc_heap_generation) (rate(dotnet_gc_collections_total{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}} · {{dotnet_gc_heap_generation}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "gc_pause_fraction": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Time paused in GC",
                  "description": "Share of wall time the runtime is paused for GC."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "percent-decimal"
                      },
                      "min": 0,
                      "max": 1
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(dotnet_gc_pause_time_seconds_total{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "threadpool_thread_count": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Thread pool threads",
                  "description": "Worker threads in the pool — sustained growth means the pool is injecting threads to cover blocking work."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "decimal"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (dotnet_thread_pool_thread_count{instance=~\"$instance\"})",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "lock_contention_rate": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Monitor lock contentions",
                  "description": "Lock acquisitions that had to wait — sustained contention serializes the app."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "counts/sec"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (rate(dotnet_monitor_lock_contentions_total{instance=~\"$instance\"}[5m]))",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            },
            "threadpool_queue_length": {
              "kind": "Panel",
              "spec": {
                "display": {
                  "name": "Thread pool queue length",
                  "description": "Work items waiting for a pool thread — a growing queue is saturation."
                },
                "plugin": {
                  "kind": "TimeSeriesChart",
                  "spec": {
                    "legend": {
                      "position": "bottom",
                      "mode": "table",
                      "values": [
                        "last-number",
                        "mean",
                        "max"
                      ]
                    },
                    "yAxis": {
                      "format": {
                        "unit": "decimal"
                      },
                      "min": 0
                    }
                  }
                },
                "queries": [
                  {
                    "kind": "TimeSeriesQuery",
                    "spec": {
                      "plugin": {
                        "kind": "PrometheusTimeSeriesQuery",
                        "spec": {
                          "query": "sum by (instance) (dotnet_thread_pool_queue_length{instance=~\"$instance\"})",
                          "seriesNameFormat": "{{instance}}"
                        }
                      }
                    }
                  }
                ]
              }
            }
          },
          "layouts": [
            {
              "kind": "Grid",
              "spec": {
                "display": {
                  "title": "HTTP",
                  "collapse": {
                    "open": true
                  }
                },
                "items": [
                  {
                    "x": 0,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/http_request_rate"
                    }
                  },
                  {
                    "x": 12,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/http_error_rate"
                    }
                  },
                  {
                    "x": 0,
                    "y": 8,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/http_latency_p95"
                    }
                  },
                  {
                    "x": 12,
                    "y": 8,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/http_client_latency_p95"
                    }
                  }
                ]
              }
            },
            {
              "kind": "Grid",
              "spec": {
                "display": {
                  "title": "Runtime",
                  "collapse": {
                    "open": true
                  }
                },
                "items": [
                  {
                    "x": 0,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/cpu_utilization"
                    }
                  },
                  {
                    "x": 12,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/exception_rate"
                    }
                  }
                ]
              }
            },
            {
              "kind": "Grid",
              "spec": {
                "display": {
                  "title": "Memory",
                  "collapse": {
                    "open": true
                  }
                },
                "items": [
                  {
                    "x": 0,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/process_memory_working_set"
                    }
                  },
                  {
                    "x": 12,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/gc_heap_size_by_gen"
                    }
                  },
                  {
                    "x": 0,
                    "y": 8,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/gc_allocation_rate"
                    }
                  }
                ]
              }
            },
            {
              "kind": "Grid",
              "spec": {
                "display": {
                  "title": "GC",
                  "collapse": {
                    "open": true
                  }
                },
                "items": [
                  {
                    "x": 0,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/gc_collection_rate"
                    }
                  },
                  {
                    "x": 12,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/gc_pause_fraction"
                    }
                  }
                ]
              }
            },
            {
              "kind": "Grid",
              "spec": {
                "display": {
                  "title": "Threads",
                  "collapse": {
                    "open": true
                  }
                },
                "items": [
                  {
                    "x": 0,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/threadpool_thread_count"
                    }
                  },
                  {
                    "x": 12,
                    "y": 0,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/lock_contention_rate"
                    }
                  },
                  {
                    "x": 0,
                    "y": 8,
                    "width": 12,
                    "height": 8,
                    "content": {
                      "$ref": "#/spec/panels/threadpool_queue_length"
                    }
                  }
                ]
              }
            }
          ],
          "variables": [
            {
              "kind": "ListVariable",
              "spec": {
                "name": "instance",
                "display": {
                  "name": "Instance"
                },
                "allowAllValue": true,
                "allowMultiple": true,
                "customAllValue": ".*",
                "defaultValue": ".*",
                "plugin": {
                  "kind": "PrometheusLabelValuesVariable",
                  "spec": {
                    "labelName": "instance"
                  }
                }
              }
            }
          ],
          "duration": "1h",
          "refreshInterval": "30s",
          "datasources": {}
        }
      }
    ],
    "alert_rules": [
      {
        "ref": "alert-http-5xx-error-rate",
        "name": "High HTTP 5xx error rate",
        "description": null,
        "query": "sum by (instance) (rate(http_server_request_duration_seconds_count{http_response_status_code=~\"5..\"}[5m])) / sum by (instance) (rate(http_server_request_duration_seconds_count[5m]))",
        "condition_op": "gt",
        "threshold": 0.05,
        "interval": "1m",
        "for": "5m",
        "severity": "critical",
        "message": "{{labels.instance}} is serving {{value | percent:1}} 5xx responses.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-http-latency-p95-high",
        "name": "High HTTP p95 latency",
        "description": null,
        "query": "histogram_quantile(0.95, sum by (le, instance) (rate(http_server_request_duration_seconds_bucket[5m])))",
        "condition_op": "gt",
        "threshold": 1,
        "interval": "1m",
        "for": "5m",
        "severity": "warning",
        "message": "{{labels.instance}} p95 request latency is {{value}}s.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-threadpool-queue-backlog",
        "name": "Thread pool queue backlog",
        "description": null,
        "query": "sum by (instance) (avg_over_time(dotnet_thread_pool_queue_length[10m]))",
        "condition_op": "gt",
        "threshold": 100,
        "interval": "1m",
        "for": "10m",
        "severity": "warning",
        "message": "{{labels.instance}} has {{value}} work items queued on the thread pool — thread-pool starvation.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-gc-pause-fraction-high",
        "name": "Excessive time in GC",
        "description": null,
        "query": "sum by (instance) (rate(dotnet_gc_pause_time_seconds_total[5m]))",
        "condition_op": "gt",
        "threshold": 0.1,
        "interval": "1m",
        "for": "10m",
        "severity": "warning",
        "message": "{{labels.instance}} spends {{value | percent:1}} of wall time paused in GC.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-exception-rate-high",
        "name": "Elevated exception rate",
        "description": null,
        "query": "sum by (instance) (rate(dotnet_exceptions_total[5m]))",
        "condition_op": "gt",
        "threshold": 10,
        "interval": "1m",
        "for": "10m",
        "severity": "warning",
        "message": "{{labels.instance}} is throwing {{value}} exceptions/s sustained.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-http-latency-p99-critical",
        "name": "Very high HTTP p99 latency",
        "description": null,
        "query": "histogram_quantile(0.99, sum by (le, instance) (rate(http_server_request_duration_seconds_bucket[5m])))",
        "condition_op": "gt",
        "threshold": 2.5,
        "interval": "1m",
        "for": "5m",
        "severity": "critical",
        "message": "{{labels.instance}} p99 request latency is {{value}}s.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-gen2-gc-frequent",
        "name": "Frequent gen2 garbage collections",
        "description": null,
        "query": "sum by (instance) (rate(dotnet_gc_collections_total{dotnet_gc_heap_generation=\"gen2\"}[5m]))",
        "condition_op": "gt",
        "threshold": 1,
        "interval": "1m",
        "for": "10m",
        "severity": "warning",
        "message": "{{labels.instance}} runs {{value}} gen2 collections/s (memory pressure).",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-lock-contention-high",
        "name": "High monitor lock contention",
        "description": null,
        "query": "sum by (instance) (rate(dotnet_monitor_lock_contentions_total[5m]))",
        "condition_op": "gt",
        "threshold": 50,
        "interval": "1m",
        "for": "5m",
        "severity": "warning",
        "message": "{{labels.instance}} has {{value}} lock contentions/s.",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      },
      {
        "ref": "alert-http-client-error-rate",
        "name": "High outbound HTTP error rate",
        "description": null,
        "query": "sum by (instance) (rate(http_client_request_duration_seconds_count{http_response_status_code=~\"5..\"}[5m])) / sum by (instance) (rate(http_client_request_duration_seconds_count[5m]))",
        "condition_op": "gt",
        "threshold": 0.1,
        "interval": "1m",
        "for": "5m",
        "severity": "warning",
        "message": "{{labels.instance}} outbound HTTP calls are {{value | percent:1}} 5xx (downstream dependency failing).",
        "notify_on_resolve": true,
        "paused": false,
        "channels": []
      }
    ]
  }
}
