[{"data":1,"prerenderedAt":2406},["ShallowReactive",2],{"navigation_docs":3,"-quayel-gateway-conditions":91,"-quayel-gateway-conditions-surround":2405},[4],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":90},"Quayel Gateway","i-lucide-network","\u002Fquayel-gateway","quayel-gateway",[10,29,68],{"title":11,"icon":12,"path":13,"stem":14,"children":15},"Getting Started","i-lucide-rocket","\u002Fquayel-gateway\u002Fgetting-started","quayel-gateway\u002F01.getting-started\u002Findex",[16,19,24],{"title":17,"path":13,"stem":14,"icon":18},"Introduction","i-lucide-book-open",{"title":20,"path":21,"stem":22,"icon":23},"Installation","\u002Fquayel-gateway\u002Fgetting-started\u002Finstallation","quayel-gateway\u002F01.getting-started\u002F1.installation","i-lucide-container",{"title":25,"path":26,"stem":27,"icon":28},"Project Structure","\u002Fquayel-gateway\u002Fgetting-started\u002Fproject-structure","quayel-gateway\u002F01.getting-started\u002F2.project-structure","i-lucide-folder-tree",{"title":30,"icon":31,"path":32,"stem":33,"children":34},"Plugins","i-lucide-puzzle","\u002Fquayel-gateway\u002Fplugins","quayel-gateway\u002F02.plugins\u002Findex",[35,38,43,48,53,58,63],{"title":36,"path":32,"stem":33,"icon":37},"Overview","i-lucide-workflow",{"title":39,"path":40,"stem":41,"icon":42},"IP Intelligence","\u002Fquayel-gateway\u002Fplugins\u002Fip-intel","quayel-gateway\u002F02.plugins\u002F1.ip-intel","i-lucide-radar",{"title":44,"path":45,"stem":46,"icon":47},"Firewall","\u002Fquayel-gateway\u002Fplugins\u002Ffirewall","quayel-gateway\u002F02.plugins\u002F2.firewall","i-lucide-shield",{"title":49,"path":50,"stem":51,"icon":52},"Rate Limiting","\u002Fquayel-gateway\u002Fplugins\u002Frate-limiting","quayel-gateway\u002F02.plugins\u002F3.rate-limiting","i-lucide-gauge",{"title":54,"path":55,"stem":56,"icon":57},"Cache","\u002Fquayel-gateway\u002Fplugins\u002Fcache","quayel-gateway\u002F02.plugins\u002F4.cache","i-lucide-database",{"title":59,"path":60,"stem":61,"icon":62},"Load Balancer","\u002Fquayel-gateway\u002Fplugins\u002Fload-balancer","quayel-gateway\u002F02.plugins\u002F5.load-balancer","i-lucide-scale",{"title":64,"path":65,"stem":66,"icon":67},"Auto-SSL","\u002Fquayel-gateway\u002Fplugins\u002Fauto-ssl","quayel-gateway\u002F02.plugins\u002F6.auto-ssl","i-lucide-lock",{"title":69,"icon":70,"path":71,"stem":72,"children":73},"AI","i-lucide-bot","\u002Fquayel-gateway\u002Fai","quayel-gateway\u002F03.ai\u002Findex",[74,75,80,85],{"title":36,"path":71,"stem":72,"icon":70},{"title":76,"path":77,"stem":78,"icon":79},"The Quayel Gateway Skill","\u002Fquayel-gateway\u002Fai\u002Fskill","quayel-gateway\u002F03.ai\u002F1.skill","i-lucide-wand-sparkles",{"title":81,"path":82,"stem":83,"icon":84},"Installing the Skill","\u002Fquayel-gateway\u002Fai\u002Finstallation","quayel-gateway\u002F03.ai\u002F2.installation","i-lucide-download",{"title":86,"path":87,"stem":88,"icon":89},"AI Agent Guide","\u002Fquayel-gateway\u002Fai\u002Fagent-guide","quayel-gateway\u002F03.ai\u002F3.agent-guide","i-lucide-braces",false,{"id":92,"title":93,"body":94,"description":2397,"extension":2398,"links":2399,"meta":2400,"navigation":90,"path":2401,"seo":2402,"stem":2403,"__hash__":2404},"docs\u002Fquayel-gateway\u002F04.conditions.md","Conditions",{"type":95,"value":96,"toc":2374},"minimark",[97,102,106,111,226,306,310,315,436,440,639,643,726,730,741,794,798,1084,1088,1097,1101,1104,1247,1250,1253,1458,1468,1472,1680,1683,1700,1704,1708,1838,1842,1956,1960,2090,2094,2194,2198,2344,2348,2351,2370],[98,99,101],"h1",{"id":100},"conditions-system","Conditions System",[103,104,105],"p",{},"Conditions are the core matching mechanism used by Firewall, Rate Limiting, Cache, and Load Balancer plugins. A condition compares a resolved value from the request context against an expected value.",[107,108,110],"h2",{"id":109},"structure","Structure",[112,113,118],"pre",{"className":114,"code":115,"language":116,"meta":117,"style":117},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"left\": \"\u003Cpath>\",\n  \"operator\": \"\u003Coperator>\",\n  \"value\": \"\u003Cexpected_value>\",\n  \"next\": \"and\"\n}\n","json","",[119,120,121,130,158,179,200,220],"code",{"__ignoreMap":117},[122,123,126],"span",{"class":124,"line":125},"line",1,[122,127,129],{"class":128},"sMK4o","{\n",[122,131,133,136,140,143,146,149,153,155],{"class":124,"line":132},2,[122,134,135],{"class":128},"  \"",[122,137,139],{"class":138},"spNyl","left",[122,141,142],{"class":128},"\"",[122,144,145],{"class":128},":",[122,147,148],{"class":128}," \"",[122,150,152],{"class":151},"sfazB","\u003Cpath>",[122,154,142],{"class":128},[122,156,157],{"class":128},",\n",[122,159,161,163,166,168,170,172,175,177],{"class":124,"line":160},3,[122,162,135],{"class":128},[122,164,165],{"class":138},"operator",[122,167,142],{"class":128},[122,169,145],{"class":128},[122,171,148],{"class":128},[122,173,174],{"class":151},"\u003Coperator>",[122,176,142],{"class":128},[122,178,157],{"class":128},[122,180,182,184,187,189,191,193,196,198],{"class":124,"line":181},4,[122,183,135],{"class":128},[122,185,186],{"class":138},"value",[122,188,142],{"class":128},[122,190,145],{"class":128},[122,192,148],{"class":128},[122,194,195],{"class":151},"\u003Cexpected_value>",[122,197,142],{"class":128},[122,199,157],{"class":128},[122,201,203,205,208,210,212,214,217],{"class":124,"line":202},5,[122,204,135],{"class":128},[122,206,207],{"class":138},"next",[122,209,142],{"class":128},[122,211,145],{"class":128},[122,213,148],{"class":128},[122,215,216],{"class":151},"and",[122,218,219],{"class":128},"\"\n",[122,221,223],{"class":124,"line":222},6,[122,224,225],{"class":128},"}\n",[227,228,229,245],"table",{},[230,231,232],"thead",{},[233,234,235,239,242],"tr",{},[236,237,238],"th",{},"Field",[236,240,241],{},"Type",[236,243,244],{},"Description",[246,247,248,261,272,284],"tbody",{},[233,249,250,255,258],{},[251,252,253],"td",{},[119,254,139],{},[251,256,257],{},"string",[251,259,260],{},"Path to resolve from request context",[233,262,263,267,269],{},[251,264,265],{},[119,266,165],{},[251,268,257],{},[251,270,271],{},"Comparison operator",[233,273,274,278,281],{},[251,275,276],{},[119,277,186],{},[251,279,280],{},"any",[251,282,283],{},"Expected value (string, number, bool, array)",[233,285,286,290,292],{},[251,287,288],{},[119,289,207],{},[251,291,257],{},[251,293,294,295,298,299,302,303,305],{},"Logical operator to next condition (",[119,296,297],{},"\"and\""," or ",[119,300,301],{},"\"or\"",", default ",[119,304,297],{},")",[107,307,309],{"id":308},"condition-paths","Condition paths",[311,312,314],"h3",{"id":313},"request-fields","Request fields",[227,316,317,328],{},[230,318,319],{},[233,320,321,324,326],{},[236,322,323],{},"Path",[236,325,241],{},[236,327,244],{},[246,329,330,346,361,376,391,406,421],{},[233,331,332,341,343],{},[251,333,334,337,338],{},[119,335,336],{},"req.host"," \u002F ",[119,339,340],{},"http.host",[251,342,257],{},[251,344,345],{},"Request host header",[233,347,348,356,358],{},[251,349,350,337,353],{},[119,351,352],{},"req.path",[119,354,355],{},"http.path",[251,357,257],{},[251,359,360],{},"Request path (including query string)",[233,362,363,371,373],{},[251,364,365,337,368],{},[119,366,367],{},"req.method",[119,369,370],{},"http.method",[251,372,257],{},[251,374,375],{},"HTTP method (GET, POST, etc.)",[233,377,378,386,388],{},[251,379,380,337,383],{},[119,381,382],{},"req.scheme",[119,384,385],{},"http.scheme",[251,387,257],{},[251,389,390],{},"Request scheme (http, https)",[233,392,393,401,403],{},[251,394,395,337,398],{},[119,396,397],{},"req.ip",[119,399,400],{},"http.ip",[251,402,257],{},[251,404,405],{},"Resolved client IP",[233,407,408,416,418],{},[251,409,410,337,413],{},[119,411,412],{},"req.peer_ip",[119,414,415],{},"http.peer_ip",[251,417,257],{},[251,419,420],{},"Direct connection IP",[233,422,423,431,433],{},[251,424,425,337,428],{},[119,426,427],{},"req.user_agent",[119,429,430],{},"http.user_agent",[251,432,257],{},[251,434,435],{},"User-Agent header",[311,437,439],{"id":438},"ip-intelligence-fields","IP Intelligence fields",[227,441,442,452],{},[230,443,444],{},[233,445,446,448,450],{},[236,447,323],{},[236,449,241],{},[236,451,244],{},[246,453,454,466,478,490,503,515,530,543,555,567,579,591,603,615,627],{},[233,455,456,461,463],{},[251,457,458],{},[119,459,460],{},"ip.country",[251,462,257],{},[251,464,465],{},"Country code (ISO 3166-1 alpha-2)",[233,467,468,473,475],{},[251,469,470],{},[119,471,472],{},"ip.region",[251,474,257],{},[251,476,477],{},"Region\u002Fstate code",[233,479,480,485,487],{},[251,481,482],{},[119,483,484],{},"ip.city",[251,486,257],{},[251,488,489],{},"City name",[233,491,492,497,500],{},[251,493,494],{},[119,495,496],{},"ip.asn",[251,498,499],{},"number",[251,501,502],{},"ASN number",[233,504,505,510,512],{},[251,506,507],{},[119,508,509],{},"ip.as_org",[251,511,257],{},[251,513,514],{},"ASN organization name",[233,516,517,522,524],{},[251,518,519],{},[119,520,521],{},"ip.provider",[251,523,257],{},[251,525,526,527,305],{},"Hosting\u002Fcloud provider label (e.g. ",[119,528,529],{},"\"Hostinger\"",[233,531,532,537,540],{},[251,533,534],{},[119,535,536],{},"ip.is_vpn",[251,538,539],{},"bool",[251,541,542],{},"IP is a known VPN",[233,544,545,550,552],{},[251,546,547],{},[119,548,549],{},"ip.is_tor",[251,551,539],{},[251,553,554],{},"IP is a Tor exit node",[233,556,557,562,564],{},[251,558,559],{},[119,560,561],{},"ip.is_datacenter",[251,563,539],{},[251,565,566],{},"IP is from a datacenter\u002Fhosting",[233,568,569,574,576],{},[251,570,571],{},[119,572,573],{},"ip.is_proxy",[251,575,539],{},[251,577,578],{},"IP is a known proxy",[233,580,581,586,588],{},[251,582,583],{},[119,584,585],{},"ip.is_mobile",[251,587,539],{},[251,589,590],{},"IP is from a mobile network",[233,592,593,598,600],{},[251,594,595],{},[119,596,597],{},"ip.is_residential",[251,599,539],{},[251,601,602],{},"IP is residential",[233,604,605,610,612],{},[251,606,607],{},[119,608,609],{},"ip.is_residential_proxy",[251,611,539],{},[251,613,614],{},"IP is a residential proxy",[233,616,617,622,624],{},[251,618,619],{},[119,620,621],{},"ip.network_type",[251,623,257],{},[251,625,626],{},"Network type classification",[233,628,629,634,636],{},[251,630,631],{},[119,632,633],{},"ip.risk_score",[251,635,499],{},[251,637,638],{},"Risk score (0-100)",[311,640,642],{"id":641},"headers-and-cookies","Headers and cookies",[227,644,645,655],{},[230,646,647],{},[233,648,649,651,653],{},[236,650,323],{},[236,652,241],{},[236,654,244],{},[246,656,657,669,680,692,703,715],{},[233,658,659,664,666],{},[251,660,661],{},[119,662,663],{},"req.header.\u003Cname>",[251,665,257],{},[251,667,668],{},"Request header value",[233,670,671,676,678],{},[251,672,673],{},[119,674,675],{},"http.header.\u003Cname>",[251,677,257],{},[251,679,668],{},[233,681,682,687,689],{},[251,683,684],{},[119,685,686],{},"req.query.\u003Cname>",[251,688,257],{},[251,690,691],{},"Query parameter value",[233,693,694,699,701],{},[251,695,696],{},[119,697,698],{},"http.query.\u003Cname>",[251,700,257],{},[251,702,691],{},[233,704,705,710,712],{},[251,706,707],{},[119,708,709],{},"req.cookie.\u003Cname>",[251,711,257],{},[251,713,714],{},"Cookie value",[233,716,717,722,724],{},[251,718,719],{},[119,720,721],{},"http.cookie.\u003Cname>",[251,723,257],{},[251,725,714],{},[311,727,729],{"id":728},"jwt-claim-extraction","JWT claim extraction",[103,731,732,733,736,737,740],{},"A header path ending in ",[119,734,735],{},".jwt.\u003Cclaim.path>"," decodes the header value as a JWT\n(a leading ",[119,738,739],{},"Bearer "," is stripped), then navigates the payload by dotted claim path:",[227,742,743,752],{},[230,744,745],{},[233,746,747,749],{},[236,748,323],{},[236,750,751],{},"Meaning",[246,753,754,767,780],{},[233,755,756,761],{},[251,757,758],{},[119,759,760],{},"req.header.authorization.jwt.user_id",[251,762,763,766],{},[119,764,765],{},"user_id"," claim of the Bearer token",[233,768,769,774],{},[251,770,771],{},[119,772,773],{},"req.header.authorization.jwt.data.role",[251,775,776,777],{},"nested claim ",[119,778,779],{},"data.role",[233,781,782,787],{},[251,783,784],{},[119,785,786],{},"header.token.jwt.user_id",[251,788,789,790,793],{},"bare ",[119,791,792],{},"header."," prefix also works (same for rate-limit keys)",[107,795,797],{"id":796},"operators","Operators",[227,799,800,812],{},[230,801,802],{},[233,803,804,807,809],{},[236,805,806],{},"Operator",[236,808,244],{},[236,810,811],{},"Example",[246,813,814,833,852,871,889,907,925,941,956,974,992,1011,1029,1047,1066],{},[233,815,816,821,824],{},[251,817,818],{},[119,819,820],{},"equals",[251,822,823],{},"Exact match",[251,825,826,829,830],{},[119,827,828],{},"\"req.method\""," equals ",[119,831,832],{},"\"POST\"",[233,834,835,840,843],{},[251,836,837],{},[119,838,839],{},"not_equals",[251,841,842],{},"Not equal",[251,844,845,848,849],{},[119,846,847],{},"\"ip.country\""," not equals ",[119,850,851],{},"\"US\"",[233,853,854,859,862],{},[251,855,856],{},[119,857,858],{},"contains",[251,860,861],{},"String contains",[251,863,864,867,868],{},[119,865,866],{},"\"req.path\""," contains ",[119,869,870],{},"\"\u002Fapi\u002F\"",[233,872,873,878,881],{},[251,874,875],{},[119,876,877],{},"not_contains",[251,879,880],{},"String does not contain",[251,882,883,885,886],{},[119,884,866],{}," not contains ",[119,887,888],{},"\"\u002Fhealth\"",[233,890,891,896,899],{},[251,892,893],{},[119,894,895],{},"starts_with",[251,897,898],{},"String starts with",[251,900,901,903,904],{},[119,902,866],{}," starts_with ",[119,905,906],{},"\"\u002Fadmin\u002F\"",[233,908,909,914,917],{},[251,910,911],{},[119,912,913],{},"ends_with",[251,915,916],{},"String ends with",[251,918,919,921,922],{},[119,920,866],{}," ends_with ",[119,923,924],{},"\".css\"",[233,926,927,932,935],{},[251,928,929],{},[119,930,931],{},"exists",[251,933,934],{},"Value exists (not null)",[251,936,937,940],{},[119,938,939],{},"\"ip.is_vpn\""," exists",[233,942,943,948,951],{},[251,944,945],{},[119,946,947],{},"not_exists",[251,949,950],{},"Value does not exist",[251,952,953,955],{},[119,954,939],{}," not_exists",[233,957,958,963,966],{},[251,959,960],{},[119,961,962],{},"in",[251,964,965],{},"Value is in array",[251,967,968,970,971],{},[119,969,847],{}," in ",[119,972,973],{},"[\"US\", \"CA\", \"GB\"]",[233,975,976,981,984],{},[251,977,978],{},[119,979,980],{},"not_in",[251,982,983],{},"Value is not in array",[251,985,986,988,989],{},[119,987,847],{}," not_in ",[119,990,991],{},"[\"CN\", \"RU\"]",[233,993,994,999,1002],{},[251,995,996],{},[119,997,998],{},"greater_than",[251,1000,1001],{},"Numeric greater than",[251,1003,1004,1007,1008],{},[119,1005,1006],{},"\"ip.risk_score\""," greater_than ",[119,1009,1010],{},"30",[233,1012,1013,1018,1021],{},[251,1014,1015],{},[119,1016,1017],{},"greater_than_or_equal",[251,1019,1020],{},"Numeric >=",[251,1022,1023,1025,1026],{},[119,1024,1006],{}," greater_than_or_equal ",[119,1027,1028],{},"50",[233,1030,1031,1036,1039],{},[251,1032,1033],{},[119,1034,1035],{},"less_than",[251,1037,1038],{},"Numeric less than",[251,1040,1041,1043,1044],{},[119,1042,1006],{}," less_than ",[119,1045,1046],{},"10",[233,1048,1049,1054,1057],{},[251,1050,1051],{},[119,1052,1053],{},"less_than_or_equal",[251,1055,1056],{},"Numeric \u003C=",[251,1058,1059,1062,1063],{},[119,1060,1061],{},"\"ip.asn\""," less_than_or_equal ",[119,1064,1065],{},"99999",[233,1067,1068,1073,1076],{},[251,1069,1070],{},[119,1071,1072],{},"regex",[251,1074,1075],{},"Regular expression match",[251,1077,1078,1080,1081],{},[119,1079,866],{}," regex ",[119,1082,1083],{},"\"^\u002Fapi\u002Fv[0-9]+\u002F\"",[107,1085,1087],{"id":1086},"logical-operators","Logical operators",[103,1089,1090,1091,1093,1094,145],{},"Multiple conditions are combined with ",[119,1092,216],{}," (default) or ",[119,1095,1096],{},"or",[311,1098,1100],{"id":1099},"and-default","AND (default)",[103,1102,1103],{},"All conditions must match:",[112,1105,1107],{"className":114,"code":1106,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fapi\u002F\" },\n    { \"left\": \"ip.country\", \"operator\": \"not_equals\", \"value\": \"US\" }\n  ]\n}\n",[119,1108,1109,1113,1127,1184,1238,1243],{"__ignoreMap":117},[122,1110,1111],{"class":124,"line":125},[122,1112,129],{"class":128},[122,1114,1115,1117,1120,1122,1124],{"class":124,"line":132},[122,1116,135],{"class":128},[122,1118,1119],{"class":138},"conditions",[122,1121,142],{"class":128},[122,1123,145],{"class":128},[122,1125,1126],{"class":128}," [\n",[122,1128,1129,1132,1134,1137,1139,1141,1143,1145,1147,1150,1152,1154,1156,1158,1160,1162,1164,1166,1168,1170,1172,1174,1176,1179,1181],{"class":124,"line":160},[122,1130,1131],{"class":128},"    {",[122,1133,148],{"class":128},[122,1135,139],{"class":1136},"sBMFI",[122,1138,142],{"class":128},[122,1140,145],{"class":128},[122,1142,148],{"class":128},[122,1144,352],{"class":151},[122,1146,142],{"class":128},[122,1148,1149],{"class":128},",",[122,1151,148],{"class":128},[122,1153,165],{"class":1136},[122,1155,142],{"class":128},[122,1157,145],{"class":128},[122,1159,148],{"class":128},[122,1161,895],{"class":151},[122,1163,142],{"class":128},[122,1165,1149],{"class":128},[122,1167,148],{"class":128},[122,1169,186],{"class":1136},[122,1171,142],{"class":128},[122,1173,145],{"class":128},[122,1175,148],{"class":128},[122,1177,1178],{"class":151},"\u002Fapi\u002F",[122,1180,142],{"class":128},[122,1182,1183],{"class":128}," },\n",[122,1185,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1216,1218,1220,1222,1224,1226,1228,1230,1233,1235],{"class":124,"line":181},[122,1187,1131],{"class":128},[122,1189,148],{"class":128},[122,1191,139],{"class":1136},[122,1193,142],{"class":128},[122,1195,145],{"class":128},[122,1197,148],{"class":128},[122,1199,460],{"class":151},[122,1201,142],{"class":128},[122,1203,1149],{"class":128},[122,1205,148],{"class":128},[122,1207,165],{"class":1136},[122,1209,142],{"class":128},[122,1211,145],{"class":128},[122,1213,148],{"class":128},[122,1215,839],{"class":151},[122,1217,142],{"class":128},[122,1219,1149],{"class":128},[122,1221,148],{"class":128},[122,1223,186],{"class":1136},[122,1225,142],{"class":128},[122,1227,145],{"class":128},[122,1229,148],{"class":128},[122,1231,1232],{"class":151},"US",[122,1234,142],{"class":128},[122,1236,1237],{"class":128}," }\n",[122,1239,1240],{"class":124,"line":202},[122,1241,1242],{"class":128},"  ]\n",[122,1244,1245],{"class":124,"line":222},[122,1246,225],{"class":128},[311,1248,1249],{"id":1096},"OR",[103,1251,1252],{},"Any condition can match:",[112,1254,1256],{"className":114,"code":1255,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"ip.is_tor\", \"operator\": \"equals\", \"value\": true, \"next\": \"or\" },\n    { \"left\": \"ip.is_vpn\", \"operator\": \"equals\", \"value\": true, \"next\": \"or\" },\n    { \"left\": \"ip.risk_score\", \"operator\": \"greater_than\", \"value\": 30 }\n  ]\n}\n",[119,1257,1258,1262,1274,1337,1399,1449,1453],{"__ignoreMap":117},[122,1259,1260],{"class":124,"line":125},[122,1261,129],{"class":128},[122,1263,1264,1266,1268,1270,1272],{"class":124,"line":132},[122,1265,135],{"class":128},[122,1267,1119],{"class":138},[122,1269,142],{"class":128},[122,1271,145],{"class":128},[122,1273,1126],{"class":128},[122,1275,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1321,1323,1325,1327,1329,1331,1333,1335],{"class":124,"line":160},[122,1277,1131],{"class":128},[122,1279,148],{"class":128},[122,1281,139],{"class":1136},[122,1283,142],{"class":128},[122,1285,145],{"class":128},[122,1287,148],{"class":128},[122,1289,549],{"class":151},[122,1291,142],{"class":128},[122,1293,1149],{"class":128},[122,1295,148],{"class":128},[122,1297,165],{"class":1136},[122,1299,142],{"class":128},[122,1301,145],{"class":128},[122,1303,148],{"class":128},[122,1305,820],{"class":151},[122,1307,142],{"class":128},[122,1309,1149],{"class":128},[122,1311,148],{"class":128},[122,1313,186],{"class":1136},[122,1315,142],{"class":128},[122,1317,145],{"class":128},[122,1319,1320],{"class":128}," true,",[122,1322,148],{"class":128},[122,1324,207],{"class":1136},[122,1326,142],{"class":128},[122,1328,145],{"class":128},[122,1330,148],{"class":128},[122,1332,1096],{"class":151},[122,1334,142],{"class":128},[122,1336,1183],{"class":128},[122,1338,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,1367,1369,1371,1373,1375,1377,1379,1381,1383,1385,1387,1389,1391,1393,1395,1397],{"class":124,"line":181},[122,1340,1131],{"class":128},[122,1342,148],{"class":128},[122,1344,139],{"class":1136},[122,1346,142],{"class":128},[122,1348,145],{"class":128},[122,1350,148],{"class":128},[122,1352,536],{"class":151},[122,1354,142],{"class":128},[122,1356,1149],{"class":128},[122,1358,148],{"class":128},[122,1360,165],{"class":1136},[122,1362,142],{"class":128},[122,1364,145],{"class":128},[122,1366,148],{"class":128},[122,1368,820],{"class":151},[122,1370,142],{"class":128},[122,1372,1149],{"class":128},[122,1374,148],{"class":128},[122,1376,186],{"class":1136},[122,1378,142],{"class":128},[122,1380,145],{"class":128},[122,1382,1320],{"class":128},[122,1384,148],{"class":128},[122,1386,207],{"class":1136},[122,1388,142],{"class":128},[122,1390,145],{"class":128},[122,1392,148],{"class":128},[122,1394,1096],{"class":151},[122,1396,142],{"class":128},[122,1398,1183],{"class":128},[122,1400,1401,1403,1405,1407,1409,1411,1413,1415,1417,1419,1421,1423,1425,1427,1429,1431,1433,1435,1437,1439,1441,1443,1447],{"class":124,"line":202},[122,1402,1131],{"class":128},[122,1404,148],{"class":128},[122,1406,139],{"class":1136},[122,1408,142],{"class":128},[122,1410,145],{"class":128},[122,1412,148],{"class":128},[122,1414,633],{"class":151},[122,1416,142],{"class":128},[122,1418,1149],{"class":128},[122,1420,148],{"class":128},[122,1422,165],{"class":1136},[122,1424,142],{"class":128},[122,1426,145],{"class":128},[122,1428,148],{"class":128},[122,1430,998],{"class":151},[122,1432,142],{"class":128},[122,1434,1149],{"class":128},[122,1436,148],{"class":128},[122,1438,186],{"class":1136},[122,1440,142],{"class":128},[122,1442,145],{"class":128},[122,1444,1446],{"class":1445},"sbssI"," 30",[122,1448,1237],{"class":128},[122,1450,1451],{"class":124,"line":222},[122,1452,1242],{"class":128},[122,1454,1456],{"class":124,"line":1455},7,[122,1457,225],{"class":128},[103,1459,1460,1461,1464,1465,1467],{},"This matches if the IP is a Tor exit ",[1462,1463,1096],"strong",{}," a VPN ",[1462,1466,1096],{}," has risk score > 30.",[311,1469,1471],{"id":1470},"mixed-andor","Mixed AND\u002FOR",[112,1473,1475],{"className":114,"code":1474,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fapi\u002F\", \"next\": \"and\" },\n    { \"left\": \"ip.is_tor\", \"operator\": \"equals\", \"value\": true, \"next\": \"or\" },\n    { \"left\": \"ip.is_vpn\", \"operator\": \"equals\", \"value\": true }\n  ]\n}\n",[119,1476,1477,1481,1493,1561,1623,1672,1676],{"__ignoreMap":117},[122,1478,1479],{"class":124,"line":125},[122,1480,129],{"class":128},[122,1482,1483,1485,1487,1489,1491],{"class":124,"line":132},[122,1484,135],{"class":128},[122,1486,1119],{"class":138},[122,1488,142],{"class":128},[122,1490,145],{"class":128},[122,1492,1126],{"class":128},[122,1494,1495,1497,1499,1501,1503,1505,1507,1509,1511,1513,1515,1517,1519,1521,1523,1525,1527,1529,1531,1533,1535,1537,1539,1541,1543,1545,1547,1549,1551,1553,1555,1557,1559],{"class":124,"line":160},[122,1496,1131],{"class":128},[122,1498,148],{"class":128},[122,1500,139],{"class":1136},[122,1502,142],{"class":128},[122,1504,145],{"class":128},[122,1506,148],{"class":128},[122,1508,352],{"class":151},[122,1510,142],{"class":128},[122,1512,1149],{"class":128},[122,1514,148],{"class":128},[122,1516,165],{"class":1136},[122,1518,142],{"class":128},[122,1520,145],{"class":128},[122,1522,148],{"class":128},[122,1524,895],{"class":151},[122,1526,142],{"class":128},[122,1528,1149],{"class":128},[122,1530,148],{"class":128},[122,1532,186],{"class":1136},[122,1534,142],{"class":128},[122,1536,145],{"class":128},[122,1538,148],{"class":128},[122,1540,1178],{"class":151},[122,1542,142],{"class":128},[122,1544,1149],{"class":128},[122,1546,148],{"class":128},[122,1548,207],{"class":1136},[122,1550,142],{"class":128},[122,1552,145],{"class":128},[122,1554,148],{"class":128},[122,1556,216],{"class":151},[122,1558,142],{"class":128},[122,1560,1183],{"class":128},[122,1562,1563,1565,1567,1569,1571,1573,1575,1577,1579,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603,1605,1607,1609,1611,1613,1615,1617,1619,1621],{"class":124,"line":181},[122,1564,1131],{"class":128},[122,1566,148],{"class":128},[122,1568,139],{"class":1136},[122,1570,142],{"class":128},[122,1572,145],{"class":128},[122,1574,148],{"class":128},[122,1576,549],{"class":151},[122,1578,142],{"class":128},[122,1580,1149],{"class":128},[122,1582,148],{"class":128},[122,1584,165],{"class":1136},[122,1586,142],{"class":128},[122,1588,145],{"class":128},[122,1590,148],{"class":128},[122,1592,820],{"class":151},[122,1594,142],{"class":128},[122,1596,1149],{"class":128},[122,1598,148],{"class":128},[122,1600,186],{"class":1136},[122,1602,142],{"class":128},[122,1604,145],{"class":128},[122,1606,1320],{"class":128},[122,1608,148],{"class":128},[122,1610,207],{"class":1136},[122,1612,142],{"class":128},[122,1614,145],{"class":128},[122,1616,148],{"class":128},[122,1618,1096],{"class":151},[122,1620,142],{"class":128},[122,1622,1183],{"class":128},[122,1624,1625,1627,1629,1631,1633,1635,1637,1639,1641,1643,1645,1647,1649,1651,1653,1655,1657,1659,1661,1663,1665,1667,1670],{"class":124,"line":202},[122,1626,1131],{"class":128},[122,1628,148],{"class":128},[122,1630,139],{"class":1136},[122,1632,142],{"class":128},[122,1634,145],{"class":128},[122,1636,148],{"class":128},[122,1638,536],{"class":151},[122,1640,142],{"class":128},[122,1642,1149],{"class":128},[122,1644,148],{"class":128},[122,1646,165],{"class":1136},[122,1648,142],{"class":128},[122,1650,145],{"class":128},[122,1652,148],{"class":128},[122,1654,820],{"class":151},[122,1656,142],{"class":128},[122,1658,1149],{"class":128},[122,1660,148],{"class":128},[122,1662,186],{"class":1136},[122,1664,142],{"class":128},[122,1666,145],{"class":128},[122,1668,1669],{"class":128}," true",[122,1671,1237],{"class":128},[122,1673,1674],{"class":124,"line":222},[122,1675,1242],{"class":128},[122,1677,1678],{"class":124,"line":1455},[122,1679,225],{"class":128},[103,1681,1682],{},"This matches if:",[1684,1685,1686],"ul",{},[1687,1688,1689,1690,1692,1693,1696,1697,1699],"li",{},"(path starts with ",[119,1691,1178],{}," ",[1462,1694,1695],{},"AND"," is Tor) ",[1462,1698,1249],{}," is VPN",[107,1701,1703],{"id":1702},"examples","Examples",[311,1705,1707],{"id":1706},"block-tor-exits-from-specific-paths","Block Tor exits from specific paths",[112,1709,1711],{"className":114,"code":1710,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fadmin\u002F\" },\n    { \"left\": \"ip.is_tor\", \"operator\": \"equals\", \"value\": true }\n  ]\n}\n",[119,1712,1713,1717,1729,1782,1830,1834],{"__ignoreMap":117},[122,1714,1715],{"class":124,"line":125},[122,1716,129],{"class":128},[122,1718,1719,1721,1723,1725,1727],{"class":124,"line":132},[122,1720,135],{"class":128},[122,1722,1119],{"class":138},[122,1724,142],{"class":128},[122,1726,145],{"class":128},[122,1728,1126],{"class":128},[122,1730,1731,1733,1735,1737,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769,1771,1773,1775,1778,1780],{"class":124,"line":160},[122,1732,1131],{"class":128},[122,1734,148],{"class":128},[122,1736,139],{"class":1136},[122,1738,142],{"class":128},[122,1740,145],{"class":128},[122,1742,148],{"class":128},[122,1744,352],{"class":151},[122,1746,142],{"class":128},[122,1748,1149],{"class":128},[122,1750,148],{"class":128},[122,1752,165],{"class":1136},[122,1754,142],{"class":128},[122,1756,145],{"class":128},[122,1758,148],{"class":128},[122,1760,895],{"class":151},[122,1762,142],{"class":128},[122,1764,1149],{"class":128},[122,1766,148],{"class":128},[122,1768,186],{"class":1136},[122,1770,142],{"class":128},[122,1772,145],{"class":128},[122,1774,148],{"class":128},[122,1776,1777],{"class":151},"\u002Fadmin\u002F",[122,1779,142],{"class":128},[122,1781,1183],{"class":128},[122,1783,1784,1786,1788,1790,1792,1794,1796,1798,1800,1802,1804,1806,1808,1810,1812,1814,1816,1818,1820,1822,1824,1826,1828],{"class":124,"line":181},[122,1785,1131],{"class":128},[122,1787,148],{"class":128},[122,1789,139],{"class":1136},[122,1791,142],{"class":128},[122,1793,145],{"class":128},[122,1795,148],{"class":128},[122,1797,549],{"class":151},[122,1799,142],{"class":128},[122,1801,1149],{"class":128},[122,1803,148],{"class":128},[122,1805,165],{"class":1136},[122,1807,142],{"class":128},[122,1809,145],{"class":128},[122,1811,148],{"class":128},[122,1813,820],{"class":151},[122,1815,142],{"class":128},[122,1817,1149],{"class":128},[122,1819,148],{"class":128},[122,1821,186],{"class":1136},[122,1823,142],{"class":128},[122,1825,145],{"class":128},[122,1827,1669],{"class":128},[122,1829,1237],{"class":128},[122,1831,1832],{"class":124,"line":202},[122,1833,1242],{"class":128},[122,1835,1836],{"class":124,"line":222},[122,1837,225],{"class":128},[311,1839,1841],{"id":1840},"allow-only-specific-countries","Allow only specific countries",[112,1843,1845],{"className":114,"code":1844,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"ip.country\", \"operator\": \"not_in\", \"value\": [\"US\", \"CA\", \"GB\", \"AU\"] }\n  ]\n}\n",[119,1846,1847,1851,1863,1948,1952],{"__ignoreMap":117},[122,1848,1849],{"class":124,"line":125},[122,1850,129],{"class":128},[122,1852,1853,1855,1857,1859,1861],{"class":124,"line":132},[122,1854,135],{"class":128},[122,1856,1119],{"class":138},[122,1858,142],{"class":128},[122,1860,145],{"class":128},[122,1862,1126],{"class":128},[122,1864,1865,1867,1869,1871,1873,1875,1877,1879,1881,1883,1885,1887,1889,1891,1893,1895,1897,1899,1901,1903,1905,1907,1910,1912,1914,1916,1918,1920,1923,1925,1927,1929,1932,1934,1936,1938,1941,1943,1946],{"class":124,"line":160},[122,1866,1131],{"class":128},[122,1868,148],{"class":128},[122,1870,139],{"class":1136},[122,1872,142],{"class":128},[122,1874,145],{"class":128},[122,1876,148],{"class":128},[122,1878,460],{"class":151},[122,1880,142],{"class":128},[122,1882,1149],{"class":128},[122,1884,148],{"class":128},[122,1886,165],{"class":1136},[122,1888,142],{"class":128},[122,1890,145],{"class":128},[122,1892,148],{"class":128},[122,1894,980],{"class":151},[122,1896,142],{"class":128},[122,1898,1149],{"class":128},[122,1900,148],{"class":128},[122,1902,186],{"class":1136},[122,1904,142],{"class":128},[122,1906,145],{"class":128},[122,1908,1909],{"class":128}," [",[122,1911,142],{"class":128},[122,1913,1232],{"class":151},[122,1915,142],{"class":128},[122,1917,1149],{"class":128},[122,1919,148],{"class":128},[122,1921,1922],{"class":151},"CA",[122,1924,142],{"class":128},[122,1926,1149],{"class":128},[122,1928,148],{"class":128},[122,1930,1931],{"class":151},"GB",[122,1933,142],{"class":128},[122,1935,1149],{"class":128},[122,1937,148],{"class":128},[122,1939,1940],{"class":151},"AU",[122,1942,142],{"class":128},[122,1944,1945],{"class":128},"]",[122,1947,1237],{"class":128},[122,1949,1950],{"class":124,"line":181},[122,1951,1242],{"class":128},[122,1953,1954],{"class":124,"line":202},[122,1955,225],{"class":128},[311,1957,1959],{"id":1958},"block-high-risk-ips-on-api-endpoints","Block high-risk IPs on API endpoints",[112,1961,1963],{"className":114,"code":1962,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fapi\u002F\" },\n    { \"left\": \"ip.risk_score\", \"operator\": \"greater_than\", \"value\": 50 }\n  ]\n}\n",[119,1964,1965,1969,1981,2033,2082,2086],{"__ignoreMap":117},[122,1966,1967],{"class":124,"line":125},[122,1968,129],{"class":128},[122,1970,1971,1973,1975,1977,1979],{"class":124,"line":132},[122,1972,135],{"class":128},[122,1974,1119],{"class":138},[122,1976,142],{"class":128},[122,1978,145],{"class":128},[122,1980,1126],{"class":128},[122,1982,1983,1985,1987,1989,1991,1993,1995,1997,1999,2001,2003,2005,2007,2009,2011,2013,2015,2017,2019,2021,2023,2025,2027,2029,2031],{"class":124,"line":160},[122,1984,1131],{"class":128},[122,1986,148],{"class":128},[122,1988,139],{"class":1136},[122,1990,142],{"class":128},[122,1992,145],{"class":128},[122,1994,148],{"class":128},[122,1996,352],{"class":151},[122,1998,142],{"class":128},[122,2000,1149],{"class":128},[122,2002,148],{"class":128},[122,2004,165],{"class":1136},[122,2006,142],{"class":128},[122,2008,145],{"class":128},[122,2010,148],{"class":128},[122,2012,895],{"class":151},[122,2014,142],{"class":128},[122,2016,1149],{"class":128},[122,2018,148],{"class":128},[122,2020,186],{"class":1136},[122,2022,142],{"class":128},[122,2024,145],{"class":128},[122,2026,148],{"class":128},[122,2028,1178],{"class":151},[122,2030,142],{"class":128},[122,2032,1183],{"class":128},[122,2034,2035,2037,2039,2041,2043,2045,2047,2049,2051,2053,2055,2057,2059,2061,2063,2065,2067,2069,2071,2073,2075,2077,2080],{"class":124,"line":181},[122,2036,1131],{"class":128},[122,2038,148],{"class":128},[122,2040,139],{"class":1136},[122,2042,142],{"class":128},[122,2044,145],{"class":128},[122,2046,148],{"class":128},[122,2048,633],{"class":151},[122,2050,142],{"class":128},[122,2052,1149],{"class":128},[122,2054,148],{"class":128},[122,2056,165],{"class":1136},[122,2058,142],{"class":128},[122,2060,145],{"class":128},[122,2062,148],{"class":128},[122,2064,998],{"class":151},[122,2066,142],{"class":128},[122,2068,1149],{"class":128},[122,2070,148],{"class":128},[122,2072,186],{"class":1136},[122,2074,142],{"class":128},[122,2076,145],{"class":128},[122,2078,2079],{"class":1445}," 50",[122,2081,1237],{"class":128},[122,2083,2084],{"class":124,"line":202},[122,2085,1242],{"class":128},[122,2087,2088],{"class":124,"line":222},[122,2089,225],{"class":128},[311,2091,2093],{"id":2092},"rate-limit-by-api-key-header","Rate limit by API key header",[112,2095,2097],{"className":114,"code":2096,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fapi\u002F\" }\n  ],\n  \"key\": \"req.header.X-API-Key\"\n}\n",[119,2098,2099,2103,2115,2167,2172,2190],{"__ignoreMap":117},[122,2100,2101],{"class":124,"line":125},[122,2102,129],{"class":128},[122,2104,2105,2107,2109,2111,2113],{"class":124,"line":132},[122,2106,135],{"class":128},[122,2108,1119],{"class":138},[122,2110,142],{"class":128},[122,2112,145],{"class":128},[122,2114,1126],{"class":128},[122,2116,2117,2119,2121,2123,2125,2127,2129,2131,2133,2135,2137,2139,2141,2143,2145,2147,2149,2151,2153,2155,2157,2159,2161,2163,2165],{"class":124,"line":160},[122,2118,1131],{"class":128},[122,2120,148],{"class":128},[122,2122,139],{"class":1136},[122,2124,142],{"class":128},[122,2126,145],{"class":128},[122,2128,148],{"class":128},[122,2130,352],{"class":151},[122,2132,142],{"class":128},[122,2134,1149],{"class":128},[122,2136,148],{"class":128},[122,2138,165],{"class":1136},[122,2140,142],{"class":128},[122,2142,145],{"class":128},[122,2144,148],{"class":128},[122,2146,895],{"class":151},[122,2148,142],{"class":128},[122,2150,1149],{"class":128},[122,2152,148],{"class":128},[122,2154,186],{"class":1136},[122,2156,142],{"class":128},[122,2158,145],{"class":128},[122,2160,148],{"class":128},[122,2162,1178],{"class":151},[122,2164,142],{"class":128},[122,2166,1237],{"class":128},[122,2168,2169],{"class":124,"line":181},[122,2170,2171],{"class":128},"  ],\n",[122,2173,2174,2176,2179,2181,2183,2185,2188],{"class":124,"line":202},[122,2175,135],{"class":128},[122,2177,2178],{"class":138},"key",[122,2180,142],{"class":128},[122,2182,145],{"class":128},[122,2184,148],{"class":128},[122,2186,2187],{"class":151},"req.header.X-API-Key",[122,2189,219],{"class":128},[122,2191,2192],{"class":124,"line":222},[122,2193,225],{"class":128},[311,2195,2197],{"id":2196},"cache-by-country","Cache by country",[112,2199,2201],{"className":114,"code":2200,"language":116,"meta":117,"style":117},"{\n  \"conditions\": [\n    { \"left\": \"req.path\", \"operator\": \"starts_with\", \"value\": \"\u002Fcontent\u002F\" }\n  ],\n  \"cache_key\": {\n    \"mode\": \"custom\",\n    \"parts\": [\"ip.country\"]\n  }\n}\n",[119,2202,2203,2207,2219,2272,2276,2290,2311,2333,2339],{"__ignoreMap":117},[122,2204,2205],{"class":124,"line":125},[122,2206,129],{"class":128},[122,2208,2209,2211,2213,2215,2217],{"class":124,"line":132},[122,2210,135],{"class":128},[122,2212,1119],{"class":138},[122,2214,142],{"class":128},[122,2216,145],{"class":128},[122,2218,1126],{"class":128},[122,2220,2221,2223,2225,2227,2229,2231,2233,2235,2237,2239,2241,2243,2245,2247,2249,2251,2253,2255,2257,2259,2261,2263,2265,2268,2270],{"class":124,"line":160},[122,2222,1131],{"class":128},[122,2224,148],{"class":128},[122,2226,139],{"class":1136},[122,2228,142],{"class":128},[122,2230,145],{"class":128},[122,2232,148],{"class":128},[122,2234,352],{"class":151},[122,2236,142],{"class":128},[122,2238,1149],{"class":128},[122,2240,148],{"class":128},[122,2242,165],{"class":1136},[122,2244,142],{"class":128},[122,2246,145],{"class":128},[122,2248,148],{"class":128},[122,2250,895],{"class":151},[122,2252,142],{"class":128},[122,2254,1149],{"class":128},[122,2256,148],{"class":128},[122,2258,186],{"class":1136},[122,2260,142],{"class":128},[122,2262,145],{"class":128},[122,2264,148],{"class":128},[122,2266,2267],{"class":151},"\u002Fcontent\u002F",[122,2269,142],{"class":128},[122,2271,1237],{"class":128},[122,2273,2274],{"class":124,"line":181},[122,2275,2171],{"class":128},[122,2277,2278,2280,2283,2285,2287],{"class":124,"line":202},[122,2279,135],{"class":128},[122,2281,2282],{"class":138},"cache_key",[122,2284,142],{"class":128},[122,2286,145],{"class":128},[122,2288,2289],{"class":128}," {\n",[122,2291,2292,2295,2298,2300,2302,2304,2307,2309],{"class":124,"line":222},[122,2293,2294],{"class":128},"    \"",[122,2296,2297],{"class":1136},"mode",[122,2299,142],{"class":128},[122,2301,145],{"class":128},[122,2303,148],{"class":128},[122,2305,2306],{"class":151},"custom",[122,2308,142],{"class":128},[122,2310,157],{"class":128},[122,2312,2313,2315,2318,2320,2322,2324,2326,2328,2330],{"class":124,"line":1455},[122,2314,2294],{"class":128},[122,2316,2317],{"class":1136},"parts",[122,2319,142],{"class":128},[122,2321,145],{"class":128},[122,2323,1909],{"class":128},[122,2325,142],{"class":128},[122,2327,460],{"class":151},[122,2329,142],{"class":128},[122,2331,2332],{"class":128},"]\n",[122,2334,2336],{"class":124,"line":2335},8,[122,2337,2338],{"class":128},"  }\n",[122,2340,2342],{"class":124,"line":2341},9,[122,2343,225],{"class":128},[107,2345,2347],{"id":2346},"type-coercion","Type coercion",[103,2349,2350],{},"When comparing values of different types:",[1684,2352,2353,2356,2359,2362],{},[1687,2354,2355],{},"String ↔ Number: The string is parsed as a float for comparison",[1687,2357,2358],{},"String ↔ Bool: Direct comparison (no coercion)",[1687,2360,2361],{},"Null ↔ Null: Equal",[1687,2363,2364,2365,2367,2368,305],{},"Any ↔ Null: Not equal (unless using ",[119,2366,931],{},"\u002F",[119,2369,947],{},[2371,2372,2373],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":117,"searchDepth":132,"depth":132,"links":2375},[2376,2377,2383,2384,2389,2396],{"id":109,"depth":132,"text":110},{"id":308,"depth":132,"text":309,"children":2378},[2379,2380,2381,2382],{"id":313,"depth":160,"text":314},{"id":438,"depth":160,"text":439},{"id":641,"depth":160,"text":642},{"id":728,"depth":160,"text":729},{"id":796,"depth":132,"text":797},{"id":1086,"depth":132,"text":1087,"children":2385},[2386,2387,2388],{"id":1099,"depth":160,"text":1100},{"id":1096,"depth":160,"text":1249},{"id":1470,"depth":160,"text":1471},{"id":1702,"depth":132,"text":1703,"children":2390},[2391,2392,2393,2394,2395],{"id":1706,"depth":160,"text":1707},{"id":1840,"depth":160,"text":1841},{"id":1958,"depth":160,"text":1959},{"id":2092,"depth":160,"text":2093},{"id":2196,"depth":160,"text":2197},{"id":2346,"depth":132,"text":2347},"The matching language used by firewall, rate limiting, cache, and load balancer rules.","md",null,{},"\u002Fquayel-gateway\u002Fconditions",{"title":93,"description":2397},"quayel-gateway\u002F04.conditions","dIXEv9G-cvUpBwco1JrmQkGcxcqad3UsApqgm6VVxdM",[2399,2399],1791649767383]