github.com/kiali/kiali@v1.84.0/doc.go (about)

     1  package main
     2  
     3  import (
     4  	"github.com/kiali/kiali/business/authentication"
     5  	"github.com/kiali/kiali/graph/config/cytoscape"
     6  	"github.com/kiali/kiali/kubernetes"
     7  	"github.com/kiali/kiali/models"
     8  	"github.com/kiali/kiali/status"
     9  	"github.com/kiali/kiali/tracing/jaeger/model"
    10  	jaegerModels "github.com/kiali/kiali/tracing/jaeger/model/json"
    11  )
    12  
    13  /////////////////////
    14  // SWAGGER PARAMETERS - GENERAL
    15  // - keep this alphabetized
    16  /////////////////////
    17  
    18  // swagger:parameters aggregateMetrics graphAggregate graphAggregateByService
    19  type AggregateParam struct {
    20  	// The aggregate name (label).
    21  	//
    22  	// in: path
    23  	// required: true
    24  	Name string `json:"aggregate"`
    25  }
    26  
    27  // swagger:parameters aggregateMetrics graphAggregate graphAggregateByService
    28  type AggregateValueParam struct {
    29  	// The aggregate value (label value).
    30  	//
    31  	// in: path
    32  	// required: true
    33  	Name string `json:"aggregateValue"`
    34  }
    35  
    36  // swagger:parameters appMetrics appDetails graphApp graphAppVersion appDashboard appSpans appTraces errorTraces
    37  type AppParam struct {
    38  	// The app name (label value).
    39  	//
    40  	// in: path
    41  	// required: true
    42  	Name string `json:"app"`
    43  }
    44  
    45  // swagger:parameters graphAppVersion
    46  type AppVersionParam struct {
    47  	// The app version (label value).
    48  	//
    49  	// in: path
    50  	// required: false
    51  	Name string `json:"version"`
    52  }
    53  
    54  // swagger:parameters graphAggregate graphAggregateByService graphApp graphAppVersion graphService graphWorkload
    55  type ClusterParam struct {
    56  	// The cluster name. If not supplied queries/results will not be constrained by cluster.
    57  	//
    58  	// in: query
    59  	// required: false
    60  	Name string `json:"container"`
    61  }
    62  
    63  // swagger:parameters podLogs
    64  type ContainerParam struct {
    65  	// The pod container name. Optional for single-container pod. Otherwise required.
    66  	//
    67  	// in: query
    68  	// required: false
    69  	Name string `json:"container"`
    70  }
    71  
    72  // swagger:parameters podProxyLogging
    73  type LoggingParam struct {
    74  	// The log level for the pod's proxy.
    75  	//
    76  	// in: query
    77  	// required: true
    78  	Level ProxyLogLevel `json:"level"`
    79  }
    80  
    81  // swagger:parameters istioConfigList workloadList workloadDetails workloadUpdate serviceDetails serviceUpdate appSpans serviceSpans workloadSpans appTraces serviceTraces workloadTraces errorTraces workloadValidations appList serviceMetrics aggregateMetrics appMetrics workloadMetrics istioConfigDetails istioConfigDetailsSubtype istioConfigDelete istioConfigDeleteSubtype istioConfigUpdate istioConfigUpdateSubtype serviceList appDetails graphAggregate graphAggregateByService graphApp graphAppVersion graphNamespace graphService graphWorkload namespaceMetrics customDashboard appDashboard serviceDashboard workloadDashboard istioConfigCreate istioConfigCreateSubtype namespaceUpdate namespaceTls podDetails podLogs namespaceValidations podProxyDump podProxyResource podProxyLogging
    82  type NamespaceParam struct {
    83  	// The namespace name.
    84  	//
    85  	// in: path
    86  	// required: true
    87  	Name string `json:"namespace"`
    88  }
    89  
    90  // swagger:parameters istioConfigDetails istioConfigDetailsSubtype istioConfigDelete istioConfigDeleteSubtype istioConfigUpdate istioConfigUpdateSubtype
    91  type ObjectNameParam struct {
    92  	// The Istio object name.
    93  	//
    94  	// in: path
    95  	// required: true
    96  	Name string `json:"object"`
    97  }
    98  
    99  // swagger:parameters istioConfigDetails istioConfigDetailsSubtype istioConfigDelete istioConfigDeleteSubtype istioConfigUpdate istioConfigUpdateSubtype istioConfigCreate istioConfigCreateSubtype
   100  type ObjectTypeParam struct {
   101  	// The Istio object type.
   102  	//
   103  	// in: path
   104  	// required: true
   105  	// pattern: ^(gateways|virtualservices|destinationrules|serviceentries|rules|quotaspecs|quotaspecbindings)$
   106  	Name string `json:"object_type"`
   107  }
   108  
   109  // swagger:parameters istioConfigList istioConfigDetails serviceDetails serviceUpdate
   110  type ValidateParam struct {
   111  	// Enable validation or not
   112  	//
   113  	// in: query
   114  	// required: false
   115  	Name string `json:"validate"`
   116  }
   117  
   118  // swagger:parameters podDetails podLogs podProxyDump podProxyResource podProxyLogging
   119  type PodParam struct {
   120  	// The pod name.
   121  	//
   122  	// in: path
   123  	// required: true
   124  	Name string `json:"pod"`
   125  }
   126  
   127  // swagger:parameters podProxyResource
   128  type ResourceParam struct {
   129  	// The discovery service resource
   130  	//
   131  	// in: path
   132  	// required: true
   133  	Name string `json:"resource"`
   134  }
   135  
   136  // swagger:parameters serviceDetails serviceUpdate serviceMetrics graphService graphAggregateByService serviceDashboard serviceSpans serviceTraces
   137  type ServiceParam struct {
   138  	// The service name.
   139  	//
   140  	// in: path
   141  	// required: true
   142  	Name string `json:"service"`
   143  }
   144  
   145  // swagger:parameters podLogs
   146  type SinceTimeParam struct {
   147  	// The start time for fetching logs. UNIX time in seconds. Default is all logs.
   148  	//
   149  	// in: query
   150  	// required: false
   151  	Name string `json:"sinceTime"`
   152  }
   153  
   154  // swagger:parameters podLogs
   155  type DurationLogParam struct {
   156  	// Query time-range duration (Golang string duration). Duration starts on
   157  	// `sinceTime` if set, or the time for the first log message if not set.
   158  	//
   159  	// in: query
   160  	// required: false
   161  	Name string `json:"duration"`
   162  }
   163  
   164  // swagger:parameters traceDetails
   165  type TraceIDParam struct {
   166  	// The trace ID.
   167  	//
   168  	// in: path
   169  	// required: true
   170  	Name string `json:"traceID"`
   171  }
   172  
   173  // swagger:parameters customDashboard
   174  type DashboardParam struct {
   175  	// The dashboard resource name.
   176  	//
   177  	// in: path
   178  	// required: true
   179  	Name string `json:"dashboard"`
   180  }
   181  
   182  // swagger:parameters workloadDetails workloadUpdate workloadValidations workloadMetrics graphWorkload workloadDashboard workloadSpans workloadTraces
   183  type WorkloadParam struct {
   184  	// The workload name.
   185  	//
   186  	// in: path
   187  	// required: true
   188  	Name string `json:"workload"`
   189  }
   190  
   191  /////////////////////
   192  // SWAGGER PARAMETERS - GRAPH
   193  // - keep this alphabetized
   194  /////////////////////
   195  
   196  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   197  type AppendersParam struct {
   198  	// Comma-separated list of Appenders to run. Available appenders: [aggregateNode, deadNode, healthConfig, idleNode, istio, responseTime, securityPolicy, serviceEntry, sidecarsCheck, throughput].
   199  	//
   200  	// in: query
   201  	// required: false
   202  	// default: aggregateNode,deadNode,healthConfig,idleNode,istio,responseTime,securityPolicy,serviceEntry,sidecarsCheck,throughput
   203  	Name string `json:"appenders"`
   204  }
   205  
   206  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   207  type BoxByParam struct {
   208  	// Comma-separated list of desired node boxing. Available boxings: [app, cluster, namespace].
   209  	//
   210  	// in: query
   211  	// required: false
   212  	Name string `json:"boxBy"`
   213  }
   214  
   215  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   216  type DurationGraphParam struct {
   217  	// Query time-range duration (Golang string duration).
   218  	//
   219  	// in: query
   220  	// required: false
   221  	// default: 10m
   222  	Name string `json:"duration"`
   223  }
   224  
   225  // swagger:parameters graphNamespaces graphService graphWorkload
   226  type GraphTypeParam struct {
   227  	// Graph type. Available graph types: [app, service, versionedApp, workload].
   228  	//
   229  	// in: query
   230  	// required: false
   231  	// default: workload
   232  	Name string `json:"graphType"`
   233  }
   234  
   235  // swagger:parameters graphApp graphAppVersion
   236  type AppGraphTypeParam struct {
   237  	// Graph type. Available graph types: [app, versionedApp].
   238  	//
   239  	// in: query
   240  	// required: true
   241  	Name string `json:"graphType"`
   242  }
   243  
   244  // swagger:parameters graphApp graphAppVersion graphNamespaces graphWorkload
   245  type IncludeIdleEdges struct {
   246  	// Flag for including edges that have no request traffic for the time period.
   247  	//
   248  	// in: query
   249  	// required: false
   250  	// default: false
   251  	Name string `json:"includeIdleEdges"`
   252  }
   253  
   254  // swagger:parameters graphApp graphAppVersion graphNamespaces graphWorkload
   255  type InjectServiceNodes struct {
   256  	// Flag for injecting the requested service node between source and destination nodes.
   257  	//
   258  	// in: query
   259  	// required: false
   260  	// default: false
   261  	Name string `json:"injectServiceNodes"`
   262  }
   263  
   264  // swagger:parameters graphNamespaces
   265  type NamespacesParam struct {
   266  	// Comma-separated list of namespaces to include in the graph. The namespaces must be accessible to the client.
   267  	//
   268  	// in: query
   269  	// required: true
   270  	Name string `json:"namespaces"`
   271  }
   272  
   273  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   274  type QueryTimeParam struct {
   275  	// Unix time (seconds) for query such that time range is [queryTime-duration..queryTime]. Default is now.
   276  	//
   277  	// in: query
   278  	// required: false
   279  	// default: now
   280  	Name string `json:"queryTime"`
   281  }
   282  
   283  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   284  type RateGrpcParam struct {
   285  	// How to calculate gRPC traffic rate. One of: none | received (i.e. response_messages) | requests | sent (i.e. request_messages) | total (i.e. sent+received).
   286  	//
   287  	// in: query
   288  	// required: false
   289  	// default: requests
   290  	Name string `json:"rateGrpc"`
   291  }
   292  
   293  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   294  type RateHttpParam struct {
   295  	// How to calculate HTTP traffic rate. One of: none | requests.
   296  	//
   297  	// in: query
   298  	// required: false
   299  	// default: requests
   300  	Name string `json:"rateHttp"`
   301  }
   302  
   303  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   304  type RateTcpParam struct {
   305  	// How to calculate TCP traffic rate. One of: none | received (i.e. received_bytes) | sent (i.e. sent_bytes) | total (i.e. sent+received).
   306  	//
   307  	// in: query
   308  	// required: false
   309  	// default: sent
   310  	Name string `json:"rateTcp"`
   311  }
   312  
   313  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   314  type ResponseTimeParam struct {
   315  	// Used only with responseTime appender. One of: avg | 50 | 95 | 99.
   316  	//
   317  	// in: query
   318  	// required: false
   319  	// default: 95
   320  	Name string `json:"responseTime"`
   321  }
   322  
   323  // swagger:parameters graphApp graphAppVersion graphNamespaces graphService graphWorkload
   324  type ThroughputParam struct {
   325  	// Used only with throughput appender. One of: request | response.
   326  	//
   327  	// in: query
   328  	// required: false
   329  	// default: request
   330  	Name string `json:"throughput"`
   331  }
   332  
   333  /////////////////////
   334  // SWAGGER PARAMETERS - METRICS
   335  // - keep this alphabetized
   336  /////////////////////
   337  
   338  // swagger:parameters customDashboard
   339  type AdditionalLabelsParam struct {
   340  	// In custom dashboards, additional labels that are made available for grouping in the UI, regardless which aggregations are defined in the MonitoringDashboard CR
   341  	//
   342  	// in: query
   343  	// required: false
   344  	Name string `json:"additionalLabels"`
   345  }
   346  
   347  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   348  type AvgParam struct {
   349  	// Flag for fetching histogram average. Default is true.
   350  	//
   351  	// in: query
   352  	// required: false
   353  	// default: true
   354  	Name bool `json:"avg"`
   355  }
   356  
   357  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   358  type ByLabelsParam struct {
   359  	// List of labels to use for grouping metrics (via Prometheus 'by' clause).
   360  	//
   361  	// in: query
   362  	// required: false
   363  	// default: []
   364  	Name []string `json:"byLabels[]"`
   365  }
   366  
   367  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics appDashboard serviceDashboard workloadDashboard
   368  type DirectionParam struct {
   369  	// Traffic direction: 'inbound' or 'outbound'.
   370  	//
   371  	// in: query
   372  	// required: false
   373  	// default: outbound
   374  	Name string `json:"direction"`
   375  }
   376  
   377  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   378  type DurationParam struct {
   379  	// Duration of the query period, in seconds.
   380  	//
   381  	// in: query
   382  	// required: false
   383  	// default: 1800
   384  	Name int `json:"duration"`
   385  }
   386  
   387  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics
   388  type FiltersParam struct {
   389  	// List of metrics to fetch. Fetch all metrics when empty. List entries are Kiali internal metric names.
   390  	//
   391  	// in: query
   392  	// required: false
   393  	// default: []
   394  	Name []string `json:"filters[]"`
   395  }
   396  
   397  // swagger:parameters customDashboard
   398  type LabelsFiltersParam struct {
   399  	// In custom dashboards, labels filters to use when fetching metrics, formatted as key:value pairs. Ex: "app:foo,version:bar".
   400  	//
   401  	// in: query
   402  	// required: false
   403  	//
   404  	Name string `json:"labelsFilters"`
   405  }
   406  
   407  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   408  type QuantilesParam struct {
   409  	// List of quantiles to fetch. Fetch no quantiles when empty. Ex: [0.5, 0.95, 0.99].
   410  	//
   411  	// in: query
   412  	// required: false
   413  	// default: []
   414  	Name []string `json:"quantiles[]"`
   415  }
   416  
   417  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   418  type RateFuncParam struct {
   419  	// Prometheus function used to calculate rate: 'rate' or 'irate'.
   420  	//
   421  	// in: query
   422  	// required: false
   423  	// default: rate
   424  	Name string `json:"rateFunc"`
   425  }
   426  
   427  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   428  type RateIntervalParam struct {
   429  	// Interval used for rate and histogram calculation.
   430  	//
   431  	// in: query
   432  	// required: false
   433  	// default: 1m
   434  	Name string `json:"rateInterval"`
   435  }
   436  
   437  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics appDashboard serviceDashboard workloadDashboard
   438  type RequestProtocolParam struct {
   439  	// Desired request protocol for the telemetry: For example, 'http' or 'grpc'.
   440  	//
   441  	// in: query
   442  	// required: false
   443  	// default: all protocols
   444  	Name string `json:"requestProtocol"`
   445  }
   446  
   447  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics appDashboard serviceDashboard workloadDashboard
   448  type ReporterParam struct {
   449  	// Istio telemetry reporter: 'source' or 'destination'.
   450  	//
   451  	// in: query
   452  	// required: false
   453  	// default: source
   454  	Name string `json:"reporter"`
   455  }
   456  
   457  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics customDashboard appDashboard serviceDashboard workloadDashboard
   458  type StepParam struct {
   459  	// Step between [graph] datapoints, in seconds.
   460  	//
   461  	// in: query
   462  	// required: false
   463  	// default: 15
   464  	Name int `json:"step"`
   465  }
   466  
   467  // swagger:parameters serviceMetrics aggregateMetrics appMetrics workloadMetrics
   468  type VersionParam struct {
   469  	// Filters metrics by the specified version.
   470  	//
   471  	// in: query
   472  	// required: false
   473  	Name string `json:"version"`
   474  }
   475  
   476  /////////////////////
   477  // SWAGGER RESPONSES
   478  /////////////////////
   479  
   480  // NoContent: the response is empty
   481  // swagger:response noContent
   482  type NoContent struct {
   483  	// in: body
   484  	Body struct {
   485  		// HTTP status code
   486  		// example: 204
   487  		// default: 204
   488  		Code    int32 `json:"code"`
   489  		Message error `json:"message"`
   490  	} `json:"body"`
   491  }
   492  
   493  // BadRequestError: the client request is incorrect
   494  //
   495  // swagger:response badRequestError
   496  type BadRequestError struct {
   497  	// in: body
   498  	Body struct {
   499  		// HTTP status code
   500  		// example: 400
   501  		// default: 400
   502  		Code    int32 `json:"code"`
   503  		Message error `json:"message"`
   504  	} `json:"body"`
   505  }
   506  
   507  // A NotFoundError is the error message that is generated when server could not find what was requested.
   508  //
   509  // swagger:response notFoundError
   510  type NotFoundError struct {
   511  	// in: body
   512  	Body struct {
   513  		// HTTP status code
   514  		// example: 404
   515  		// default: 404
   516  		Code    int32 `json:"code"`
   517  		Message error `json:"message"`
   518  	} `json:"body"`
   519  }
   520  
   521  // A NotAcceptable is the error message that means request can't be accepted
   522  //
   523  // swagger:response notAcceptableError
   524  type NotAcceptableError struct {
   525  	// in: body
   526  	Body struct {
   527  		// HTTP status code
   528  		// example: 404
   529  		// default: 404
   530  		Code    int32 `json:"code"`
   531  		Message error `json:"message"`
   532  	} `json:"body"`
   533  }
   534  
   535  // A Internal is the error message that means something has gone wrong
   536  //
   537  // swagger:response internalError
   538  type InternalError struct {
   539  	// in: body
   540  	Body struct {
   541  		// HTTP status code
   542  		// example: 500
   543  		// default: 500
   544  		Code    int32 `json:"code"`
   545  		Message error `json:"message"`
   546  	} `json:"body"`
   547  }
   548  
   549  // A Internal is the error message that means something has gone wrong
   550  //
   551  // swagger:response serviceUnavailableError
   552  type serviceUnavailableError struct {
   553  	// in: body
   554  	Body struct {
   555  		// HTTP status code
   556  		// example: 503
   557  		// default: 503
   558  		Code    int32 `json:"code"`
   559  		Message error `json:"message"`
   560  	} `json:"body"`
   561  }
   562  
   563  // HTTP status code 200 and statusInfo model in data
   564  // swagger:response statusInfo
   565  type swaggStatusInfoResp struct {
   566  	// in:body
   567  	Body status.StatusInfo
   568  }
   569  
   570  // HTTP status code 200 and userGenerated model in data
   571  // swagger:response userSessionData
   572  type swaggTokenGeneratedResp struct {
   573  	// in:body
   574  	Body authentication.UserSessionData
   575  }
   576  
   577  // HTTP status code 200 and cytoscapejs Config in data
   578  // swagger:response graphResponse
   579  type GraphResponse struct {
   580  	// in:body
   581  	Body cytoscape.Config
   582  }
   583  
   584  // HTTP status code 200 and IstioConfigList model in data
   585  // swagger:response istioConfigList
   586  type IstioConfigResponse struct {
   587  	// in:body
   588  	Body models.IstioConfigList
   589  }
   590  
   591  // Listing all services in the namespace
   592  // swagger:response serviceListResponse
   593  type ServiceListResponse struct {
   594  	// in:body
   595  	Body models.ServiceList
   596  }
   597  
   598  // Listing all workloads in the namespace
   599  // swagger:response workloadListResponse
   600  type WorkloadListResponse struct {
   601  	// in:body
   602  	Body models.WorkloadList
   603  }
   604  
   605  // Listing all apps in the namespace
   606  // swagger:response appListResponse
   607  type AppListResponse struct {
   608  	// in:body
   609  	Body models.AppList
   610  }
   611  
   612  // namespaceAppHealthResponse is a map of app name x health
   613  // swagger:response namespaceAppHealthResponse
   614  type namespaceAppHealthResponse struct {
   615  	// in:body
   616  	Body models.NamespaceAppHealth
   617  }
   618  
   619  // namespaceResponse is a basic namespace
   620  // swagger:response namespaceResponse
   621  type namespaceResponse struct {
   622  	// in:body
   623  	Body models.Namespace
   624  }
   625  
   626  // Listing all the information related to a workload
   627  // swagger:response serviceDetailsResponse
   628  type ServiceDetailsResponse struct {
   629  	// in:body
   630  	Body models.ServiceDetails
   631  }
   632  
   633  // Listing all the information related to a Trace
   634  // swagger:response traceDetailsResponse
   635  type TraceDetailsResponse struct {
   636  	// in:body
   637  	Body []jaegerModels.Trace
   638  }
   639  
   640  // Number of traces in error
   641  // swagger:response errorTracesResponse
   642  type ErrorTracesResponse struct {
   643  	// in:body
   644  	Body int
   645  }
   646  
   647  // Listing all the information related to a Span
   648  // swagger:response spansResponse
   649  type SpansResponse struct {
   650  	// in:body
   651  	Body []model.TracingSpan
   652  }
   653  
   654  // Listing all the information related to a workload
   655  // swagger:response workloadDetails
   656  type WorkloadDetailsResponse struct {
   657  	// in:body
   658  	Body models.Workload
   659  }
   660  
   661  // Metrics response model
   662  // swagger:response metricsResponse
   663  type MetricsResponse struct {
   664  	// in:body
   665  	Body models.MetricsMap
   666  }
   667  
   668  // Dashboard response model
   669  // swagger:response dashboardResponse
   670  type DashboardResponse struct {
   671  	// in:body
   672  	Body models.MonitoringDashboard
   673  }
   674  
   675  // IstioConfig details of an specific Istio Object
   676  // swagger:response istioConfigDetailsResponse
   677  type IstioConfigDetailsResponse struct {
   678  	// in:body
   679  	Body models.IstioConfigDetails
   680  }
   681  
   682  // Detailed information of an specific app
   683  // swagger:response appDetails
   684  type AppDetailsResponse struct {
   685  	// in:body
   686  	Body models.App
   687  }
   688  
   689  // List of Namespaces
   690  // swagger:response namespaceList
   691  type NamespaceListResponse struct {
   692  	// in:body
   693  	Body []models.Namespace
   694  }
   695  
   696  // Return all the descriptor data related to Grafana
   697  // swagger:response grafanaInfoResponse
   698  type GrafanaInfoResponse struct {
   699  	// in: body
   700  	Body models.GrafanaInfo
   701  }
   702  
   703  // Return all the descriptor data related to Tracing
   704  // swagger:response jaegerInfoResponse
   705  type JaegerInfoResponse struct {
   706  	// in: body
   707  	Body models.TracingInfo
   708  }
   709  
   710  // Return the information necessary to handle login
   711  // swagger:response authenticationInfo
   712  type AuthenticationInfoResponse struct {
   713  	Strategy              string
   714  	AuthorizationEndpoint string
   715  }
   716  
   717  // Return the mTLS status of the whole Mesh
   718  // swagger:response meshTlsResponse
   719  type MeshTlsResponse struct {
   720  	// in:body
   721  	Body models.MTLSStatus
   722  }
   723  
   724  // Return the mTLS status of a specific Namespace
   725  // swagger:response namespaceTlsResponse
   726  type NamespaceTlsResponse struct {
   727  	// in:body
   728  	Body models.MTLSStatus
   729  }
   730  
   731  // Return the validation status of a specific Namespace
   732  // swagger:response namespaceValidationSummaryResponse
   733  type NamespaceValidationSummaryResponse struct {
   734  	// in:body
   735  	Body models.IstioValidationSummary
   736  }
   737  
   738  // Return a dump of the configuration of a given envoy proxy
   739  // swagger:response configDump
   740  type ConfigDumpResponse struct {
   741  	// in:body
   742  	Body models.EnvoyProxyDump
   743  }
   744  
   745  // Return a dump of the configuration of a given envoy proxy
   746  // swagger:response configDumpResource
   747  type ConfigDumpResourceResponse struct {
   748  	// in:body
   749  	Body map[string]interface{}
   750  }
   751  
   752  //////////////////
   753  // SWAGGER MODELS
   754  //////////////////
   755  
   756  // List of validations grouped by object type
   757  // swagger:model
   758  type TypedIstioValidations map[string]NameIstioValidation
   759  
   760  // List of validations grouped by object name
   761  // swagger:model
   762  type NameIstioValidation map[string]models.IstioValidation
   763  
   764  // Return caller permissions per namespace and Istio Config type
   765  // swagger:response istioConfigPermissions
   766  type swaggIstioConfigPermissions struct {
   767  	// in:body
   768  	Body models.IstioConfigPermissions
   769  }
   770  
   771  // Return a list of Istio components along its status
   772  // swagger:response istioStatusResponse
   773  type IstioStatusResponse struct {
   774  	// in: body
   775  	Body kubernetes.IstioComponentStatus
   776  }
   777  
   778  // Return a list of certificates information
   779  // swagger:response certsInfoResponse
   780  type CertsInfoResponse struct {
   781  	// in: body
   782  	Body []models.CertInfo
   783  }
   784  
   785  // Posted parameters for a metrics stats query
   786  // swagger:parameters metricsStats
   787  type MetricsStatsQueryBody struct {
   788  	// in: body
   789  	Body models.MetricsStatsQueries
   790  }
   791  
   792  // Response of the metrics stats query
   793  // swagger:response metricsStatsResponse
   794  type MetricsStatsResponse struct {
   795  	// in: body
   796  	Body models.MetricsStats
   797  }
   798  
   799  // swagger:enum ProxyLogLevel
   800  type ProxyLogLevel string
   801  
   802  const (
   803  	ProxyLogLevelOff      ProxyLogLevel = "off"
   804  	ProxyLogLevelTrace    ProxyLogLevel = "trace"
   805  	ProxyLogLevelDebug    ProxyLogLevel = "debug"
   806  	ProxyLogLevelInfo     ProxyLogLevel = "info"
   807  	ProxyLogLevelWarning  ProxyLogLevel = "warning"
   808  	ProxyLogLevelError    ProxyLogLevel = "error"
   809  	ProxyLogLevelCritical ProxyLogLevel = "critical"
   810  )