github.com/anuvu/tyk@v2.9.0-beta9-dl-apic+incompatible/cli/linter/schema.json (about)

     1  {
     2    "$schema": "http://json-schema.org/draft-04/schema#",
     3    "type": "object",
     4    "additionalProperties": false,
     5    "definitions": {
     6      "StorageOptions": {
     7        "type": [
     8          "object",
     9          "null"
    10        ],
    11        "additionalProperties": false,
    12        "properties": {
    13          "database": {
    14            "type": "integer"
    15          },
    16          "enable_cluster": {
    17            "type": "boolean"
    18          },
    19          "use_ssl": {
    20            "type": "boolean"
    21          },
    22          "ssl_insecure_skip_verify": {
    23            "type": "boolean"
    24          },
    25          "host": {
    26            "type": "string",
    27            "format": "host-no-port"
    28          },
    29          "hosts": {
    30            "type": [
    31              "array",
    32              "null"
    33            ]
    34          },
    35          "optimisation_max_active": {
    36            "type": "integer"
    37          },
    38          "optimisation_max_idle": {
    39            "type": "integer"
    40          },
    41          "timeout": {
    42            "type": "integer"
    43          },
    44          "password": {
    45            "type": "string"
    46          },
    47          "port": {
    48            "type": "integer"
    49          },
    50          "type": {
    51            "type": "string",
    52            "enum": [
    53              "",
    54              "redis"
    55            ]
    56          },
    57          "username": {
    58            "type": "string"
    59          }
    60        }
    61      }
    62    },
    63    "properties": {
    64      "allow_insecure_configs": {
    65        "type": "boolean"
    66      },
    67      "allow_master_keys": {
    68        "type": "boolean"
    69      },
    70      "allow_remote_config": {
    71        "type": "boolean"
    72      },
    73      "analytics_config": {
    74        "type": [
    75          "object",
    76          "null"
    77        ],
    78        "additionalProperties": false,
    79        "properties": {
    80          "enable_detailed_recording": {
    81            "type": "boolean"
    82          },
    83          "enable_geo_ip": {
    84            "type": "boolean"
    85          },
    86          "geo_ip_db_path": {
    87            "type": "string",
    88            "format": "path"
    89          },
    90          "ignored_ips": {
    91            "type": [
    92              "array",
    93              "null"
    94            ]
    95          },
    96          "normalise_urls": {
    97            "type": [
    98              "object",
    99              "null"
   100            ],
   101            "additionalProperties": false,
   102            "properties": {
   103              "custom_patterns": {
   104                "type": [
   105                  "array",
   106                  "null"
   107                ]
   108              },
   109              "enabled": {
   110                "type": "boolean"
   111              },
   112              "normalise_numbers": {
   113                "type": "boolean"
   114              },
   115              "normalise_uuids": {
   116                "type": "boolean"
   117              }
   118            }
   119          },
   120          "pool_size": {
   121            "type": "integer"
   122          },
   123          "records_buffer_size": {
   124            "type": "integer"
   125          },
   126          "storage_expiration_time": {
   127            "type": "integer"
   128          },
   129          "type": {
   130            "type": "string"
   131          }
   132        }
   133      },
   134      "app_path": {
   135        "type": "string",
   136        "format": "path"
   137      },
   138      "auth_override": {
   139        "type": [
   140          "object",
   141          "null"
   142        ],
   143        "additionalProperties": false,
   144        "properties": {
   145          "auth_provider": {
   146            "type": [
   147              "object",
   148              "null"
   149            ],
   150            "additionalProperties": false,
   151            "properties": {
   152              "meta": {
   153                "type": [
   154                  "array",
   155                  "null"
   156                ]
   157              },
   158              "name": {
   159                "type": "string"
   160              },
   161              "storage_engine": {
   162                "type": "string"
   163              }
   164            }
   165          },
   166          "force_auth_provider": {
   167            "type": "boolean"
   168          },
   169          "force_session_provider": {
   170            "type": "boolean"
   171          },
   172          "session_provider": {
   173            "type": [
   174              "object",
   175              "null"
   176            ],
   177            "additionalProperties": false,
   178            "properties": {
   179              "meta": {
   180                "type": [
   181                  "array",
   182                  "null"
   183                ]
   184              },
   185              "name": {
   186                "type": "string"
   187              },
   188              "storage_engine": {
   189                "type": "string"
   190              }
   191            }
   192          }
   193        }
   194      },
   195      "bundle_base_url": {
   196        "type": "string"
   197      },
   198      "cache_storage": {
   199        "$ref": "#/definitions/StorageOptions"
   200      },
   201      "close_connections": {
   202        "type": "boolean"
   203      },
   204      "proxy_close_connections": {
   205        "type": "boolean"
   206      },
   207      "close_idle_connections": {
   208        "type": "boolean"
   209      },
   210      "control_api_hostname": {
   211        "type": "string"
   212      },
   213      "control_api_port": {
   214        "type": "integer"
   215      },
   216      "coprocess_options": {
   217        "type": [
   218          "object",
   219          "null"
   220        ],
   221        "additionalProperties": false,
   222        "properties": {
   223          "coprocess_grpc_server": {
   224            "type": "string"
   225          },
   226          "enable_coprocess": {
   227            "type": "boolean"
   228          },
   229          "python_path_prefix": {
   230            "type": "string"
   231          }
   232        }
   233      },
   234      "db_app_conf_options": {
   235        "type": [
   236          "object",
   237          "null"
   238        ],
   239        "additionalProperties": false,
   240        "properties": {
   241          "connection_string": {
   242            "type": "string"
   243          },
   244          "node_is_segmented": {
   245            "type": "boolean"
   246          },
   247          "tags": {
   248            "type": [
   249              "array",
   250              "null"
   251            ],
   252            "items": {
   253              "type": "string"
   254            }
   255          }
   256        }
   257      },
   258      "version_header": {
   259        "type": "string"
   260      },
   261      "disable_dashboard_zeroconf": {
   262        "type": "boolean"
   263      },
   264      "disable_virtual_path_blobs": {
   265        "type": "boolean"
   266      },
   267      "drl_notification_frequency": {
   268        "type": "integer"
   269      },
   270      "enable_analytics": {
   271        "type": "boolean"
   272      },
   273      "enable_api_segregation": {
   274        "type": "boolean"
   275      },
   276      "enable_bundle_downloader": {
   277        "type": "boolean"
   278      },
   279      "enable_custom_domains": {
   280        "type": "boolean"
   281      },
   282      "enable_jsvm": {
   283        "type": "boolean"
   284      },
   285      "jsvm_timeout": {
   286        "type": "integer"
   287      },
   288      "enable_non_transactional_rate_limiter": {
   289        "type": "boolean"
   290      },
   291      "enable_redis_rolling_limiter": {
   292        "type": "boolean"
   293      },
   294      "enable_sentinel_rate_limiter": {
   295        "type": "boolean"
   296      },
   297      "enable_separate_cache_store": {
   298        "type": "boolean"
   299      },
   300      "enforce_org_data_age": {
   301        "type": "boolean"
   302      },
   303      "enforce_org_data_detail_logging": {
   304        "type": "boolean"
   305      },
   306      "enforce_org_quotas": {
   307        "type": "boolean"
   308      },
   309      "event_handlers": {
   310        "type": [
   311          "object",
   312          "null"
   313        ],
   314        "additionalProperties": false,
   315        "properties": {
   316          "events": {
   317            "type": [
   318              "object",
   319              "null"
   320            ],
   321            "additionalProperties": false
   322          }
   323        }
   324      },
   325      "event_trigers_defunct": {
   326        "type": [
   327          "array",
   328          "null"
   329        ]
   330      },
   331      "event_triggers_defunct": {
   332        "type": [
   333          "array",
   334          "null"
   335        ]
   336      },
   337      "experimental_process_org_off_thread": {
   338        "type": "boolean"
   339      },
   340      "force_global_session_lifetime": {
   341        "type": "boolean"
   342      },
   343      "global_session_lifetime": {
   344        "type": "integer"
   345      },
   346      "graylog_network_addr": {
   347        "type": "string"
   348      },
   349      "hash_keys": {
   350        "type": "boolean"
   351      },
   352      "hash_key_function": {
   353        "type": "string",
   354        "enum": [
   355          "",
   356          "murmur32",
   357          "murmur64",
   358          "murmur128",
   359          "sha256"
   360        ]
   361      },
   362      "health_check": {
   363        "type": [
   364          "object",
   365          "null"
   366        ],
   367        "additionalProperties": false,
   368        "properties": {
   369          "enable_health_checks": {
   370            "type": "boolean"
   371          },
   372          "health_check_value_timeouts": {
   373            "type": "integer"
   374          }
   375        }
   376      },
   377      "dns_cache": {
   378        "type": [
   379          "object",
   380          "null"
   381        ],
   382        "additionalProperties": false,
   383        "properties": {
   384          "enabled": {
   385            "type": "boolean"
   386          },
   387          "ttl": {
   388            "type": "integer",
   389            "minimum": -1
   390          },
   391          "multiple_ips_handle_strategy": {
   392            "type": "string",
   393            "enum": [
   394              "pick_first",
   395              "random",
   396              "no_cache"
   397            ]
   398          }
   399        }
   400      },
   401      "hide_generator_header": {
   402        "type": "boolean"
   403      },
   404      "hostname": {
   405        "type": "string"
   406      },
   407      "http_server_options": {
   408        "type": [
   409          "object",
   410          "null"
   411        ],
   412        "additionalProperties": false,
   413        "properties": {
   414          "certificates": {
   415            "type": [
   416              "array",
   417              "null"
   418            ],
   419            "items": {
   420              "type": [
   421                "object",
   422                "null"
   423              ],
   424              "additionalProperties": false,
   425              "properties": {
   426                "domain_name": {
   427                  "type": "string"
   428                },
   429                "cert_file": {
   430                  "type": "string"
   431                },
   432                "key_file": {
   433                  "type": "string"
   434                }
   435              }
   436            }
   437          },
   438          "enable_websockets": {
   439            "type": "boolean"
   440          },
   441          "flush_interval": {
   442            "type": "integer"
   443          },
   444          "min_version": {
   445            "type": "integer"
   446          },
   447          "override_defaults": {
   448            "type": "boolean"
   449          },
   450          "read_timeout": {
   451            "type": "integer"
   452          },
   453          "server_name": {
   454            "type": "string"
   455          },
   456          "skip_url_cleaning": {
   457            "type": "boolean"
   458          },
   459          "skip_target_path_escaping": {
   460            "type": "boolean"
   461          },
   462          "ssl_insecure_skip_verify": {
   463            "type": "boolean"
   464          },
   465          "use_ssl": {
   466            "type": "boolean"
   467          },
   468          "use_ssl_le": {
   469            "type": "boolean"
   470          },
   471          "enable_http2": {
   472            "type": "boolean"
   473          },
   474          "write_timeout": {
   475            "type": "integer"
   476          },
   477          "ssl_certificates": {
   478            "type": [
   479              "array",
   480              "null"
   481            ],
   482            "items": {
   483              "type": "string"
   484            }
   485          },
   486          "ssl_ciphers": {
   487            "type": [
   488              "array",
   489              "null"
   490            ],
   491            "items": {
   492              "type": "string"
   493            }
   494          }
   495        }
   496      },
   497      "legacy_enable_allowance_countdown": {
   498        "type": "boolean"
   499      },
   500      "listen_address": {
   501        "type": "string",
   502        "format": "host-no-port"
   503      },
   504      "listen_port": {
   505        "type": "integer"
   506      },
   507      "local_session_cache": {
   508        "type": [
   509          "object",
   510          "null"
   511        ],
   512        "additionalProperties": false,
   513        "properties": {
   514          "cached_session_eviction": {
   515            "type": "integer"
   516          },
   517          "cached_session_timeout": {
   518            "type": "integer"
   519          },
   520          "disable_cached_session_state": {
   521            "type": "boolean"
   522          }
   523        }
   524      },
   525      "log_level": {
   526        "type": "string",
   527        "enum": [
   528          "",
   529          "debug",
   530          "info",
   531          "warn",
   532          "error"
   533        ]
   534      },
   535      "enable_http_profiler": {
   536        "type": "boolean"
   537      },
   538      "tracing": {
   539        "type": "object",
   540        "additionalProperties": false,
   541        "properties": {
   542          "name": {
   543            "type": "string"
   544          },
   545          "enabled": {
   546            "type": "boolean"
   547          },
   548          "options": {
   549            "type": [
   550              "object",
   551              "null"
   552            ]
   553          }
   554        }
   555      },
   556      "logstash_network_addr": {
   557        "type": "string"
   558      },
   559      "logstash_transport": {
   560        "type": "string"
   561      },
   562      "management_node": {
   563        "type": "boolean"
   564      },
   565      "max_idle_connections_per_host": {
   566        "type": "integer"
   567      },
   568      "max_idle_connections": {
   569        "type": "integer"
   570      },
   571      "max_conn_time": {
   572        "type": "integer"
   573      },
   574      "middleware_path": {
   575        "type": "string",
   576        "format": "path"
   577      },
   578      "monitor": {
   579        "type": [
   580          "object",
   581          "null"
   582        ],
   583        "additionalProperties": false,
   584        "properties": {
   585          "configuration": {
   586            "type": [
   587              "object",
   588              "null"
   589            ],
   590            "additionalProperties": false,
   591            "properties": {
   592              "event_timeout": {
   593                "type": "integer"
   594              },
   595              "header_map": {
   596                "type": [
   597                  "array",
   598                  "null"
   599                ]
   600              },
   601              "method": {
   602                "type": "string"
   603              },
   604              "target_path": {
   605                "type": "string"
   606              },
   607              "template_path": {
   608                "type": "string",
   609                "format": "path"
   610              }
   611            }
   612          },
   613          "enable_trigger_monitors": {
   614            "type": "boolean"
   615          },
   616          "global_trigger_limit": {
   617            "type": "integer"
   618          },
   619          "monitor_org_keys": {
   620            "type": "boolean"
   621          },
   622          "monitor_user_keys": {
   623            "type": "boolean"
   624          }
   625        }
   626      },
   627      "node_secret": {
   628        "type": "string"
   629      },
   630      "oauth_redirect_uri_separator": {
   631        "type": "string"
   632      },
   633      "oauth_refresh_token_expire": {
   634        "type": "integer"
   635      },
   636      "oauth_token_expire": {
   637        "type": "integer"
   638      },
   639      "oauth_token_expired_retain_period": {
   640        "type": "integer"
   641      },
   642      "optimisations_use_async_session_write": {
   643        "type": "boolean"
   644      },
   645      "session_update_pool_size": {
   646        "type": "integer"
   647      },
   648      "session_update_buffer_size": {
   649        "type": "integer"
   650      },
   651      "pid_file_location": {
   652        "type": "string"
   653      },
   654      "policies": {
   655        "type": [
   656          "object",
   657          "null"
   658        ],
   659        "additionalProperties": false,
   660        "properties": {
   661          "allow_explicit_policy_id": {
   662            "type": "boolean"
   663          },
   664          "policy_connection_string": {
   665            "type": "string"
   666          },
   667          "policy_record_name": {
   668            "type": "string"
   669          },
   670          "policy_source": {
   671            "type": "string",
   672            "enum": [
   673              "",
   674              "service",
   675              "rpc"
   676            ]
   677          }
   678        }
   679      },
   680      "proxy_default_timeout": {
   681        "type": "integer"
   682      },
   683      "proxy_enable_http2": {
   684        "type": "boolean"
   685      },
   686      "proxy_ssl_insecure_skip_verify": {
   687        "type": "boolean"
   688      },
   689      "proxy_ssl_min_version": {
   690        "type": "integer"
   691      },
   692      "proxy_ssl_ciphers": {
   693        "type": [
   694          "array",
   695          "null"
   696        ],
   697        "items": {
   698          "type": "string"
   699        }
   700      },
   701      "public_key_path": {
   702        "type": "string",
   703        "format": "path"
   704      },
   705      "reload_wait_time": {
   706        "type": "integer"
   707      },
   708      "secret": {
   709        "type": "string"
   710      },
   711      "sentry_code": {
   712        "type": "string"
   713      },
   714      "service_discovery": {
   715        "type": [
   716          "object",
   717          "null"
   718        ],
   719        "additionalProperties": false,
   720        "properties": {
   721          "default_cache_timeout": {
   722            "type": "integer"
   723          }
   724        }
   725      },
   726      "slave_options": {
   727        "type": [
   728          "object",
   729          "null"
   730        ],
   731        "additionalProperties": false,
   732        "properties": {
   733          "api_key": {
   734            "type": "string"
   735          },
   736          "bind_to_slugs": {
   737            "type": "boolean"
   738          },
   739          "call_timeout": {
   740            "type": "integer"
   741          },
   742          "connection_string": {
   743            "type": "string"
   744          },
   745          "disable_keyspace_sync": {
   746            "type": "boolean"
   747          },
   748          "enable_rpc_cache": {
   749            "type": "boolean"
   750          },
   751          "group_id": {
   752            "type": "string"
   753          },
   754          "ping_timeout": {
   755            "type": "integer"
   756          },
   757          "rpc_key": {
   758            "type": "string"
   759          },
   760          "ssl_insecure_skip_verify": {
   761            "type": "boolean"
   762          },
   763          "use_rpc": {
   764            "type": "boolean"
   765          },
   766          "use_ssl": {
   767            "type": "boolean"
   768          },
   769          "rpc_pool_size": {
   770            "type": "integer"
   771          }
   772        }
   773      },
   774      "statsd_connection_string": {
   775        "type": "string"
   776      },
   777      "statsd_prefix": {
   778        "type": "string"
   779      },
   780      "storage": {
   781        "$ref": "#/definitions/StorageOptions"
   782      },
   783      "suppress_default_org_store": {
   784        "type": "boolean"
   785      },
   786      "suppress_redis_signal_reload": {
   787        "type": "boolean"
   788      },
   789      "syslog_network_addr": {
   790        "type": "string"
   791      },
   792      "syslog_transport": {
   793        "type": "string"
   794      },
   795      "template_path": {
   796        "type": "string",
   797        "format": "path"
   798      },
   799      "tyk_js_path": {
   800        "type": "string",
   801        "format": "path"
   802      },
   803      "uptime_tests": {
   804        "type": [
   805          "object",
   806          "null"
   807        ],
   808        "additionalProperties": false,
   809        "properties": {
   810          "config": {
   811            "type": [
   812              "object",
   813              "null"
   814            ],
   815            "additionalProperties": false,
   816            "properties": {
   817              "checker_pool_size": {
   818                "type": "integer"
   819              },
   820              "enable_uptime_analytics": {
   821                "type": "boolean"
   822              },
   823              "failure_trigger_sample_size": {
   824                "type": "integer"
   825              },
   826              "time_wait": {
   827                "type": "integer"
   828              }
   829            }
   830          },
   831          "disable": {
   832            "type": "boolean"
   833          }
   834        }
   835      },
   836      "use_db_app_configs": {
   837        "type": "boolean"
   838      },
   839      "use_graylog": {
   840        "type": "boolean"
   841      },
   842      "use_logstash": {
   843        "type": "boolean"
   844      },
   845      "use_redis_log": {
   846        "type": "boolean"
   847      },
   848      "use_sentry": {
   849        "type": "boolean"
   850      },
   851      "use_syslog": {
   852        "type": "boolean"
   853      },
   854      "security": {
   855        "type": [
   856          "object",
   857          "null"
   858        ],
   859        "additionalProperties": false,
   860        "properties": {
   861          "private_certificate_encoding_secret": {
   862            "type": "string"
   863          },
   864          "control_api_use_mutual_tls": {
   865            "type": "boolean"
   866          },
   867          "pinned_public_keys": {
   868            "type": [
   869              "array",
   870              "null"
   871            ],
   872            "items": {
   873              "type": "object"
   874            }
   875          },
   876          "certificates": {
   877            "type": [
   878              "object",
   879              "null"
   880            ],
   881            "additionalProperties": false,
   882            "properties": {
   883              "upstream": {
   884                "type": [
   885                  "object",
   886                  "null"
   887                ]
   888              },
   889              "apis": {
   890                "type": [
   891                  "array",
   892                  "null"
   893                ],
   894                "items": {
   895                  "type": "string"
   896                }
   897              },
   898              "control_api": {
   899                "type": [
   900                  "array",
   901                  "null"
   902                ],
   903                "items": {
   904                  "type": "string"
   905                }
   906              },
   907              "dashboard_api": {
   908                "type": [
   909                  "array",
   910                  "null"
   911                ],
   912                "items": {
   913                  "type": "string"
   914                }
   915              },
   916              "mdcb_api": {
   917                "type": [
   918                  "array",
   919                  "null"
   920                ],
   921                "items": {
   922                  "type": "string"
   923                }
   924              }
   925            }
   926          }
   927        }
   928      },
   929      "enable_key_logging": {
   930        "type": "boolean"
   931      },
   932      "newrelic": {
   933        "type": [
   934          "object",
   935          "null"
   936        ],
   937        "additionalProperties": false,
   938        "properties": {
   939          "app_name": {
   940            "type": "string"
   941          },
   942          "license_key": {
   943            "type": "string"
   944          }
   945        }
   946      },
   947      "enable_hashed_keys_listing": {
   948        "type": "boolean"
   949      },
   950      "min_token_length": {
   951        "type": "integer"
   952      },
   953      "disable_regexp_cache": {
   954        "type": "boolean"
   955      },
   956      "regexp_cache_expire": {
   957        "type": "integer"
   958      },
   959      "proxy_ssl_disable_renegotiation": {
   960        "type": "boolean"
   961      },
   962      "health_check_endpoint_name": {
   963        "type": "string"
   964      },
   965      "enable_http_profiler": {
   966        "type": "boolean"
   967      }
   968    }
   969  }