From ceb5f1277054af57c575de1dbcb89db9d8a0d92f Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Wed, 27 Nov 2024 06:13:39 +0000 Subject: [PATCH 01/39] Fix operator license instruction (#5743) Co-authored-by: Sharad Regoti --- tyk-docs/content/api-management/automations.md | 2 ++ .../content/product-stack/tyk-charts/tyk-control-plane-chart.md | 2 ++ tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md | 2 ++ tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md | 2 ++ 4 files changed, 8 insertions(+) diff --git a/tyk-docs/content/api-management/automations.md b/tyk-docs/content/api-management/automations.md index 8b3fcca757..131d46aa48 100644 --- a/tyk-docs/content/api-management/automations.md +++ b/tyk-docs/content/api-management/automations.md @@ -340,6 +340,8 @@ Tyk Stack, Tyk Control Plane or Tyk OSS helm chart by setting `global.license.op key via a Kubernetes secret using `global.secrets.useSecretName` field. The secret should contain a key called `OperatorLicense` +Note: If you are using `global.secrets.useSecretName`, you must configure the operator license in the referenced Kubernetes secret. `global.license.operator` will not be used in this case. + #### Option 2: Install Tyk Operator via stand-alone Helm Chart If you prefer to install Tyk Operator separately, follow this section to install Tyk Operator using Helm. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index ddd7876573..4bab019929 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -468,6 +468,8 @@ global: It can be configured via `global.license.operator` as a plain text or Kubernetes secret which includes `OperatorLicense` key in it. Then, this secret must be referenced via `global.secrets.useSecretName`. +Note: If you are using `global.secrets.useSecretName`, you must configure the operator license in the referenced Kubernetes secret. `global.license.operator` will not be used in this case. + ### Gateway Configurations {{< note success >}} diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md index c73dd86e1a..f4953c688c 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md @@ -217,6 +217,8 @@ global: It can be configured via `global.license.operator` as a plain text or Kubernetes secret which includes `OperatorLicense` key in it. Then, this secret must be referenced via `global.secrets.useSecretName`. +Note: If you are using `global.secrets.useSecretName`, you must configure the operator license in the referenced Kubernetes secret. `global.license.operator` will not be used in this case. + ### Create a Kubernetes Secret for Tyk Operator When `operatorSecret.enabled` is set to `true`, `tyk-oss` chart will create a Kubernetes Secret named `tyk-operator-conf` in the same namespace. It can be used by Tyk Operator to connect to Gateway to manage Tyk API resources. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index a4bde27983..b8d29b53e1 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -457,6 +457,8 @@ global: It can be configured via `global.license.operator` as a plain text or Kubernetes secret which includes `OperatorLicense` key in it. Then, this secret must be referenced via `global.secrets.useSecretName`. +Note: If you are using `global.secrets.useSecretName`, you must configure the operator license in the referenced Kubernetes secret. `global.license.operator` will not be used in this case. + ### Gateway Configurations This section explains how to configure the `tyk-gateway` section for updating the Gateway version, enabling TLS, enabling autoscaling etc. From 3f8b44349de639d409d244f5e284073d83706fc1 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Wed, 27 Nov 2024 06:18:28 +0000 Subject: [PATCH 02/39] explain bootstrapping process (#5742) Co-authored-by: Master --- .../tyk-charts/tyk-control-plane-chart.md | 15 +++++++++++++++ .../product-stack/tyk-charts/tyk-stack-chart.md | 15 +++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index 4bab019929..af30ba8620 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -99,6 +99,21 @@ Alternatively, you can use `--set` flag to set it in Tyk installation. See [Usin To configure Tyk components, users can utilize both config files and [environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/). Notably, environment variables take precedence over config files. To maintain simplicity and consistency, the Tyk Helm Charts deploy components with an empty config file while setting container environment variables based on user-defined [values](https://helm.sh/docs/chart_best_practices/values/). This approach ensures seamless integration with Kubernetes practices, allowing for efficient management of configurations. For a comprehensive overview of available configurations, please refer to the [configuration documentation]({{}}). +### Bootstrapping + +By default, the chart executes a bootstrapping job immediately after installation. This process ensures the presence of a valid dashboard license and initializes key components such as tyk-dashboard, tyk-portal, and tyk-operator, enabling them for immediate use. + +Key Notes on Bootstrapping: + +- Bootstrapping is triggered **only during** a `helm install` and does not run during a `helm upgrade`. +- If `global.components.bootstrap` is set to `false`, only the dashboard license check will be performed. + +Handling Bootstrapping Failures: + +- If the bootstrapping process fails, check the logs from the bootstrap pods to diagnose the issue. +- Once reviewed, you can safely delete the bootstrap pods. +- To re-trigger the bootstrapping process after a failure, you must run `helm uninstall` and start the installation process anew. + ### Setting Environment Variables Should any environment variables not be set by the Helm Chart, users can easily add them under the `extraEnvs` section within the charts for further customization. Values set under `extraEnvs` would take precedence over all configurations. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index b8d29b53e1..6ae8be702c 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -98,6 +98,21 @@ Alternatively, you can use `--set` flag to set it in Tyk installation. See [Usin To configure Tyk components, users can utilize both config files and [environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/). Notably, environment variables take precedence over config files. To maintain simplicity and consistency, the Tyk Helm Charts deploy components with an empty config file while setting container environment variables based on user-defined [values](https://helm.sh/docs/chart_best_practices/values/). This approach ensures seamless integration with Kubernetes practices, allowing for efficient management of configurations. For a comprehensive overview of available configurations, please refer to the [configuration documentation]({{}}). +### Bootstrapping + +By default, the chart executes a bootstrapping job immediately after installation. This process ensures the presence of a valid dashboard license and initializes key components such as tyk-dashboard, tyk-portal, and tyk-operator, enabling them for immediate use. + +Key Notes on Bootstrapping: + +- Bootstrapping is triggered **only during** a `helm install` and does not run during a `helm upgrade`. +- If `global.components.bootstrap` is set to `false`, only the dashboard license check will be performed. + +Handling Bootstrapping Failures: + +- If the bootstrapping process fails, check the logs from the bootstrap pods to diagnose the issue. +- Once reviewed, you can safely delete the bootstrap pods. +- To re-trigger the bootstrapping process after a failure, you must run `helm uninstall` and start the installation process anew. + ### Setting Environment Variables Should any environment variables not be set by the Helm Chart, users can easily add them under the `extraEnvs` section within the charts for further customization. Values set under `extraEnvs` would take precedence over all configurations. From e7758999d0e130c7db81e6728e896a852a13ac94 Mon Sep 17 00:00:00 2001 From: "Sredny M." Date: Wed, 27 Nov 2024 03:23:08 -0300 Subject: [PATCH 03/39] [DX-1766] Documented JWE config options (#5681) Co-authored-by: sredny buitrago Co-authored-by: Sharad Regoti Co-authored-by: caroltyk <97617859+caroltyk@users.noreply.github.com> --- .../adding-certificate.gif | Bin 0 -> 823798 bytes .../img/tib/profiles/tib-profile-creation.gif | Bin 0 -> 800173 bytes .../tyk-identity-broker/about-profiles.md | 22 +++--- .../auth-user-for-api-access-github-oauth.md | 65 +++++++++++++++++- tyk-docs/data/menu.yaml | 2 +- 5 files changed, 76 insertions(+), 13 deletions(-) create mode 100644 tyk-docs/assets/img/dashboard/certificate-manager/adding-certificate.gif create mode 100644 tyk-docs/assets/img/tib/profiles/tib-profile-creation.gif diff --git a/tyk-docs/assets/img/dashboard/certificate-manager/adding-certificate.gif b/tyk-docs/assets/img/dashboard/certificate-manager/adding-certificate.gif new file mode 100644 index 0000000000000000000000000000000000000000..4c856bf3183970c52c994ebb9d19c9514491c0e8 GIT binary patch literal 823798 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≥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

q(Cf=h1%xtM#g|+Sjh2 z@6aS$2JOB*5qK3GPW0P*$6dziIwV-GHrg`saO7{n!Qm1X*-DAF+$<9KdL_}bhc6H0 zWsEJlyn0@<0i+4&v+AS#i7n%`mtySR{}wrE^>gC+r3i(moexz&Ba_vo0r+-2Gt=#Z z=~7rL0kS86|kDjdny$esj2VfwupdcDy?pM(wDiY2%w{VO`81gtWXZ^T5_4 zNSVa1TCiXSjy=Yi&cQp8@u$Nl8?M|?I! zNn(;f<|3FdgtK=#DN2iTiG`n;QF47Q=NtIU^|u+e|L` z88dcQuo^Lx)ldCeX2j`2Q!W2UwlM}V5@<3i62%b7K6_go69AvRPMdki(+}9H0!d1D zuNw!^h)}EkQ{w#(VPl9$KX=tmMl977TzKlR$YtiUt2NIkB^KJLmHNPb@2###6Vi_Tca?zFt#=@ zei`iAj1YHz6|X=Df6bfFrJm5^$xXIT=nqs#^F(E3C2Z+H-27Y^QE}QlQ2+xIqkFuE zZUip_a^!j9tvbl;HqxCJ#R5?sWlZu#1!`JDYtX>FN7zqk-d2Fwyf`kjK`iY$LIrJ8 zzso^Q4Z$iW!*mk2U9pOj?i{W}xs9k1UZKplM9o4q>3L1=sRU$p3V%zA;ELeg-N)=2 z@*-0y;tr|Ycvh5WY6?fP&{RCCP(`sk)d7`y%7mBca+*3VJ594C?d(+A`MoqOU%IXa zFhoVBlVkL<(*teTXt*fTz4YsIun{z1paF<6J<-5x4BQmJr$JTjox(@r>{mFRZzCnq zUNkEurHhYmWIuuVLvEUcnd%XJ95{S0{cp5cX6Rlf&Ou(3J4*wlE@hOZ(s^DLP`8ZD zN-7sSx{lH!`XtMl_B$o4m)pw3X^oSxuE}}uDyMD*T0E6Ew3j!+mrv2i zfA5e#9+W?koj=)duXymDk=~&~Q9y)O5n}l5SgTWq=7%CK;sRm54oUC4eK35@)N@6obx%p)? zt&8)^rZX`7*RsJ4f`atG(*MuP1~+^Uqh#ElCVjEOX`rt3KbMV^1#B)Y)PBI^zvr35 zw1W6G2J6c|Jhv(~&Cl^$(H2vGDf+hM!Hi|TEj`a{*7#!TxoQjZLhJaV9l>jKFyE}H z>g#{znNMERO$P}S*;0@?UC}!T{ohTs^L<1y?akuA-*@NH#8au zPR}z#Pk7GY5t3yy1Xk7MnQ*{RdNzXVvgd3huY1{SlwiQ}Y&1GbdM-wsUfmKa{j6;6 zpJih%Ua41lK0#%|b3Rdh`iw!++4KExwb{r(v@C6R!zkHU6cLUE#8=#K&id;Y(jadc zAV``O9uIdszakN0_gk8Hk|mb{G+@?iRIRxWNiCRz&y%t3qTz zfbkEk{RpsJ_{T(sm}@4uKAORcmR)%ypG8Ho@FRLk;i0Cy-6ee2tva#AURIsYoJ~FH zsjMHf1nz4H8dUni{SiK%vfU7z)ieG;5E#MLyMN(@+u?i{HfVtg+-;uN>3r3C%-K~x z9_2C%T%97x>*LnwADEdqsUGe8NN+{&hQXhd7xxau`dg^yFE44oVpoyN*C^F;Za?JT zGSq2OjNmlcnyy^axhMJQPuD|+9BL=@qg?Gv=F_)ptxr+K$B>dKD(|&L!rL=U_O9N( zdzC{#F+x02hFvq+$N}vwRh?VD$&GNS+C{%7s`6l+GIdrIdh zV?65^!~+96pRJGf9xor*M)|Hju=h_m*qXFi^@C^7+)THp&1+4dpZ!jM6wmelBs9+A zA*cgkqY2VbM(mG2D>R$qMycTMkTJh-Y&>#p*W@JYcr!Le?pPo@Svv?aSI(Cf6rc9@ zrTS9rozQSLnmIdPhG*F8Io7CDMXOKH0d@xnc5ZDy(d75qfq{AREh1;<>GcciojSO- zjf<+J!@nb1NO7WtsmQs_kF+Eg4l}>+k9T@^eB1p_*prES)7P5yb&`%hJl6U3DhiMI zdxLW8Ic<04`Lrl`is2Z#f;)P@Lt1BA3PYHaz?{3pW0W6u-K-y#<$|5r{6pZqKLasy zJL?RU3P(qz>F8#4vKdMfAPikzp>MlRv{LOP^G1jF|90{8*3fH;Mi2r0^gOd4RE>2G zOY@r4#q9S%X!c!Y*sgfH7l6G!Gy}!384)HuD5hyOdtft1@z&v1q|k^4_*QqhkdLOc0)tfr!vzy`(<-An$2zg=1jJu z#_I-#ec6*zzuo^jcbjLV`6kDcA8wx|FJ_MD<@ZY1lzr8<`ZV%r`ftJR(DU;<1GLf5 z{l8B^Y-LzRQwo89lZ3D+)8!eYL}_jo0*Ph%Ql?{ZS2l}yhszAr2FH>fZ5E^1%8iXo z->2qmmPlKao7xS&&uHB&EqCi;pJ4jHgQ;RUQ;PaYCUxcQZ$8JeRaixvju-K7l^I)9 z*klflKhxYQw@R$AeQx@(;>uQqJvWlQt^y=xYRJH3o}AXAtJ*pIX0k zDsl>9KnyBiPVQwKB7)`HVg%W4PU23`ccRnJpN$>E<>WvZ2_)-65DInyg}y4riK-U? zUM^j7Zdx=u@|L#U&y7N! z-brZ{rD--)eEzTus@ng!?0_$IJ3>0xRoFBXG*sOi_P%oP=+m3EGc^y+S=b94O!iwg z)@2U=cGo(Xq9ireKc_DnjtA3|^ku`qHZhEq@a!{tlT+4uvQ6B{BY4?M}py%M*T2d<)x6-;V9aq6K-K>=R#p<3Rs4?;#)-kR_P- z|2*%t_t!b=N(TP>yss0K@k<{1M_l}${U!er7ymu)O&coyEiV3Nf5|`d{?&hqi=UhP z=KsgMum1i92Vwa~T%7HW;gq{N)LeU`RmF4s<=^JIA0@)SZC($xyjmJ1>BS3MwAQbD z_-Ee#hq(Ape~Cp~@CvBaoeP6ZCn1vgJm*D-}4_p>83wWdF)nOM3=EUe8F=Tzd9CfebI5C>(S9?lZ$z zA_6@tU&sLGcY9_Vq`)d&=;92xnd_{eN}O!42&l^~aV|O{QPpDd3Ix1&eMkf>VN5}o zW&81mGNXwRXvwN=!7zvp1^dXr6HN>^YEbIdM)j)bvG6Vga&cRph!EA$KfG9g73ty4 zM4nPs`tE6G#dA|f>-bfVwx#;|C_(oaGM~kbQ38Owsg2+~cs7Vs09NiN`RE@0h3K91 zi+#_0Qr~`F`ESgrl-xz&jE%&m8Oe@1F3j; zjV^6m^8PE)%_SSrg$la3xc&22HF<+S4G3zdj`Be;Z4}b^^q()vdlJ#B^?p$1czM<{njo-3*2u=n-2b5CEkNNq3c7u8JYkQ^RdvCX{ z!-wd{LD^TX532lnTiY(-$kjvA%FX?Yz2@Zfm-1-#9cl=nBS#e8{ z{bSq4=GOhe>7K2T$caCg`=8u0Czb^tP%sVS5LdhH&whOhYM&JD8|#JKTXJ?lJ=&qI z?tI5FD(?Q%U$Q$JBUQCKm!P(`J5T(N{t`RiAbW>vReKjLl?tEbXnjHNrx@>*3CEp( zb}aTY_rjV!hhvkX)}>mc1OeL`KstDah^2I{zGD1-u@bqW82rEuQ9rdl#PeVg>rW;9 z28Qkad~i2L`@=aP=k6TsAW`qF{ftyvdr->)JuJJw)q3#Q6Mp(I9;*{QO-idvPpx1A z`Fn6(11y+x(}*12PWF`Ajb@vZN?Dp+MqAo<{dMt=2VVg&y9`VK&Pw=?GZ1|Gpigj- znygws>wdyj7d5`wd4gRZ$*V!Y7O0WK$|&Kd>Ae>B`}IyAiK#2LJ8jUEx}Z$_>u9M)J z9gSCyt)KFhp%VArT?v`%PZ^rE4hyFDmnfua41Ad}4L4uVSu-}`7dJ^En)iPd<{L2O zho-!!DUmdh0#pyXQ8}zPb!DXoZE{Yf?1~{|O#@AjgiN9g`tjJa&w346OJIjyKNwpm zur)rn%Ykiaik~wZPUy$nKOK{R4VdY3txHbvyTAA&Bbvj|^n?HSPz?VLuLS|Rk<()v zbEdPU=W9Y*9_+THrgPxPgHTG!8kZoe%=PeA>r}kNwfQwJRL-ZoqPZ{C7 zI8MOXiZFE2qmy_#PR?(6Kk2X4QDkKScZZA4>HpKbS4u25_b~mCGrjpteYo86;oygY z|G#-}TUP(7{6ah{-yrNi=6&)z$;+|N;OBeJXHw4ykyIPXlrhYwuM6I!bxoXaIEvQ1 z+BhjOr|NC2d1S9k1A8+BZYrR8_Z=Sbwxr?M; z0}1Ss5gA{LIn4QaEq+gynU`Ifrx843<})U`flF^5(z3^QuPOuQzGu4Tjpy?3 zZfWB;`4tAQBIGyZ5;DWE4i<UXOL1G|ec2 zG94GZhe#T?>*$m4JqPR$=`|tGkRqs)(QOd9We^R1TRvpX&HyTDMHWb(oj1x2lUuQa z$mzNgm}`!X>`k;qvTDNZ#_2kv9rwNw96SSkK@DTb;@($-gFzqzdR?+h7*lfqGnvr^ z4Pr)vB5IPPVrmK8%`4RfJO5NH=~krH}`#FC|SDG>zXo(YvjaIg0B`b5H{-s?m zB8N6)3ptMWaW3QPxu-=xr*%_TFHyNT9VKZl71h0sG~!h=aWRu8N!qDh)HhP!>I6T~ z54>s2txmb%OMB9y_Gm4X9BxLOZm8H0q$dK%;SjLp#gg~w%S4|BP z7+lDpwiBy23zqQ%SC)aLNMLb_WI;@vnKi>Zqj-}s@$d=BrkHpgyi94cq<0tk$#T42 ztyZhv+1}=ap~-|F4GWhI_dhVAOyA614~5_M(* zIqm4wdNho0Q_yAx8j_Wy)|sTon7rA{d9 -emG^jMecZ=Sd^L8EpmUi(+u#aKXZ> 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/U%4XXy*t77&Gt&aN|e?BQmBbHx1oiF<}RIhPpWUNEkh=&Qj%g z5?D9q%5YvJtU*u04vG7-r2tdPfF}tv@%I{j;RW(MMS>EovE9!qem`rXWwpkT{ZT#&X0 z`1TpzpvZ>%(;s4{Rv#SF!fa30@ryVp9##8&Mg<8*fV*dXD6N3eUcvl2)S-(m`#V!< zZYNN<>2noUQ8Op36Zo_VAWQ_hPkmOE|7jQfauFY`4gMq|%kSz?Ddq>!VIfJRkQRh; zXhBZI15W2d{X7Fqn&pShJpF#!K@nqz;gZLJc(@Tk%3x`nU~>amVLB_U z7V2A`ky_)6fLBP=FU#P&ugKV-Gzk#Q7vSV~loTckiwKLG^||`vFmcy3Kup`DKLVCx zMSc>6rwkSaqWkF_>mp)`P8p%v-VUFI)$` zsGQ{RV_M7^6j&X_o&5S${wepoY?jY^>nTGJ`$SxrxBtzMN8pcQ#vKVNaUcOh7cEuo z2O$i`y57sOvE|i8=5xmq|9BA$Wy744-4g`UE`o-*qsORXlR_QtQ77&6#5}?!OsIAs zWOY=CK-vyl#tc9G_R>JJ@y+J6k8&ar_Lj&5Oo3=x^rUoUS9X9drRPDb_tX(2<-lt3CbwP>R34}&b{Bv!ExcC;zNMI<|zO<>JyvqLW1azzLbha zl8yy_>s`PEBM{C-x?}cU<#wgeHcrXK>Gw8|On!>`X<`9^$f-40)j;{;i=5(f?Euas z-5p0=Ww?#ai_L11rn!GW&Bj{#*R^!)T6(uF(DgW@U6SN$cgBR5+W2#7{%(f-X8AK4 zV9d$`Tw~wSo%xQ|Z1peMI#x2PVv4u}L;Qm<%lZ%TeoNL5o~)mdS-9fFKObjX>jQrx z$(<<}_B_)KwQ=EV*-<^QM2p0$4*+~s7@i>-l!GSm_8?t~G$Kb=*TjA1LGvSF$x}cu z0>*Ta!%UycB!$YG n8<4S=_oO5!vp}~U0U4L>-aq@yOxtVl%q7o=U)jUBdlw>Qp z0DV6BaUR}up6mr+>I9yRWT+>QVM63I8FBBWXU>=w@~G_Dl_}Hh+nWcS)K=r zC=TES*vyK9u|$rcQslFXMIuvCVAf)hgkm*AfFE9>wpSFMR^qM7gE9n?yo z#TR67M9y17T332 z0v)`-r#)brsA8fOaP=;4x*%(-srceuK2KlfNKx6#OG_11`Z2e3QWYp`Ed`+}5AA^0 zwUxW0z(Hxnr>M%~sHzJh^5V2AkD!X*tyRBT`8Vxo-D(+J(|CyZ05=_AI*n&ZwIVU8 zXr8ymOSJ|Yh)XLC&_~~vhN^c}%kPX;!!N6fqyU0+p7@h|s1I$w6xU&E>GDz)`&cy{ zHi3spkn1?DPO_{(bzD-ay3K2tDSG*l6U$X?oMf(scOyxz=iiwp!`7dZV_+|06J2ZlAbp|Ff=%U4u*!Gv(`c zObazHv~{d3cYM3-n8N0;tV#a^Ogs{sw$eNI+By%GJC80qF$`TN(p_gpUB7+0&X?Qb z(z~vfyKXMKa2UJ)1DIrV6Yd~bzzH}IKIIjticXcE*AYwwd;>3ew9hhXfNm+4nD z?pNZcrZ%QM4s5I zf!8a8u(ArNHDXXraESWxj~03#-2Py?J*Z(E zM-7LNNDDI94JKPBE=7#fuMgbm>4i)WZ;V4Z)^J(ipW@&+MAhID99(t~IDh=pqjku0 z#uhvNG2N+=Y?)6WI1acQG9Sa1KMpSApF}!;yai809aE3AaOnXMtQ!*2jYHp!-wKDt zuT8WwPU2-!X=0`|;ZXHzFdYV$9cTIxf;e@GfXj?X%!y6Z;w}>j1%O^AcNMOu794=% zOy7OsL9SEj&a*TpSA9Rn6*CBVT$%+h*G(7vh)}ZEzQpG^ouGc*!P!!!1V_6z{J&3Y;*ZsoLwckgp-R~)gG~3U$ zDF)y1{d{iLa=I-_enkoCXmyVdtNd@E&HWVC&G3sq1N+_CPp(LqF3#QC{wgcSv&coP zeOL{woOWJibQ?$htL5^)fi_{>8xb5IY&Igf3yU|RXvA=EqXh@KUpfKJHk)!{8=fy? zB`4@MDNLQ$HWM`6;UJ`v1ssH@DE?d*pGkt}N3yP-?T_~cR<>FHDzl`RdEb^Sg25A6({ zkn@Fk$8yW|jN0uR{XQRX#KK4@M^krN1pc;{e39T1x`*Itp_6Zf( ze3|-i;XK~Px}UsXi)%meGBr-j44Q~7NWF{^nZFS~J3%mEu?hnVG*%C^q^v{^UD`0{ zd#?2>gG_&_i5y}k#O1NZl4~?UuMq@pwwA;ISNpni4Ybk4yqf^UH1I|@y?JFuTE3P{r z(&?I$rhHFw7f6`CVX9^*UL#r(|h73ld zLLAxd`+U6?J`?yVROYJg%6N&FD>mZygszM`LSm;0aVO`A?aJP_%_T0Nphv?6?{T;U zl?3^vyP$$@G!2sXi}V`LzJ>X0C<{?@g01I1OYb>8FZO0VKHT^ylv?%qHd)ND{gita=uM&{nq)AmtC<0Oh zq)M;SrAt#t2oORGN(VLc4nYAaiXdH4KtvG~L8OSNph!_5FV9+g?fvdC_WT3$!_3II z@AEpYm13eo-K!cWPD#a=3|JF z^i%jHX~xal=p{WI^xbo5n+KSUJ_H90TzU1cFO!!PiA^vRkmnxEf=d(5Tvp@5SB7CU z?5i^}q+j}`O>PWHe$Rg`mWIzv7_1P_eB(9KyJr>| zTO)W6>39iygWixH(&+Z5Z7nJguaM_E?qfe+thdh8baChkb-~@)NUB5QmOHy>$@n^K z3~fQOT@#!MS;M6NLBGzq%=akci)dN9adW0#(y8y}nkV6kc^ylRP#OPOZ69T}g{A-{ z#%%dQOWByN%@D(Lr#J*&OWmrQOmsdytC6V17WG)Q_Cr}+Et{m?&91=ff@2O7(fL|i zbz61n%N1kI=3)XYmsc8J2|;;D zcP0BTz?z=W@BOxOk(KxF(VI+&hxkm#^5Zr;Suz=Z3YRZ>dbxKy{#u-VlxRKMaIcdR zF1XC|pPsl=9+vn+56qeKvbe-Kr>)%OuHIz6W_Bt00)u72pBixO#{4nTcea`}sbSUi zR9c3X8qHR|#o`k=^Z2N_U2fW0?95;1h z3)xyce*0bRX0RM>jg;ck-e}caH8a5(1~&Jv^CWZz-gtWZ;cyhUT~tWSjkCw$cU~m9 z#I&Pq@~))LSKD`|n#J7s(ifsNtYp&`C8hQ{kjLlGA3t<#_VoICgqOiLr9`dSJ720S zt{f{BUhNJ{ydN-c$2Hs-fII2OShx!V1#GCGNHCSz_R~c<%Wqpv?++%GRR3LVQ}|II zMmgIgDd~LACAWeH^HJzug!&n72?(E={Kvg+4gF+|k`M3tB~>m&`)Q193y<*{^}*GD zPDH(_7bx9$vfU&YF6@=oe79tBHuTH&ycrDFnfH(R%uhwwo%SB~zxo}MGDd!+kqM@c z?dzDcl?&{jP%bger4F`dcy?vUuuwy-524wvL^&Z`;C97H;b0uq8uMr7k4~TkLOFE8)4w6ZFQ*_*;w9WvQ*CPdMh| z(3FHtZ2S}4ztp`P}X&WK2k zUcw-)SlMMuTH>c4yt8_Hqfcw@8=Vs^aNHk<2Y%mrQZ%GP!n=U7va*Lb&d`I6S(_SC zv|g_lW$^#_Z_4G}|4=Sj#`MG!%EfY#q;#Q-a#mrf8h3`v%~I`D+$8LD83en9I*Cno zB>_`)wGO3t=?Im}E7offwnxvb0;=36JkH4*{)cawIpJH-W{E2CD}6WrRZ9%07{oF9 z+Nda89Ln%kUIX5->!_0AGu}8mpLXb07nrl=G<}q!MoZB(!qeUGQtH?FR5a#kc%fx{ zHSF|%SeMC^#Mu-RNg{`a>JxV$nAkrEVFYtp37#r-F;nB^uKYJsg8_b`?SC}*0;o6eE*n@tqZ39H|~NVCY2@b>9KbF zav0dRlK8Ep0<+KG6Y8-1Kg0`tQnolrv!K(0Ezq%SnBQ#`9v{q(O2uIAcF0VR*H zLnD@6Rk%-jQ4XR(-JJ%X!q51$>#8$d@LX}tfD%sR0V^S>?{8Q?_g(o&V~z4Fpi?d_ z+%8DaWQ~&FLg|s`=WAbOIh+4E6{*+>fDXehbO<5Nv803 zng|!gdjp1dSH?<5i->bPrE60qm44a(*$Fy{JGM{6YzS30p zr2MZ^Q>)4#R!AtZ()2G%sJK$Fn_`6&H`1zhcrJG8YW4ZG|AuH0_m|Wf4f@_=UR^c zwlE0L4BZ>Rjx<;t4N*cv_Rv`7X>9*!fIus|b}Of2D|cKgZ%HeEPpja3>vIu=wqpIM z9$q;BNvAT9v>uRJ4P^rO4(1*x3Osz>-K^~RP>nth*sj;A_wZ!%BP9RLgcqjBPgQ;hCphyrRvc?$)p?)zTKy9@g5dzE$fIz@v@n@ch3i zmj*tt3c4+3xzL0{NFqw7I2B~|>BW$gcT+n1z(`5yNxU_s?r zM5zU+3JXDEL3|W2>p9M-4G^zI|FOWpN#NIug?UXfswu)z-Oq4Jbs}4!gSX$G(akgE{OvnDg*wDibsei$Y)ddrkI(P`8H2XkWy z86|xfZ7CZSKm!c_XAOqoQ$_fr#bgB2)>jM?8s*Fh?p zusYs{_lGgrsaVj+?J~F)s{yNX2k4=v>>kr8hiE;F(fu~SaqCCM zk?USd$&*<6N~2oR`xL2B9er)ekxsspUAEcXzkx?13RayYrQ1(8k3Ej^Eu6TX<+;954YCg~1tcMOs|p;rW(wHTD5?+c@EP(V{!jfmkoUBf9k4zTxN~gZ_vP|3Kqk;{p z-(z!GIV-5j{=%QQoZhVdR(H+~ZluOb-69+*2k%Mc*dD!rqi0QL?OU18) zdfLp`6Qj7iwSB6cE0gB}&LHo3U+jpn$&shnP|NQw%om4kbyPu3#4F?FSIp`tG&Z`I zt*O(GYn3BRe@+Cy*5vq=7RV(B>ZqWA84xJ^@dJeb-uO^3F;N_EF^Q9f2I)Z$ukO)mFndiN?XpF;9AP;MHE^&cN5kv;U$2GSI#}B?x%W@%b;2?1hbxhO zT{>J7Bkg#_6~u)tqLF1%Bu^cqPwNOhA7@)b+%S4C}Jfh36Ej) zh%*KJhZQhotUIg!B80DPD_N?o6l=;`1vPu+;PRJsjnkuA*&$6tYZe61iM2@>wryc8 z20}X&OcXm#B3=5>&wgGRO0ZTE)3Ye&$}1d_KdwmUtSjfHD_xYmjh52g_u!w_Af9yz z#rQ=a1eOsaYIBwdyZB|?Tr{Bdd0RMvrSjBuk7OL!3Xz<9T6Eri)IjS&j%(X9QE@(b zB8ELDq|wV>G0m7rmCn2!&n@+}Q-u&=g()umj75Z=TtHsuH4C!IvQ8oNSO$S)s<*Xg!4@6*TVamTl>Mcc$y74Jv`j_gEsQew3#T7=6{>vsW@5>W-Mi?{?#1H@S$ zjrOl5fyV=-D}mK&EnP2@8n4`45Ua*UX^uOwmjm?mstf%Nbdz|bSV8lb6&>Uh;yVAc z5=J2j@su>+lHg9^oVAgz(8gqfbwn9=ySTW$F%vFgx|B&;U;U$Tnl4H8KC`CO1)M)R zVPU!?c~(lz^Qw8yiM;XH+S?q*J{=yMTh1*+5@y#;J0Cq=3rV|XRdC5Hc?*Y%pG`Wo zftk@-U#gGQ7(InmnQ250HrO5+3N?1a>y8H+xIo_=Mv7->NMh5qpi$d@lQyj#kr>}2 zLx+}bn;ws|&EWTXLNcFIPo@Ag=+`6-&WaO>s z_;x8+P2}#~hLF<&4oh>knA^^c4v&gw8uR}MUq1gm5~b`&;oWV6Ea^ob^udSJ-aaPZ z3=|&y_i_8S-Q&JUBljchr#_c2ETq{1z77+(7Rwiw)F7jH6)RU8ehm?OGn($NIm(Z) zcl}ICjb5luRP$Rn>` z&UND}3ULQ7+}Ivo%rAA&K@c!0ytKl1fyb;$8Hz? z9ZV#$MPxBH<ChL+XdnDBbzj9x96&H%ZA*WGaV_xD|&&yL{nQpzKl!S-ue z+a6!}zq)Dvdq3%7)Kt@$$PIYS4*DQMW-!)+654&;cXu1+Ct>(D9IF@hM%%lW!Dqtf zPbWpT74TtGJRag%!O~HBZxn-wBs=71A)_viuw>D;e~XA~s*nD?^v3M-dC&ijU(s>l9#vHoQNo>AJr6Q!Tn;TI|TCl%Jf&3yNPtUgo}J1S`VaYcRH{cG@A6b~5-OOXSKc#Yy-<-mnfsyFd3D!Xspvqqy}Xs0RhLwwuvLUS(MK4*AkuCch{qG)y;oAI@zpwhPw1UK=)S0 zxGUz>edDEx3HtdF*XMec(93(bAO$fAQ8!tYVvimrI_2BZ4ZXekVomeo{uBVX5q`ud zz&DyG=o>Yo%-IR?Hg*fSc_RU7iO;qK@lpwLodn)3l+Yqt{-k}|C`pw!364*K`6Qj4 zO**%qbb*(M)gbEH6ZNBs3bXh(5`r9{X!Rx6XLdIbpqp4~EL_CkrX=7gX#jDD@Q@PT zKESgqf%yBO7$wM=buX<^z^c+=Z7(mU+aJEPOP3)3HKq+{HZnemYq!@#F;85;doEFcjM zykPV`nm|Get1|}eqvRHeKKm#ux3KB;P!q9~JbScjCy?caR@p=OMFXW&G%t|qADUSu zb=fKrxLHUl+ec+YGv<#n{*>}ooCHo`Q`FsqW>;Kgv6;P{WGe{@FaG*<>UD4q>BbUA zFh~L-qQ|!l;gq)KQR1Bag|0D7mE4bnE)fmfQsE$|sYSMj&us)Ad4hL8!T<`!XkKg@ zV(A0}??YxKGI6`7oh?hFbLG-QV78r^(~F2dQjBTQne;xWaO%nJ>NeOtYj2ugcLy|!8utFT;aY^Asioo zZH0y=0=*c(s>plSH(tsnl}Op|9Az>Eknt8bwxby{GypdXa!oBTS}0&JiKvRnucIKr zcxV}d`Glu8UoWQjF+*`>DTzg&hLPtq0pODN&=`cyP!0i6G(i+Ul0WlO(XIwy3Phw! zdw*RmP+f++>jG3`E7a~(a2;r>>;h}c_<%e!RKyv|94Uyu6EmZFo+|$1pjIRneF4K)O{$<2S7^)u>i%dBCEn#2 zV6?25$(`f|uZr1)rC>_zXxUKrdZ=ACOL7soEZ0tx5g!X|l7RdJRC}?|$uhwk&T2>* z)lwQ5Qp{4)WNkV?edT4fuV(>+SfQ3x9}}5I0q?^!V3<}zr)8?~u?x8sq{y&9Lrc4~ zfR$Nbe%1@3UT|hvE-sXZdrXhs$Fo&`7v5j1zT-ZIs2o{!=U9S~3ZlW=`JeYtUT*i~ z-5_SjfE!vIN%g=qBCpT_30H=d*C7)^^1<8iqC_a9pScA8h0D&;FMNTyaYY8qKx7D2|+J2KU$QY{)(C z=lNOR#^tB-V-Wt5B>(9>z(~DqqG;VD!OMtY2tGiyLekdW1L_R*&ehrboh2!Iq(Iq{ zlL$zv9_Xf4pAZGhyrr3Az_t-{Rv%MapGDs~k7*yHbqJ#=gWI*S2KpA<5+LLMwwh0- zW*4`q&6QVXILPFRF-De}r}q#|)J^G;w>6QW|#@#>$qq6x4TjlLmspV=`M zybYQTh=zlUtF&?vbdVcAbACxr6of}z^XHg!i2XeeoHqpa=Dj`p z;GwzVIy+B09K{{o7%v8htN&(X$!XIc2142W^78^)Jx#cQ4l*3ZmB_%z098gtne#_| z8G){JhnbTBiD(EYokL24O!RA|!brSSTFf{zyYyqgZ|#}fRt>oSBw|Rr6_2ikQPjGg zz10QF(Sb*yjs^URqdcwP+v8q$#=%xvWAsG-^wMquY!m^4eTXs;@y1< zFM!JR#mhg}e`AlBx|DFu6pdj3dmxIzp@W=CJ-qm+1k)4|%q#e3kl!Q1suaLKIZCGz z&X9Am|!@XfaIje?02lzf~ZW7?wt#mH${7HX-eI>dr=@q zC$Y~qQG#(??~cDX2`I8QLF42ETf#{%)zQXo;q|A1lsW)sH-3%+2|Prdp;bOR`QM7W zQBAi%Ufp4VXg%{=%A}u+mK9^M#=s&A`_mH(;t|>)hy$b801=vj3B3^sePgooswf_q zZkS}wd{Y5`gWR5Ry%}X24$4An8ev;*O=B(MKa@1C*!RTqXbl{i~ zmWZzmwt%vn%-YTYn`uzpEwE_pu>U1sVhd?=30O7)I)Q|s!Vz`Ln{eBkr61pyz7#Ju zyD5Ts0|8AChqHvYUezDH5@wk3+MBdnlWYH03lE(-Z#k|*lhdNU`(4}vI=srN#97!4 zd{T?sF?a{sm2i!CilpjWQl5JB7zQ>DJ7fYB3}S)b3+jHaq=CpwpL%oEZ0_!1_Lq+{ z(uS~nlDM?zkoE?5jGG47Lv?%OIj8%(;W&Wc7SeDhuw9M!S~Wv&BPG&~!uaA|yCj9d zc3f_RIXsQ|85Y(z#GFBDenf3txQkwKUf@yi-Jaz+wan2FSn=~}-P5M#KBX7TISvwi zAWIs&6zR+~6>f-y*;!DM&7Lt?j>BJsT~UP4WZNJ)Q18;00xn;u9j{Y-#oiyZiLt4& z3w_Rv4WyNRK;qkp^M_`whU=HkV! z#_60my8CG3@x8EMEDW`e>KDyva~|6K*!F7!qWoq$zE{6#{@Y|$*cUZh<-Z(|42cf0 z7{b=t)WY|LTO8qw9$0q-$<3rFHmp!6w(vt~_wo0*Ro5eLjZ$GZU-Xh>PRdO~|bAGImUn?1raFMh)18yi98>=;qP3>r`hl?Jf$8wUb$XcFMfmSy zj_d2&4MzJw>%J?3sko;c9(tqrYjMsI>H{}&{V#fs22}n87W#Zm&it(sz9y&XcZQCt zIA~WGVICcAgoHMLMGz0^s7?kZ>&aOt9XEjK->s+WYZla?l!`Z~z;FvX_@@_u{abzW zaO*mrbbvCVQZU_N-cR>gL9jy2_YB)VT?O#;6XW?63k;jJUH)PCZ&ZQqiH_?yX%g$! znqZFX=&9WP{2(E8j>$=K3q=b6#~?DIEHTDK$UNzB#M1rY3~-zW=fM?Ui}DNU;IqY? zUxzr){=alwcP~}AWf4?-1+Am?0&z}p$4&O4EJo=G9znCdO3T8|f^k8I1KV~jSpF!+ zWAVrNTdaf1F~OX(>!0!>Z$sG+-u)6r1=PpeaF$dSo-l$Gz{CsduDJ}zXkDtONHEwy|~&mdCE&7vt3W{INpTyxddbx;+lV;(NSHcSLJ-Y6UdV(IW2&-LN?S z)&YsQz=s3XwUG9AJ_6tBv?npatktVmH|pti#Xe8AkKfLB@0mLWpe;~_GRnuG3g+YogZ5?TUo8$asUST>nG~RC->Z^u&0MR;wO@ZX`B@MsbmyWXp`SG* z8kon^p|`Q?g$xjbzpl_oPmr{JCB}|wVo(}|&a@Gu`*OPzly}^6L_^r*$Yn)PR-$&$ z9|A8uM1;jvN)JB>q+Bj?udu4sJ#}#<44I}Iq42AJPh{z)MJVyg0tSuW$6>_h+)$w~ zupw?sc*WO1Gq%h?A$Tg?`HKhlljtGa9bHU^VufAo6q*0Qc8d2QTyROsKub3n*a?5m zRlfMR_*|v4&OgHw#}C?&0ncpNm29SHY4{VLNH&SBG%YOydB~r?5N9 zt(BV8&toR}%DKh4NUi_agygbvvVSLWcs~O*a(?$stOWDaT2Qv6y%ftro+A^-R7#%w zN*J=vmy}jE_6f8q;#M*grz;toM}-y7&;_fc?n`rBi%$~OR;}KPhUKTqwPF&m`o>ho zrV>>TemaAgtk*%d1!6#AX>cv^?zvrWf#!&+0BtZc z>iXaIQ=bw?jC*mYXEM-J+kg>Wdq+zmrcY032b-$C&W{?ch6t_q!L(KXvebA*Hhrvs z2+j7v$Qh_4ep4PM?YB6<;}!A8-2LD;v2%8@eF2*C2xsQcX6cw+;RVExP)0E7i_D(z zriFs`V%eo=qj%j4)QxMh&)6a=2YME~Q`I|}7lN#3>L1&bO~`!C$0NLar(zMu`!$pa z_Y6N&*X&S+1c&42y^eLpEh*`8I~520PV+hiH%9Qs8;2(+&`4U6u;~mLvnTYaN+!7u z`H_X$i~r|gs$%f3TqBr37n0hCL zh_i9-6S2$B=%Wg^x#$FEapu9E&o<%_?{Q0H%G*{fEX+VKZH7PnTT*+*C3d50O7tJ< zw|;0{Jsgj0n`qa3>U}HxIFZ_?uxH_O84u5v|K;|Qn^=D_MIrp_+#;@Kd35AYb5d)7 z?^hWyp-qhlg9lD`U_8)n`mFcekvyPDRpQcE(d%3}aUnBY&7}|T$zQ>qkm)?@>4oqW zgI^hLWCYKtuUoQVDsoN}x77MGPVMNhH3n=(*os1NZT_+n%R$DZ%ADY$Qj6ME5!glWm z@w)tXs6bJ@zROPEcW26~3sGpTeKh5ZB?rsV>4vw>ov#j4OM}-wtl6g38tgOz0CVLk zW9tJNDEOD7Ql11sF-ml%sw|_oS86w|5M{7t^@W+`>p(- z)b7peEhKrb&wpwrmsg%|?d#lYWsTap+5IT1`$!(Va2IHKcQ$KXQxm7dEX6``MrbqD+$k&og_2PzjeiANlWRX>ubrLY)KL zzeVzY%SR+<5_C8pp;J)J> z^=X4eifK68;Wv@eOBDp(?wXS`qYR080PwX)nT0&ww5sx$Zl3VhVeQevE9#6SA>**; zp@;XkX*~E*47(J{oN#zo1^J7>uj;>{aM?j=uhnVa8-KVVf+E28M& z-58T=;jtK8O`+B7G>NRKy(aE8ctz;lo zw?UPTJ^jF_qQPMLiR1M7${tcMjdY7jVx7V%zA0jcLg9(Z4M!$*uxvLnYd@F|=sF=5;r}!uc%P=tHaE})$!=9IAfN}1`r=)s z0q@nmOA!g9nBP+%JzwH>2=eS?mfry!;e>b{XAs(Y_i{aAv>PESAWR1IlMB1VPEu<7 zHX~VGS~@KP3-iWm;7QUo8d^n*1FCYvsrY=Ub;9$5RKdw~zQnAde&&t}5W8D{JBh!+ z4d)>@LWwlfTsGjZs2hMS_$Op0}?yTzO8rV{`6F z0ygFO5+kyNpj(M>&p^flh{`syGjc4y6nT%YY{6b5b(y_}g~ryGc-s=2T${3T$snCH zR{xnX?zukY_u1Hg+TZ`eF-GMCEG!h8dOsI&PE{v8QPZi9(UL|Qtw7qA^BG!k+o@Kc z-+xf7c)wwijqx^n0}D-iexOBF+XYDN{WZT2W6Or=Ju}YqybziUwpU z@OddMJ%A(|jr65R*3jU+L}Wt)AD&_SVl!@8ku`a!`?l_l>hjtM{h|i@>Y8DxN zX|E6^I71G^-!7)f54>c|rS#F%`dLMAJLy97%LF4yJeGm1A&Xx$s4?mp%ILiN8#&}= z3`FL7bl@*Takv!&k^8v-T=ftRZ9=$->QtroDYLvnBq{gK!}g)Zmp_`F4-p-#P2&6q z-?bv0`9KyJ#bjT(Fl3}p#$Ms(L@<10R*@rZXUvEzO%iHhv4wAM+H{|KLaI;^mN7xN zJz)~EuS_6a@~%Pv%WXgtLVA%{Vokax@Ra^q)Ix{BMh_tF=@QYeA?76zW>GuXfkzjgNS}QkDELFb9ArwCPW%HM>#tE;jQ@xJGI$)(8@g-0DG0wUMq5+TufAd#iL4 zfE1xWimeYN!}3`0qfi3rf;pDa&l=&hm~6yJGOQ(efoeXUbOa^7NwGmZuX~@)Fe$=2 zon#MkvKOuRQZN2@*spe|u}S%N#Z$gQ%hL0}j8m=8hE13?2~?@*X^?lQN_(eYy3^+QN~{%vkE$UJ8q@y^$e@35--^ecO}=sw@P1T|7oP7wgeYRFBTTwPxMoK zz7U!3m`7f;evy5L$3@%ncr82zCV|Z zhMv9sn>t`UFTK6U0}%cZnbIlugA(%}&w~`G$p+6=?L+u=qice;NRB77&mq^agXj00 zjcD4c>s6#xU4FZC{Y(6AtyH(y)Nai917p5TEPn;C+kRPiz2+hAXQhWp| z2qYokE@b;9a;FIYxbr;$qkgrSX^7If@q5Lml`(MionNH7uSr|W3q`CzS3?DD)vDu~ z4T7y_H92K{?W!6*NTNF=MIn^t`I0=$RPfK`8@JYC?;-OS{G0Q6Swc=-k|Md^YlJ(Ve;yH7pJ<{J z*KEwubE$e2U-G4%9npCTUZX(zja*AuUk&f55A9g@n@tJH+DI1tYNz6;*nzaJzGgMU zS%V22SS|bQR7+17wTn!Ie+Z!Y2GH_NoFpquWg0X^U}p?ZZ5T3ZfSYA1+s(aieyh{? zUeA6lYj>SCFz{_g^kWM04(D}_hoV%iRK%vrjzH(N!SmP6VKUmOe!T1W3(dh_0t@t% zGpg4mqR6j%1HW^_vrjEd*dU6|Vg_stTMH+Dt;z!$7snt5GN*%m7MgwCQcadGngr0w zJ(Ux$bgcERE~KBl%eN75dA+*+#{7E#>sO}UPOGRbzJ&HLs*O*d_2+vu;VV_-$W+FF z&nKlx;fYWCeyjMzEr@0Pm{2=YnDnh-HaLWBjpN3--V#_~-W7hjk^ED&@O8$!Hb2|E z6w(2GWJwCWkcx=(_4QnC-tP7##{CvgamnC@cV!{9TE0kK3!Sn3&i^ZbQGIS~@t0Pd z$ma4OVyBUy0e9QidQy#eJ^N@kTw%xn?rW3+clquW9?^mgDr=W%5LhdJB9grRS*Q9t z&b1+2`}8LTFL92?`4#oy7I36qN*s_J9+K+W3BSnvecS4s!Ka^-E*>=CyP3|=FZP$V z(Lwy#A=Wzb9*9-d?)Inuwp`B+?l{$^3<&j^60mFIvWJUUp`@B>)@@1!iS7LRBf78Gsv}+uFFL`T5}GeHs7|4dSk$BHJ$CT2Ztf$<23@D|N-^h2#?xYJH$JZ> zbS}{Erw4sv*sRg`L!P~Fs)8kVf)(uT8WU$;&{+pxE!e0VoxVehx#P>Gqth@Df~ipq zvse7_Gf@1MR?8zYN|xm87J=`B`P9xP7$t|-9+3^>H-irC1}g3>u$njcw=fVs7o>fG zlM=vib~%l$lzt+TM>%kPOJtD5E@{>1yDd75q{FxdVLyetZ(yckObX1YqY2W?<^OKH z#`F-DUC5rP=1y9nOe2aJi^0@ot=-c)^aYEP(o#q?qK`c>1KX+^6h|35Ns8?Q21 z@gXFZ-qj->-Ifp7m78mWavh$&2>4x!2%CQ53IAC&c1P6l`1f$Lf@?v{P5uv2R+8HE zu+O(_Hzh3I>-f^$m>Q$9_^bl+>Fxs(v^UFy+d?{j?G)VM?e%s%I~B#|LkjHI8c)6W ztM=nVx6)N$G-uHeALhJZ#(O2$xM09}IHQQ8)i@%Bz7)|FEvS8uJBNv5x9A~mB9E^0 zujU1J3&8^3A=>Hbwvli;YPu!Cl9lf)Ym0T;QFe+h;y`^WahER|L-6bRbNLJ`<~Qox ztEy!?XVDmrLKE@xzE@l%s~*18{%i`#G*_9?|A?J)A9{nG&4uUsj9cqvD)i9y->6MQ zsBlR!6<6KQw*Mmn1n$1KaHAN@bX7VC-nC^@i5jzcXDDfG{2IH^zvHg8sqrV`#+$0cR@hu@d0@~lR#c!*!M$xIKh-7PP!WcOnBf|$+Rqc+vsjND^*9Rg{( z)g3F_+^sapjT`U#O*MJO^yOs>;feKR6SNt@o!?&^K4wKzGT{2NOv&Y zsn^w>e2a_kDvk@*ZF~Dyvio~?dd{6ErQCAm68*$iCQ4``OZpn+4hL>YF>)L`)w$zs z)4dpW>TGpzLr@36VSPzjpGlv;3_P`ax$9?aK7qLV{1QB-{ zrEfCFSeBvnk=`~57Awu}3e}ZAyr#8f${v2TBO(T&QFwADrD&W(pPN*QUn8+RUF3Au zD9p_E^wFCqEpz%hcrx-Uo8uo)aTw^+V?Blr3#b_5%-BD+=QJw{obGk_Fp2G?;t@Cl zUDC!IEeW?_UUPc=7CxrQGi}CU2(ciQoY@93Rh3t|w|weO76bjjd?OyWUY{d3t_k%kILdZR|HZv#Co;T6qEL$#5XaobfR^$26+`^|ANi*7Wd0FiuI_BT%$O8XqL0} zxQGI@M7VRz4Ew{!4pC?%;PwZl?AwO9?lz!rF#|njoTN41W7pb z)q85aqkJdD&UVbYoVGW|S=qKB!q9SfungU+h*2rPRz?$zIZP@MI)Vps?xQ;Iy)q}f z0XZAOFpszfgNRik?vV_byrsS%d5y;Tz(g(l{tp`ViJZZ6rE_XRFC$RMQSEFshN$k6`1{fQ9yPd#M&yUyGlGCm{-gW}57JczZ! zho}@WmiY$HvM0A)^y*^Y{z%uAz@$>gYuJi5b-EimhEob?Y8XkM>G@|wmTX?d^jzG7 zebj*5s$%NcnzeC>YwQK6%;%5{k{X=Zyv;ED$wwKLuyn^O;`ZV6+2nx`P%{ysVmttS zu|^9c5NWS2+zNpJZr+2U2V4lcY%(cG_aY^d75aF|jO5MSL*YF+EucfK(lL&|AlB~Fjw*1fL2|zTXx`l4GT2|9 z8Z4-#`eMqfnEEoDxMtN@GewJGYavYDRMQxYr9vEZsX=A|n0=8{Pdy8&YZD+zp&}GqLeuHnYXYzPdXjFbao$*AoTg4( za)>yYnIzu{+L_I0#L>sCl|Rxhr^imOD%|M8nE{`agD?slB!qoarLOW9^N=7t^f(gw z@EMZjFikgw@xh?vK8Pibm%xq^3nVD^cO`!GO=(%|@q9E3)1dYb`GpMdToIf*rJnA@ zM92hQs>jUUYY8t*78u5Q%lJW;WlxplYw(RJ7dDs1SC>>7IY{s(Xt?UHOnazTXhwpACM#Og zr-Qlfds3*wypv1h8avL&|4UP)>kF--;Mo(B-~k->28S|MM=VaTL<@`D84rv;XTa^~ z!joR`E&t4mW;(kl`$U#dh-lzk_V0uKBmW_3C5M0f%({*rv-p27@%A~<`|A{ z(V}?VTi5I4GOjt6Y4lf?Ba~&BR-AYz8Dnn~g8}7#2vE@@(pEv12j6^OWXAv~*7-hz zRr0$)Tgk7)uSG6nWuqOLE@a-UN@s)YJjM^Lm-6wM0$W_vS=Uh;;+EMU3+JfUT~G-t z)cIrL+o?kA{wIbGH(V!=+U$wHgr~ChgS*$r-c1V!i>n=6(0`W1JFNOj(UZEAbY^9J zaiu;3Mmm!)1}swAkCl3s(!?NvAm)$4anMC{ut>WIS1&Oi0m|q&nvJ9^*zDWMw!e00 z{B%W;cyaL*&+!2JRek02clFM(>v@5NvG1^6;Aia&Yda}u%}b3;&?iG8JlzJG9|qK; zg$fkY5lkokMucYw%2p0$T`QzbU68PXe&}-1ZJa_?Use?PjE%tPuaD`_*aF4yF7nXR zN`rB#V9|)#H5%SnTwg?ss8RI!k01AV?FSaMypC3g)W?*)+z%4Hf*VKr(rpC!9V1zL zjyQz=T^dr#)Kl82Y}5G;w$EMgmAiiY>_t3Igiwg}b<_P)gc}rPWg0x` zNv93ka>K>(=OhM^a)WF{G4C8NR*`v~h#_6Udsqs{bY=O^`SM7y%fCtPX0un?a}5yQ zqU4Bj)b7iNy!t>eQNE9$%(AqK)jQyW{&W)KQCK>{LDj#GooHZrq5R(>N-w`3=7_3l z`v2%U@2@7Jf6*o(5K2g)canh8J4h802u+YC(nUm6KtXy(LNC%qy3%`*CS45}I#Lt? z5tZIMDphj%-uK?R_m}r4%$hYbXFg}2z1dT-sLz4%`ZQsod{B}YHjJfvX<5jwIEcnD z=GEIw&7sKT7$%1ysl{u8%Yub7d}&mIv|w523bu~-iX@3n@d2IiJcZY87Kc*C1clv=|mbw+Kk+wHb~>Gh8?cG(_QeD)q$Lc;SDM&LL9C{TYwcbOxQ z>+l1q2#0-kx;lUhp{%AeleY4q>eZL`idU13`=nUdZ(Gn2mRCYb=5Mhrsr;jmMm>1) zkHQ2);h{xplDncWPOMb{2>+a4kiv6j-nvTz&TAX7khN~idc@Vhr~EHm842c4?0u}; z6H+pM&BzKjx00B)W}3Eki0KZ0oN2=>;okrOkHKcBNP&=XIknYiRcyX<>*;HrakkYqqaRoPh)n&Sp6zo z>!sa+NKGIwvUuc6pY-P&2>!WVMK=jscZ+EL%W&B=5-qQK3V7W1P$bVsq^tIY2C<6h z0dD4aLKKeZuodYwTOwXWH49f04Ia0_NYq>+4GiVj>3d-cA|IObsWS=KpfZ|FqVGlc z&@+MLs}Vym(x;!*G@WCgwD7}W0(28wP(a1-XR2}M_%W7kDA?tbs>{gfsP72&%LPR; zW_zr+n)+Nch?wJfQPEJ?V^v%2pK72Hk!ZBNQOpuy6j{?ztOaq5I7@)(OA{$t#lEe$ zSlSVgw0KIQSRa3cRS_VD!7Or49(dkp^yOI$v6an2QAw~bg!b#0^mx_MQ6wqa+ZRD8LzcD8$G{hGMG z^U^BS8_Thq+j}lEEN`$&mVJ9JD?ToVsuBn4PY)RI&c}~~()50DfR|RXwzb6jY@ROB zG9QJ#naW=H(O$V%y6b$2+&0xN9EjuWh-WL}8?c?NZi!tp3FYP;tQ}y#SK?Qk_zz+Y znZi-nyxCh~-uHpdCzE9ru zxaY+o=*dn^Cmu0iv&WLS7x0g(y*vrpH=q2P^4CD&*0FBrER7!;{GwZum*xfC53;0E z8{*vx?LY4R6WR#W+Aj_4$}@Zf`E4E6^as`rr#FvA!e^)>>e-^Dj6Om1D~oQ^hVjbQ zYqW-*pL|!tcQKF6OoMdv{*9^4#xfbz(_5-$Qf8+z|eu zmS%@5=SN6}DqN~>?;iA}gtC_Lg@bOaa!`kuKG@{P6Yn($h0MOG=<)##o;36@6o|TV zaeg(isUb``#10FsHsrsv?*P0JCreBAC6`gjNU=6b@ybXG9GcnL_zO46s2yrdZ%gjd zuxK>O-EDLxWe;kBYh-1vg~(VpAFv|2Av4i+J#3E6H}jDsB{D^Vi;O}a*;A!z4$VTM z_R9TUT&l8r$b#|64+HA$P$8IfC9dMt&M6R=|EIDb@!VzX9vVQ84?r=fng3>a_|u$t z;4;m}OE68zXMMt^E^ilh#l8$XSEO0iL`StTz@w8=%&wd?EKCjuy#>hEE@B-CH+Fyj zNoWjJ$kC9&^Nod3>^oxU@pPs#h7xi{4|piNfcUCNd3eMV{Yf(TZ9_eM_Dzzh%v*Cc zq+W=J>z*{O2_Oy!^Sv^kcqV6UZ5v7(0Sdy2zwWtuU(>ur&X&%~>nAT8{*PI*oJKNh zXs4SkYjePM9LiDF%m#PITC;}jnuD4(22N7Qxa10eK9ThI?vqLPwVNLm(dlWtbzW<{ z&)WZxv0s&M|53-#4;a{f^~R$&*KnEj*kKWtXZKycA2JO2S@Ac=NW@AydTV#xP#VJ_Rl+_K zqiBqxuy$d*0$|=@jQU=vZq`zUTcQ>>1-i~sNRT2tgWT#I)TL(8obo+7iWi~52^Oh~ z>;Zc-7w%wXQ;yFmy7nqJ++Y}*aKQ1O)Xlxj-GP79Bp)*(Cl`gaT^N8GZ}l~?NKlV2 z|3qCsoTCm~IoAz6c9*!;ot5Elg}UU|W5oAB-|MZifAeltibkX5! zB};_Tn<>cHI|LQ<7LdF<3w8x~#?!srp>v8*x<{m+P^|W3|6$9fT>1BnJf84|YLLlm z6DsBKrPlV)+(dI{I_~WM3WE@WZ^4`{K zaJ%Es*d^hTpRG2|BB?LIi?69K(;s*dnGIgLe4YazXeV~0%xA~cGz9uCn`)Dd>B zw^R^y1Q)EikYR+0Uc@QMS6x9tU87Yi!a+~5q)CPtc~711E>K`rx!bcbT>WTFUY%ye zp3lxZl@*MLKgG(1owI|dl<f1UV zAbwUHW$tx%Iue_T8dhOu|LJgi2*&FC)*9}fMl>9)m8Otlulbx+>fuCd%Kb}s9WIJV zG1Wo$g@Ca=)BawsraFxKo$++T_z(=%CRi=0g~`idvsCfwCd6t8lfk%&{A8n{5N0NO zz8&}(6gOu`{<-HKvXPJd$A_-MTJcE{w_V4NLygN0CG6{N-NN-g+aVb#Y9 z?q?U9&Trpnw20C^C)!~g7s8>O9Ov@gmrt)7r?l%@y33={JX|!(^=vPv$T;#RLfmKY z!@)rEz5Fe=zoa+t$450c17&Ozat(7>RC8OcILNI_O$zr%K1B2sXiF$sgO{G8ne0C} zzQbtr&xk|;ekFH!9j=at*LpVD>mf5Qq;gZ0f`iYRe1A=S$O|E-j!Jke6|hhpj1oU< z_3siX*`MsGUX!&iNp@m7Smb4)^)k|Ea{WH`5q|lT9nF~=5Cgr#k)>OZul~ecsf*Ur zxR>3DD>gC2kt{e?!RhTJm={=D#P&hguBL6t% z`kc{8SvYbQc3BS^GZvmt=WU#KXw2z1tkizrp_SCPC zo127Cl>+jC7+x) zuzV1QpPMQIGul`_jK%n&K(LG0IbKOo6{GR2P#A|^F1hREd2!TtAS8zCN<%@u97wgL!IG9pPe=J7yOoQbJmf8G(5OC@do!HgX%@JMj%CFqYd zzrV}#$^u%WjB-zea8$oAB~Sa4-fWpULa0O&_YO}GU%Pvh`if}`d|2j4U!^MTY_@ll!Xr^L6e%^wi-? zb%iy=gNQI|L&mu@m9JO&x%ik$j{A~CS<}S1htRujDW7E4rmF|I;_JaK`yd@YZT?psNSTUa11lH3=0 zVN6TeRExWE)(ynTkVQ0(Nip~Cx6 z&N8Nxr2B&P615ly4L|pHF)^{$Td~wvg-jwAu7i_l3nFv8fDuB8I6%2$#M8>(4Cb1} z5%lvBD97U@E!0N>?FmvWajg)0r6lEv@dVuk8sApWAEEOt^r!wwR&7un`W6wdtSFWD zPbh*`%5u(chvH+@?=`gDT%j5>h*#Z1ofUTqQ8_jOGj(gAZ_KjL3GXrBP#TK#T_kSq z1HITW43oTYDu5hHW7|Yv`7&pVmc$hpybR-}N8df_R1`20EcQys)Dj`flbWGhPvT4F z9rPsS5#6OyA-89AR(1<{L`d#h{p%zEWS^A|k$70|ltN0LZl8 zy!UNrW@nF+e6B^nn1k{)sJq^YSKA3|qDXA>x1?rHge64~>FU`t2={F)miA;*t-0F} zp@|B~sP13H>ZK3dgh33dsc%;Wq`$Ec@G?B%+BUKjJj7B8gKp`V#RimqRvbm^xWt?= zsVf&8(|X@-yWH7^Am_A-DY}`NJZ}PCrdv`{&^=FzcI|EMWiG>)-rROn?RnWHSNwLZ zAk*5&ytLCTA~l9HUA;fUX5Y*~9Fek%CxLT+s}^^j4-h|H%#$s@OwUni{NC}^mdVNE zSoiGwqhse92HXf(5rFyh8-f;9ssO!uOO1O`KUrQGU@}Qpc9KRE#w;D4Md3wpHL;o$ zoFO%Kl<`tHGgnbIu3d}1>m&O~{!oW5)a8pz+`~LR*Ma}>RdID6>4fL!DSyQUK}z3i zovfhu#m=68bSxxNyqDzS>}=(eL5-ywV_wUmW%-`GrWPCJEoV#el( zOzSe)a@_>t?g_Klby9v+*&MiI_{ij%{p=k z-`o>gp^<%37QLs=y7qWQ#Lt*kfGGP$#Ij4;`vBf>l}o2Lms%PT`)ja3-4dyIq-J`G zut~#+*v&-(F3@V83}D6d1nO7ZB+GyKVY%~-g(>-R^ z-^a`y%15(v z$1l7nA3{z5d3BY^N;##@cPwdyuM`5?@e#j2;F`2L$&ce~LeNfA&mJD!ul+rgse6Tj z;{7*F3+GzRmA*GI4qWzBP<836H%~Xk|u4YTD@sHEvtw=)9}C<6>69~M3k9pg8xySON5>~)n@7vl%Gf!z_1DpB7| zS|!&#z7-)zWZj0F*7|!pD!n2dlNz)R9vr<#^MQ^SQ>p2OqAqZw{VrPsQF<&tJHhhk~9k z=^3ND(K=GhoS0!FV`>B9U;I9{p~_L8Zxma=p{)l{JW%`p-{2R%;n2)w2@{-XgiqB{}07#Yy`njtSCPtM7 z8f7Zv$m~L&zd_GEoVTN~WU`+b-j6Ls@p%giBx1Oe>}gx=Xv+z-Dse1KLfnDdyo7!I zi+!|d7so{xE0_IMhzZ)O0mY2rCF2C1K4xUcgAOE><{UVqA`+PRnWRlHBh`H2D?2_k3*XR1^nlDKOewRAYO7t9y3WrHWX`0#5TogPqi4tbUP)8a|p`#MgC?du6 z(5;lgbKx}8d`#{989ZWw`}u<4G#edK>~zQ zUsR#tx=DCHcKv4D6Awo_N{js0GmLEOi;6^J`ADs+UIkA1=+z07&S^q2*pWG(pZz&( ziU$O0X2fZKK?lvlZHb(79vBlKRc)i9m>2F2UgB1@tZq@q&m}6?I@-JX5F?S%t;1Nd z0?>?D(Xh2lTj@ZnkV+>R!`J*mo#L~ozcfq%2uufXAworW_XTnel|mZO>GnWwewADL zV##7*2ETRJH$o3?#Ae!wlw)md8`i8KIEaTbIaCjs2D!)wfB`heNWLe(mA*@(dknQ` zcRp(ss*HEjyHkkvP5GlzfbG$ZKtK|{l zxKUiXER~p@%D}?ydvZ213l!55+YK+xQEp4Cx{ZHwTt1ADpn=VU4zyDEhi}_faI%|y!*z8 zsd4ZxbrGl)z+kFDft_@4uR6y5y{i@hF>aJq7yP=Gc7F;1d%8gJ-Vn@0JhJM27|bGR zkk0Y|fBWvftuo(z5ln<@{%bD)Bsu-zQ8MLvAt1Wc)=3hxl@GeHj&_9w#lxr>7Muzu zxvIu>)|ej|VU^VDuIT6MSzy@@WHCme&(qzW6d)v&w;ug5<0HG;Ka9O^&6grtT0`AF z)In81{Sc)Q0ZivvXEy^XzNKW~apH3Q;;L-oEG6%0Ifj{l;@zTNeeOo(s@q;!d(E^! z6_@}wLKk%(@YeQt+&jW3UE)9h>STK8?-8RJB1WOyRYaZ57RP2+f;^rg$p6yYVr&fnIOVHy+RwPLiZZJQMDD1(p5iZ_ z!Y|44RZd*HGIU2ugdlb#&yCS5a1A@t2xfoDXQvxLzIP>*85H~mMJpagvtw{gP9Z9? zdriTQ?{cT)?4#`{#`h!T)40NICVQHzx1wSd`1%3Si^ZY0cOr^l!Ds8Cq$^SnzR=jU z#`I0mI3M#`Oa~{iVP;ULx%gPV*5Dsg=+e0>KOAFf*nA}P5;(hKxj|+VMEcn|At`nE z21OFDy_SqReLrnv$w)XE7|v|3S_*jn!!Ln3%bWvqx}|_Q_EY=K#+S_(#<_8M{Ru^O zwAb2_ONcaufHX8HMXfDO_ayD6;!9)ym$%zqTAsYT6q4NYPk+#s?sSswqL|_CpW)q> z;eV15te6?FdU%$ChgDD;rRT_Ddo9E z)_f*kglnob$-otyjaJ`H_RD!Sp7X(yFW*0#FH5aokxw)${)b{7ALa$F^|{DG$}37} zw`Cs1bnG&dFERi#rij^S(*m?({46%8XL9(I`2PxDw|W^N(Vh3lt5DAG6*DOBI;QAf zQGr|-6hBiG%T}P6ZN9>GbHx&Ee~Q_nEHSn!xot(i*QUtRj(MnbU7v$*Nr2Cn)$EB< ziF-g$O27lJ)6xv3ijUrLUhP?&3(tY2^gJh7tQ?gE&B3b{Wv@=q0ohdpN~XjazGob! zrIwi2ZPkaj6T6Q2J_nd?`Bndz$(af;pIk$|+0A~qN~}Fos-yhQcN|bx!ce!HY3W)F z``lhf-(kFNSIe#5z}wMqKeItB@CkRv-D}E?FEi?|D>v2S8>Fn8ZgS#J3B`tiZ>{lf zEzjP{lNjy=Ham4RyPP$n+`O*m^!QEqc8txfA_8^yT2 zQf@B^Y_I5OuQ_Y4SMGQl*wNO}@$RgnOS!WruydfJ^V3=9xbnNNf$#Fl!ERDQHaYK7 zlwC4}<(HM)CH}sD@tyMb_x7(XAIfq*0B75^{fOSmsQ;yU1Ofm6^Z%uKL_oSipa?FT z{I**{r6mmV?7W41oA^0P0QPw%xp`(hFb)OVn==~DvAF=ynn z6`gULZ*_kmefv(^e+N8|NGfCfSdsfRxu#W<^|R$#PPBP6GU%?+n-ual`?=Pg+ulFW z%QJY_{`ga~Tn6|bmtyy5-v?f@gV^hQ=am8^+>35}g@S6A+!JD`*8b=0_;6Fc;v{-! znBrd@CGLXq81Bj{rilfTsf`FA3MNUc9`eR9JRF9RoL6HMuA8%F_RzTpWMDxNqTsOn zWFVDa4E8y=vp)^EfhO{VpDmX!CaOHdbGm@PJ)8?^L;n7SAKwNF&oW26Tma^5{^vMtqzBPxxRCal*XV!y|fsrq=vbp&d>9@Bnn z`~Ag8n?C)O+6U1;Uo9T}c;QKl4{e;Zix%_Iek5eqrDm2?^LOTnyu$<%+ah)}>)9a{ zjeXjRJNg-Pm;A36>+)Odcuu3yy#*V}SbMx6y7>>z>}7jx z^`vg!SJPB>{baq|JY8Y!iG>4&ww}T3)2*h>r6|s#s_`#S@~qL>E-?vws^-j8@MWnJ z^5* zUV%<*%#f@mLhTUp?|k=z+Bq#95CF;KMIF~_+n`W)^!Jij&ci7)^t!)r_46qmt=7B||&nBr0u$UbZd&7=DhT zQn{f%Lk`Hq33aVNq{l|QM*b!#KB>bvx2j)U;3zowlVU6;;@}rR{I~pJ!LU}&@ZZ<) zp@5q}kmOHXb*5&z;yo8#E*;q2aOsxLE#a@ADYZ2_ik4wu1kb?YeLMkICG^G@ryl_eXLH1H0^l2)`Y->vw6K+sYzHeHUWhe(u+QAk326c%*tAW zH~Za+Rc9)qk6p)~CpRYL%U~R)SFjI_CZ2nFl-q4PYw+kMXBtdY7(5U*MaPcUXTB|k z*7NH&d_@eubw#s*t8BFw6ryvzDSpLb7(@Gmcm|xNXp~1Z1uINfKRZU#QgV#U6 z81ppL0&h&6=~GWVn|0_BDt+nWZ7KEd!7N8@V+plhWqLn0td81g&xCzihJNe>9CiHs zN?C*g{ybQTX1%FY>p#WGd5t6D-QKH_O%lhiQAz^ zgzFxS`XyJ*pKQM)ey@j2bWhAeE%td~!D_Gr?63d`%5;KZTO*`q3@^b%Ba$IP4QUBm zOC0h^H01meY}}p}n=)xgafdbyVzT@u{@dWl;uQNaqD`WSjoj;QO`SQeznV%4g`A%D zA=tX#DV_QAduW0fMkGhnIIRRU6~YRw&*3~?Cu7OI1MJlAl3#0`e&+RONKe^^YpYOv zNvQ=WDuRG)f#32WvFLL0Y#8JDVl2=4YUSpZLXB$#jiwza{i!J8&St=5N}`Nry5u9) zLyqbG*VO5pn6CQ*))KpZ5ZrW^$t~UpnjYBT(wZL0IYdw*~O z&jv9g!{E4kbKE;oWpUOJ@`u3Q4YqPn*yPuZmap7d^?@xB(zX0_W=Ece=$*~4>qIww z35EI9-QSVcj+S>2PxkEVL}SRmJq^d~(R;9n^5pYRG$vm0b+fZk(U5tF^l6B`4eDp6 zf_N_He&X1xm_VOZwM%1?s;2U-u_W+PPv_Ic-g~_uWs{t(tLUj3#QL0~QL9kfd-DL9ZL?FY6p5V|BY`!gQpZ3e2 z+YOCAVvcv&rWp&cVY=FgAiJ_#HVnwq{Xb`r<%=451;ot^A4yk!iT`GuL;?O`|t)eerweA^DC~dbJqOc4)DoOv9%s|^cMo$j}7ogk=0H(~wP}n%Uv*q%HKEm4%A$IkC ze5n^?{L(H6GggSC07h{YK)EcQW$+_90go99!g-}a<^&M78o~qe8p7{z)0jR4()Efb-? zu<(u}q|REP>O3{LK)HMmUVxx&)j@RH8N?pL%UcziABZACL*P<|zwrnOfI2jvs(9Dq&XHA05RqL@mp?{Fc2w-bi1Ck8h?c9>5d$_Of#U^nt7EV&dE^fx zS5|h9VPDsM2>Te>4VJVAe^>WF)Cjmhp}+HyE+{#E(_0^ejDU0{G9rUu?q2luejCkx zOlYrS0r%zJ(AU~wkgk^xj#6xiSY|@nH9`oIn`*;HM@2%qV=KbE`0n!8 z7obr3X`(v>=@L2R$KW4S!5Tm&WRxBS|3qZx(;zKkv$yK97mZ%YSRyC1JhvqO6a4%^ z6G=e^;_k0sf90Ub;NyKJmqWILt?s#OA4h&W@`diZg~H%8a!1Y$ONxKs4{Y&i$i6-S5k%xQD;zckYI5ljaB7*kv) zSTbvlkZ?c5+&6kz2<^5mG+Z)}3r`X5c(<7d{ey5B(nZ`h_cs0J)!kBH^^E}Sf~`+J zw-SQs#~~Lk%cQ7S2+s4zSpJ0$!a%EF;(if5j>6|iiKX2(+z3{gndmN*7s49!T|UT* z2DXYq%=yE{?Xu4Xo_>vS?X-ARI#s-Ao*xv4ocAx5Ju2Kjfj8>DMiJ5+6t7=?|Kk&~ z?!9+{r3q!I#pTt+z$X6sQxw2B1_&D{7g>G}D|UB)fEOV8Wob(pNXos+(sk-vCChvv zY(BDPFG(g_g~*?_=2`ToB<>w55+#svd;*I+dPaw&|I~)a-6%>}&5-|=SE_`t%qo1> zn$5QVO6!J;;b|dU={2aJgd)OY^Ge0vQrEcEf{UvGh1!UnJ^1PzYzsjDC!-RAEceh3 zn2oInw5w00q0aCW-f)`IlC4TUdPJj#=(!Qn?uY2g&s!uPmC{*d7b+I- zw`6QddV#WwONHGp*gYmI3yrdyL}-g@h_BU4sw(b3hXx{+?dVnso}~8D^}1Ta7HA*B zqy8IowGO(=5prz+vF-*dB{V|WJc1enma{aal!d=Ku#o4b^z-6Ko zwn~JR(&T$(SMS6@b^O{@owK!{XP2G4xl&&U>S`jnm6MHtMjdTKhYgEmrN7GjPAs#Z zY-Z42;pClc5 ztQL_1jS)d~xxq7t&FTV`g7x%<0S$2X2JYCn&NKMj#yjF+1H9ucaVpqR#3OIUi|htZ zQbrujb#87p7sqw*?-R5(5LtRfzl4dy_vzNl^Li?SH3I_ntim9n)w{GEWH;!i||K_2gyqUH)kQ;A?%X+y}+$I2Y@5zYVI-_UPr%;m{2$>s*AK$O5$RZ@X zC_1fdhXFz5t54rg^?~;b3j0C}vMNj4v(JRRYn1wxjOm|N(#bu^gipWN`qqIm8t^$+ zen{u8s$ZCJlvTi<{avyc-_hQwP&pmTFf57avZNoz(wF4ZnQT#B%fNkaw(EXehJXb9 z>}a_Dmt!BH~c6GP1xGIsnry>AI&9O6F8#jQfx zYl!iEvx_L^ADn=vjQu-?GgQ0wp-78}7M5Wo!>fY*+%IZkStTfF-lTWxG4=b3aovg` z%{$5rL+#LlSf=5ik+b)p`A)Bm$Q^xTUp`$4mcBz0vETXCCK#bAhH#;#0|9d``d^dm z@Z|i-$H7Wuu0rmZ_65n-9ojEhPQ`4&0Z-$g9!jvQ7Wu(e$YIGb^D1P0C!O&>c)r^Z z#e7G~9p$LL#!_hS&P-fs^f1i5kPLvW1VUHNI>~l5>2$~u$x-GSbxGJ9qJga-d_s~zlJ*D1y&vj zCw+54IfCe+3CI$<>I;0=sS*7$v=8Q%P`y{MD3q1(Naud=jC$1}@lIVam3xjvBwY3X~x80(3+rq*Yu`ut8?v$L>K5mBLv9F-e zWx}WB>-5Mn7rJ_~(I~`NKfqm?;~w>gR>rPSWXdx}Wx!HCm77$CD`Y!^!F<&`A$w97 z_N;x575C|>^Kw}2hSkrF{+o!3Jvikv#Eq-$zr0xgO0nWxAMnME73emZDK>%Iv%L*! zkmmXQ1{;HkTO9Z3@{JZL=AovE%U{H|Ct=%Q^meH0G+A;CivF&IiOSh`_J*?DSbLPO zm``Wns(aC#yg7&zXh0W0TLJT-uG^oUY$I{Y`^JS9D z=JXL>yuWm2=XZMfk-ok=Q6zr0^i=(*t zc`xK@5Eq%vJK6VTQ5>UNFakCDACV+^1ko`@d+!rsBk+?l<}pMH9E{rW1uk&ayPW)a zR3hxn$?3lRv-rF2JM8`xFZu8e{P*3_eL2-EG9d!w`1{Nq3|!|YzU8|KDkawqsKcIZ z@$8nhA);m(ZKwZm{QC3a+tD{yI@IVNQ8uGdAvgc#N+8sDk)3?bSCe=d`VlW}x%bRcqtf%eM|Uh^i)G;NN>v$@PpDt0 zAY25G!N7xARRr5^5{~-^#Qn$MqVhGPsKYCWJ*vY8jt_20)JRvmUY!Z>zjMZi`&5HC zXD3T#)c|NU$cVXT*X0R!GqpSy03V4wXMG0ypM`hj_o1T%X#XB<=3WX%=zcEC&z~Qa z0psQ4A3}6|yh6bh{c0TY)T$9|#tZmM)uSyb(|A!Uk^A~HFuTc8fArQxtX}kigOZPs z;f0>i&MyU@MV>)^8WT$$Yp^wPD>fb_`VvT)m&)~I-`+H< zz4Ojh55gjVOA{Vw;DfxVZmqX1tIzR~bE+~0=UvbJGdA=QX8Z4ga`=yaL3Hwk&|udd zFB%%ktro>)DXp0@^am?G%=r3elGR+-imy@qh12xYx57rtb z)O+J|c%O!2)WrY`@7;^@(siYe_%@en$3|vcAh#adJul>?G>)o1MoyDDVw<-xTP6Vo zUN5TajwABvBna}%gysv0f~D|C3EHYF&Gv&^#m)RLXc|L0!)uyiFe*k$cjCSc;5v8; z`7uy!ut}%7A74K@40?WfXgnU;peyiE*}bIkiL|S97XE%;hodlNyKGxLY)@AzL<5|n zK#f~Ka}4u^qBwdZWJdb8ZV9QKJ(C$Ic4|gD7gEs(mxx;goC@^C1*FN4jgu#+Df zGrQxo;#3laibXBd_O6_-jAQpzJb)mN!-i8O-& zn<4G*Pd8#7vO7SIi&wt>$Ritby0qkQIj~4jWf`frIX&xl1~1ksmf`-Ma(1=J&FHy? zL3eX@Le>mAcRsHAob!7AN@q4766#ZF9S}*)c^U&H_g!WHSpIGHF!NgTjVeR_xsQr0 z1n!KmW(2y?7?K4fde(oQ<#Fp191n*jyaW6e1*!-r#%B@z5zA!Y#gjRj?mfX(Ui;9K zL8jn_8T1r~|5JGOT$KwB* zrvO!Bor85>_m}@wqq;WchxteZNnyG`2E}2#6?Q*M=w_gCwY1Wi0k{Eve zeuy$k1=2hg>G*h9OX(7>R_Bihs<;P3wtfs*tBZyd7l3g-xVYoGDBd(`hS{P;s2{Us*l>3*Jzx>x}whkk6Y zmR375o~$s)t*JO@5t}a|`a7o0RH!YwZtNw}|H0n1u)*gR_36c=2jbic@Afn!G6oMH zNQP7}ThEwe^x+>$Hx>>g%gH#P06?*qiZ`AAYJsQ7q=(nu`hRlv`I7Ss{750BkwPHm zOYSQ4k>d3T1D|G@EZO5s~fXOefk4TSH|FjuC`}-xYH>Zm}^S5Cb%S1jz(@~wd z-6#qq_WJ!}NBkAqTxPEbIAf2a)?*F21ILLXUP>n&O)E}m1^Z$FO{W{T+f9f%p(PTL z6?kEeTiKHnrSd&a2Hx$rUjLmaQ=@b?ic~T!G;;=PYHnQD$TBVc>6v*mQdsFJBeC4< zcJ7;LssQQ~aFx&7?5n}$<~`ZNCh=dZzmNb$=>$3i% zRQldd2Q0IEgXKtRTF;*-mCdhXOVeS2)b*^0j}#@()Cr{^P5+jsc%u*x5oW`2YxS=v zFAoE8T79-1%w)zHI^EVQh$Ixhjl1LWgt>%D-0lr#H`T>;*)u1xI32Y!?&5|ceJuqP zBz1pv;RY;5FS?c>A8FLOww+|C_$&)n#k=~v?YM*LV!=l(yZZGg+a9D(b#|A0^#9sn z`?onmwdkD=wfLs(=?J9rPmhF7?VdnlwK`_aLjM_MHPRy#%=pw|oWR`4WaDPv1?SNX zNYJIDHlN09#OvgUcFrfpbMNzLkW|83qo;Tp7J1C4(PDO@bY|qSSCD^8%w(Q2|gETP=HS*m8+I2)I72Uui-}bcxynj%eOQf-N>p{*7Zv?F6 zu80>s|MbWcl%cFn8B_NSGt=Qz>uN{AHD>wA!kB2*iH(wadHfj~EUbHVb-hqJb}X;C zj-DxDgMQcUYc-4HqkAs)dZXFB4b5+}m!UuM?T>Q{44hq_(>@80N^Nb6n&RT>S_@+7 z?qWG`l{dfluz=?b-4Hq&J?n2=U|+~-7)#yioxLiaYMlnP^SH$wwiz;q!Bmf}J6N71 zU(VIiMr4jOZK1aI+79ng4}3K-ky~WMzYZIjhig?d;_Uv>q&d3iR&{2c{l74;1*Sf~ zUb*+~iM}eBy+3~anyMbD8M8~(lOG4TKdQ5l=6S_J+Jm=4xd`< z#RI;8KRVVxdbuSi>|xiLjRQZ^-@T0lT*qWY;}&_A|{%N3!ApW5WdUyPs_n%snB!JQsz%b-UTo%Fv#|9C9 zetMjo{dZWv@Ef`o0&;W!j4K%W0T3A04d&dYAqS)7p2p~*|G_nh&9V7JGbw&4ofW-?#`x{vqfpZlEZbu+<8ZI`ui^rymH=?WMK=Rj_ z;4E$T3{g6nmJ-$4$~R2wm>RQQ8N<(C4)*M(#VIIDcfWM%7U8ODG-i-6t%1>et)TclIc0reNfd=jJhjX77*&;zS1iK# zb?{*pB&{W3?Q@7u8cDmDq*G1OZ6fKDNH;r41`~M0C6Xaij}gD7k!+8#N{5}eSQ&r z{%L&y#eIQIeL|(n@M>w`_3wc^@L)dEU;+PNq3mE0ez4edu*6}o)N8OTVz7K7F73r&Wz%34X|Q@? zux4qn_V?f$@K7DoP(A-pgX~ZveyGWG=&i$0v)53IdT2;L0kGKI(pkoE41pa(sv3ua zLACEmWv$@h;KGhBsQ$;TvJZHDA6n}F306`8fB+eg#{UUc{=0>$%m1HX<^P9ba7qT^ zQUz~S+6*+53}r~(AIu%tk4}oBMU2f3G?tC#VZ&*;g>S9u7V5kZzBAZV@uiHGMjGqJ zRQa{)KNLgd*K%wn1^anX<%_CsjgDU`?>rt~nhw2Jvf=f(!PTanc58*(I>XMgnLt6u zqd$!a4WXoBGRi-`dml*2#b*|8M_dBEWRy^?&UAO^rxFoC8TnT)cbDI)vUR!L2SX{_ zZX%8Y3SiT%zSI%H9dp}LM0dLLPwlPyi~UXvO4Bh$hjAkrtU=;#Z3SAOH=LN_f4{tU zN9g^@eXlz^PY(Npm<#bSsdokl#FL_T1wHmTCtR>e{Fr~g^`xfa+;}`)ACD;hZW1|Ha_di z8Fo=ZE13@IPAgfCr4=jLPny?Pa{ilQ@S1d5edV`OvHDub-wu>Vpb}ook6>|LD~P#T zxmFl|ZDXw{Sxb1mIL*v?y(IHt<$9^BLDza2!Ym(1#o-6osOY)92d64;&gQ5xe@&jR ze92*Y5{5N9=Zm0gR9X+MFumB*cte8u+^X-tTD6t-QG9dDQdO37yKzF5*`)~wef;9) zSD)u;&GI+DSGO#sKi+9uE3MjT-)i36>Dc=Z#qfLb@$S3hm8#wM=YKbMKL8-2dqi;6 zS8NxxK)eK)9y|BqBR$!(t~*h6j**7Ra3&O6Hz+Gy!4V-EhUHGPX`p6{&#iyQ`DW{2 zNU~4#a9DQg$>Apj>-K#l%hGTyBiUyDu+4LLKZ#Q#FX!&(<-ro=6hW4+nWTC5M`(l-k4EejhbImb50Xa=Mi1e! zj7q-)yD2XBO^lP?y;_mHJ9_jy{r<>q6YK90<+VC8{A{%7@csGH_ckB7T|Thk*+j=( zwO6sqF-Nel#D8s13FJUVDQIfD@0Nte1|#)9L52@)^^5+VdUhHA1y8JD|aibBIHJ8DwFW{}!mf zf24zb@+;un(BTb-5YLF|m>V>p*hC>_$sE0iA=l)$zxJiW8y`f-2`?y+DgNUg3{uAesxXMh zV2B{8$47*uP>&NCTq1c?4qGq}9`C>-7`f;T8zQh6Mij_2q9G7>sPBXZabrcqp-Eb5 za+5GR3EoWi4G135hV2_60tac3b424Dd?cesXo*W4SwK|+aogIk0m?c;uz$)p2OCeg zjC&-5Ai9(66V;m>Er9yi|5F!?& zi|_D8MA?bMgV6II@xWt3=9Uas&NGtBa48!H_fe6Kv_=j62Nq{1kWjMoAEmUR-wr~& zWh7LP1p(eY;$hR%RrMfp`^Px6`q7U(;~&%bDSAwb(L26Fh3G)!Lf*;FVNS!9z)RsW za(cpx76gz!HON*!B8+oTv`Y$F|Y z6GuWmmlU?Me&A_O5tD63U9{|Y3lw?#;2HG+-P zl|mQH_=ht-TiVn-^B+Ma;0SG~(uk^+kpijWOmmCbAZ~*lw9H^$Q_|bwt_B0AWnenw z*TlvWGO-0wX%qFB!spVhAcvHj+^#zg+_Hpo-Zf58131s;nKz1GRN)ElNx*H;@3IMb zM%@xxkllWy8q9$3Kd=#DW}L$oz{LhNz^cln=9evaL#s+#%fxn~HEg^0cQ#$T^zQ=!nd%76%=G`^H$*ekJUOdrE_C3lo8U5EenLQ z>3Cu|&S;RFren}4nKPmbg1=QOcfgbE`Wo>oUea*9kI zvN9%yE=X^IN7{n4BG$6DiWmMtX*nbEtZAKFLg5L>ZYLxYzksJ!LHZAJ9Q&Q8TL!wj zs^gWMV;9swWwf<&T4GR|ni5PaJM^tq3&PTj21Up{=GKj`BI6ueb%zDX0mxLMS|-jA z2r~Tkh=bhVAF2Yuyourgu}m9pm40#)$BSoltAD9~$p@P&%&jvRl%EX;mp?bBhp=rjX(93*|UwE)!Q|*B$ ztUhjUW)vOm^xOB`F6&~X%bac?oqGypzT3#Zgc+v8{MD^~^{DRRw|ra3#zZiJ!2hJ2 z)Lx*qU7FU%R#(18lrLuKHhaj6qrP3$YwlH|d1gdBwGj`#?_DjBRwSeXfH%EQ#DWlP zP;ZGCg)!S-Ut4C@zP^;FdyY|3^Wb8B)xHOQ|M5>(kezp61f?&%@_RB1ffT;so3<=x za}0mX{#mp2Rm$+4v5Vge7x=s2PyfJT(Do1Kw|+n|Z3+QkFP1`nGdR>IXc=UAM8SXl zXAu3@fB#^7{~&J+0RkGAdbHYI@eK`#SM7yh zxOH9HReMRnfB#?$7HA9oXNF`bfDnOx|4@Zi*b>09fcu7ELil?2cVoE~c~Zv{5od;D z*n|RT3$37r3*m-u=o8wOg|8|73Ye_!EAp5FGdqk6;VSKu`v8aV2AbhX@oY z)HfWpR9Tf-@5Od#QE>-xY=xM9pU4y4C4cmFTevkiw}*sV!GXrd3yk)PL&1EgHHs%! zUAg6jkjGhdgNshVfq`RuH`ow7cO@fw!k!S_O4k|DlmXmJrjXgKc;vG|-W^FdYA&8}d>P)DSt0cvq!( zW13Yrk*F16#gaIP5U!{tFxf8dXb@y2e^^Ce4XGAXxswQ?fCh1uz6cWtsgP9GmR=cy zvlo{OwuenYmIl#KEI@@gq6SD45;UMM@#r_(&<)}+n0-T--QYKgISq?xJz%9tjmemj z*$rVunUwhtm&s;9@r(k|lLaAyQbGe+Sue?@b8gcMG=`c2p_>1In$Ol{8`zquIh(85 zWvqFdT=s0PDVw#qfvWkM#IEIzP_y8n&FKYX6`~zV4B~ka*oj=zwxTOa5gaNIG1^cuS`h6Qq6lH44C;w0BPCfW zpYpM(UxZS)&V)p<73#I9d>9S)(C3qyDE851V(Cuhn6Gw>%Yz^4E3C;z|#c_|QVnwN5#mvDL!YWk*l+NXOe5Hp~rJ}D4( z`VU@b0(1JNh`OeT|5^}%dZ%`Jriz-V80U8(Sf;=DbqE1X3h|Cx!Ksz1sUQe~nEDc` za;gf^0ifD4(6lk>n2sUAa}}Vfv^uK>0jmXJs|&%Ys2ZyOAOe3^pryJJw3@1_qN)W^ zGP)`dvkIyr(X6<7e8`Hd2I#EPI;+LnF?uO|$vpl=AI;#>n`uN~*;n0wcq;PW!YSp8L6=8@i%9x};mWrhB@mo4TsIx~$u}uKT*M8@sZLsaiX`wtFPJFa|fE zt+#s>JHQLP*t=XoT*6ztF2V#9F^$H%yv*CY&ilO38@ zMF|EBuul*N|A4|OoWd-;!Y!!6v!L;Mea00RZ_0phCx zGLXVM48}z)#%^2?zVHVIfx^CU#YX(Y0s#XpU;(4@0pxoeUhsRac5$WJGPk0_GmOH2 z|6mM5EXM-D$h82+kBrDw90w9mD>fV56ByzR)_&<%*8<5!*OiI|G>z9 zP{#!!$49)zro6@^&@(n{zN>KqhdKjk13d5# zRG=$r3{|BLE688$CSG0xio8;HlwTD@4Ep_B_!^ ze9ti8Fi{`?>*@;=-O+1I(f0fgFhB$wAP^dW%hsy_6mSAEkOMU!1S(JiEiKbB|4jh` zQ3M@>1SK%jLLdV^J<~tk(=Wh|;%gB5>dy&Lr~;u2kU$1IPzVLUy9ZIiMSTz-5HjvM zDwvGb3PA`vKq@8;*5@p*)>yUSYbvCY)?A&gQmwB45Hf51)^Z)qrBc-ffz}_ht_aI2 z{*2T{z1O^3uv%@`3Go3}4cCZ`)N8GAiQU+UP1q4}v>5TUP7K)-fwUlSw3;p1>uK2; zakZdrh)jzfK4}Al45Xf&+G`=EMrja5V3e;N%BrmqUbn>hJE$u#+an>{x}6cNBM`g| z+)R)JOF-NLVcf{Q1pkoS%dOnZ{oKwS-OWAS&`sUaUESDy-P+@0OsqP^YT9p2zQ z-rrr`;%(mKectMw-t3Lu?!Dgc-QMs$-||h~)a@cp5XwvN$-T`HtuqDuT@XN{-2IIa z0PZQH^A7=D;2I$XK;r}l?gXtP;S}!R7GB{Pe&HIP;T*o<9^T;~{^24X;v_!eCSKww ze&Q;g;w--6F5coW{^Bwo<1{|wHeTa6KH~pi;VhEi3LXVc5CshW5mO-K0^#G!8xQ~h zA^8La3IP8AEC2ui09XQ>0RRa901*fr_)p-2B3G^yd4NDc!GRDXN}NcsVZ?_K86eQe zu%O0*5B`N*AQHg?1`ANCWEirg$bT>Yk%S3zCdr#JYyOKMlV^kl5rPKYxl^dmqDLcS zPzo~xOr=nrW{^sCs@1Dk|4r3eRq8(!Q^A7$s#Ppmvnal1K(PUZ+qZDxmT)^4Mcun7 zT$FI}Z|`2ad|l`jymzo+!6^j0NbDlU;>L>|$B>+Oa^uOEGi%<=Ife|(pC^AF?YT5* z8KY7E_$T9sjDN0G!){I6we8xrf7tf1`v>pezJmi7?i;v|jJ59dMtMW6n> zI&>e`vrmt1#7B1{|GtO+_Z~io`Sa+57%{)Tz54g>4a z^%Yxbxz*N{YqjMimS1l9WeH!AX;+#539S!kLO8ro++#E@ufih8!_qm9-k>1~wa)|zg#@ph?k!3p;pa>WVv&vBuWdYp9D ztp=TMtF|f~sz&_(03LVY)f(%qvdU^}dA3^N+!o>a8mxK4>S~0qKPchrvFa^rg?!H* zJ72Wa8u$-^&jPFM587Vq?H1f}`)#%sVd$WO0%>$EOb%j*A-e5W_)okR!doG_6KRBQ zh#T!I5{xLC7-NYkj>JGnFS$gcPBrR;6Hg=oY1G6>1!+`~OECo%lTsnMB*$DS1!Y!G zg0&V`YEhZxm2G7S*OhU-)pE;ZZaG((F61?rUTNyA^P7bQ4X0y|?THv+|Y*qJINo8`DPE9G+$>gsL=K5c1nI+A1*+o~* zf9bX6&u{{*|Iv0jwx|D0^HU7|5raP&a58`D4AiD3s0K>yG@e1tY+!>mM%iXIl)_+c zCM5$+^(HtS1Y4=zR-93xEjht)4tA=et5n4*Jh}mo6|nOUEA${&fWr=VW(Xa?^?*CZ z+LaRjU^ql208TxJ+tqr?Q=e#2u3E{O)_lB$An;@kbl>{iwLk|tE5Ial!$ z^Sc?D$i%b3wCSmanN!kMd8exS&oTpy<)8F~naezFGlp`YF0VEk3Ia1y#IzJJzgEnz zdC&)D6C2n##i{75usWnVTij5EL)g3!hk$ieIi;h+VD;cugA*38*vYKu3~{kf{Ndkz zb+~0E>xlHBBDCbgEh`#GT)_ILwnY1_aCOd$1TEb`?d70_!j7R1jh#amBwK?2$O~N@ z=@&yv#DI&Ms9@+~2_9*5$BZWLcrgkd^MoW6KwhjUMUq~|VCod?HPS2ATM|ua+LZ7q zX)EI^pOq|0UQKqglVf7bKWru!`;ihbeQ~OMp&B%z?FE2&>Jy)khE-bzYJpOlT3Hii z8q`S8z=?8AX(;6=3u2J1Ukjnxiix(hkuW%@8WpQLr9v3`^*OLo6%2(1#1|HBZ#(Qk z4|YY)5t|c+oJHI{+2gJG$ZDONy%rL!*iO!UYoDD1Z9uu@Pl1w-cCA$-ZW}VMekD0x zA7L%LXe+yZv92S=;|NDi6w)q#)OcX_a!gKS$fT56dP9i-2ZW+XHb>?ENZGZnR^X%i6qpK~?cB(*oX;&>a*N71slJz~7tk>q?^klh==droO{h$hVkS-LN>4h!uEdkl z28bB~`q#fu3k`uqjhO^13O29-=2^j}C{=?k)gru<2xq;_xh|7zwjK`LRHd6#JBQb( z4#M92ifR+rYKC&tTiu3TI37MHR*5wavKCuec{0mcM@%AQvAJ0ucl%kFv(|w2c`eXx zaf_%0D7pjsErl|u00W2+ga|MIde6Jw_5O#w^S$qR>pR}~zBd5|UhjbqT;B$#cL5+| zfOt22;RIN?0cbLD0~Fxm1F-nT3t)hbbG+jq5BUK`PV$nEJOKy)NI(J%aPkBoU;!zQ zxylpp51Old0V=O~!)lK69KnRHedqu1IYF?#^QVsS=dK5?Fc#a=Fi<_sdIIACX zbMCX9<6O7A6`p~bu|hgHg8ui<|Ni^`{{R?(0@!~^a0E$EfcjT}1-JwUcz_0ofcvL_ z0=NVNcmz){1WSN{8F+yiNP$nFe;4?H7Fd8BxCBDr1ViwFDVTy5xPl?*g8%S>A!vay z_<>I#1W&L8Hn@X4n1WC6gFqOBLRf=9h=W3Sgg|HoKd6LDn1oIE1WXu(P&kE3ScO!0 zg;tn_ScrvLScO_>1z*sGR2YU(NQPBthGB??V0eaBu!d>4hHe;#Z#aklkcM?wLt%J_ za|nlY*oSghhi(XncK8K)ScrQ_h=@3db(jZl$cT&oh=`8(1(7(3kcf!?a0ZVkiD?*# zn)nZnIEjzwiG+9tj!255$cU(TiiDVoqL>GZ*ovMQi?Zm7v>1!Ec#EQFixff=1z-rM zzzLxcjKVmK#8`~Rc#Oy>jKHXj%!rK3n2gXEjm=1m&lrr$2#nWgjm21v*(itA;%JTIc#i0pj^c=p=9rG|n2w-uj_ZhxoDh%WD310R3h}6q;|L1)c#ihykM)R; z1UZoOSdRWEkOk?F<*1MAh>*;vkPK;#4k?fHc#r#NkMKB;@7R&`2#^KYkqT*%_ehcl zNsi>$kk43+$;gub7>xVKj{=#I7+I6Rn2##|8Iaf*lOGw73^|ZG36ncHl%NogG^vk9 zS&v2;3cpa4zkmr(2?|a53rxwBQppKZDV0|_l~^g2Q2CTi$q8Zf4+gLYn1Bh8aF%JA zmYCoOYKfL->6UQGmU6k4aru^XiI;QPmV23&Zt0hB`Imetm~L5^gBh5JX_tz*mx5`R zjoFuwX_$z~mw;)QmU)T2nv+?Vq&b?N zd6uy`nt9ooa_O3}`I@?EnzGrOrU{y``J2KyoUj?3xCxrB`Iw72o2Gf3q$!-msh6n< znVmVD&-t9uX`R@)o59JNz?li48Ab~KU;ur<3BGxr=$W4Cxt{FVp6>ac@F|;Y8K3Am zpL|K5@M)jvX`lM(oBZjY0IHt-iJt^2puMS|1A3nYs-AKgpa<%p*~y#NnV|CNpx1eq z3tFG+iJ;plq59dN@%f(@TA>R{p&9C)V@aOod7|w(pSOvjxcQ>@DWfsUoiJ*n!wI4@ z%9x3Hn!O34c?p<8>Z6M(m>5c=B#NUG%A25xp|wezyXl-zI;FJKdY3_prC92s zS1O}bDw}Mosh!HD6`GuH8L4-%oy)ykm4x~#71tHBzsVT!BcnyFUm zt(Zx!z$%=V*{Zo4IuLLWpzbdYbdaDQPuoUa6{>rAmYM+!!snoiy@wp*_x}qYhsh! z8m~NynDW}FPK&BT>aOXkv~?P^RNJ$}s+m2iwNe|bFx#lO=cwY{pgnc1{_tF}k$qw?ymPK&cROSos7u00F5iF=uT`$idXwVAoO$4a?7%9)Pavya=jVB5DhI=EMBwuYIyRm-`Rd$XjQm!4a?p9{N0 z>#Xz{w|ASKvO`9DV6xRps|>$-o-x?{V##(TENOS;gD zxR6l2j!>DH8@jIld%f-Iy=^JJfBTosi<#2Pyn5@r+?%z^YrgOMy4SnDVQagC>AsCi zy@NTr_lmP9ySpOmItuc;a*L;)+r8zxz}@S;mI(=d8NvMv!P{HD5NyHR%e@qAyvAF> z4a~q2T$m61z#v@03VgyL+`ks=!7OaSD-6LLT)rI)!t-mwA-usZ+`Sr1!y&xGBs{)0 z48kzXz(m}@9xTL1jKVKG#75l0jsV0uY{D~)!rPm|N_@qB*}*LA#5WwnP3*-OtimTu z#agVsOx&Y&D!^)t2^G>V1Ms`L%bp0UzHOPoGR(qJ{KQ#Y$4Okr`TNIDjKK~p!(uGL zejLb%T*ZX{Y{-br$a|c~VVuWe?8JoY#TT5%UaZ3&%*Y~4zIwdKoD9evJjO7b#Z`>S zimb<^JjtXy!kgT`n0&~X*{+VP$$ZSfj(p3X%*n6Z$cH?|MI6ez491R}%6#0(V?4q6 zd&=-j!V5dDYs{h!WdOZ}2y)x7QhUidyv0&E-ta<($sjjLzY_ z&Z?ZwYPLN)S{) zdecu$)%dH_I1RnZ3)N{`)nLt|SiQVrZPk)`xSWa7D!rfxPyjZ72oL?ql?uF2JGzaq z2V`&sQ$Ph&;001Z1yT^$UJwO=Jq3d;1%{2-fxXy_-PnKa*M;ralHJ!)Fa?s0*oS@D zQUKYTE!ds?*^nLDi_O`fJ=&)2*?yhcp8eUKE!wNy+N&+vsy*AVUE8G1+MMm$qU{8( z?b%LH+PvM^x^3IBecFzl+qhlaz}?%o-P}^}+sMt@$=%z@E!~WL+pkUC(QVy+4c*WG zjoiWQ+ofIG<2~NPUEaFA*HkbDZD0uCyQyn^q6RPn0Nu@qYMzClfQ@jL<0zZvDF|19 zrN(OrQ@{jE-~>)^;0o>pOpxFRZr~1n;0!+D4UXUz&frXt;Y+aLOVHpM{^20*;Re3p z6i(qIj^QBg1VsP@I{*YMUIaS;<1YT4(45c=Xx&ZVs7Um&34#CyhH#d1paz&Q2SAVsbFkk`YzP+4fDD)f ztbTy49_y|S>$CpqwqEPBj_VAV;Yq;jOwjAS{_DTqfW%JgyUqkaa05G_>^sox&Ccx0 z?(EX;?9e{#)?V$@j_uQ4?b^QW+`jGJ4(`@I?&Kcr)K2cq-tFbC?cJX4(ys3BF7DTk z?eK2y=YH??e(&Y3@A4k+=)Uj$p6~O%?)Fab*ADRGZs=4{>9|^~j833OfX-1+2m0)r zg%IGEeg;55@lF5+Isge*pnq3D2S)$~Mc}~C?F7ZX@+{x-F8}f^KkP97Kl4oR>;-@B z?T+&|5AMp|^U?0}2=DVk|MT%a^hQtgK(F&dkMRD^^heL`OwaQLpY%x|@HhYMQJ?iy zU-VbM^I8A(L_h8Vuk%sA^g;g*Hvj~O-p3;P@c2mw@oWfE0Qcqmqf-D0p)dzJFb5qE z31sjEHn0bn4xV*z0xdwkZ;%91@DDTJ_>S-RMIiH!U+j@z1T%00n4kHYzxkZs`JVsz zpdb38Kl-F!`lf&SsGs_(zxu4-`mX=_upj%QUj#`|>4`3>Ded-he9ny^1r#sNzIg?P z5DIPp1eZVtKtKjLfCz7W1Z02+bKnL!@B~SKmLfa`2|oENFZ06xuKkqH1eJe)l@I>p zKmO)l{=fe0vcLZ9-~R6Z{_r3F@<0Fd|N6`R4@E!+Mf|Y3AJYKg$Ppxg1N|&%L{K0m zh7GSkGNfY&5JZiRL;=zWQ4t_@{5XLGWDll+1En}gl4MEBl`2y*aoKWZOP4Q`z?_*< z=T4qUioo3YQz(<6MTs6AN_55!rcIqbg&I}rRH{|2Ud5VK>sGE^y?zB7R_s`^Ww90k zqmU#fNNgFlZ5UVXT)K7b-mPm$p+JaH_V8UO7w+7_Y&p3l3284ADK~pQh8$UP&z~uc zUPhW3Gt(QLJ%0urTJ&hrrA?nkom%y3)~#K?h8Y}&Q|ZJ%aZGQD*$b(WlsS6`8gB>}E^z7vnV^ge6X@i}+ap)@sW~(Eo-m6ny`5hDdiL$zzlR@R zer={es1R(s5O`tX(Eb0H%LeD7Xs)2Zj4SLnk_>bt2`Pl)$vg6FlJK#jZo-VGA}r(3 zrw+sOX(_WtB(X#jPed_A6<1`jtQ&xMsGzm-TMIxNZ~P}l<@91O!Q$GQ?ze&(aS%Mq zj_NME3oR56vkg6*5XzK*=&VI6uf#G-Ew|*dOQ(vUqQ@E$>+eQ0heO~WHxzR2Iq3Qe zav=N!A`+!1hw|{r2yOcCB|V+2FvT>{HMPIU{X{8)%pzS6y|rp($K<-Ia#W zYz4MhV~f4PR?vRUl?G>>oq^e7g;mxzTZuh3TWz=Hwp(w%1$WzI$GxrE`OY29T+nip z!jVTI^)xt2=ba0IGz%ahi7PU-u|Mj5+e@SCE=$4*KHgBnNS%zL!U-z4@DoH+S(UZo zpQx-g+3QXkwPPoW@T>@qPa2ttb(3|%W0E@_Ipvn6V4^9|3htN*n{Q58WtT@y;@b4C z)j8;wch{f#NA zyp{{xZ6`wwGJ+5Ob>m}4o(qgQYrJ(e_#niPMhqcj`Z;1h9{D$<;N8U{e78MxHLllQ z4TM9--gfoRSHE@l({CUC?B|!i{`l{wAAk6@ZygLEL>$r8cEFL`RIO?pvDyI@m_P<1 z(18nlU;`mIK?zncf(`^3Rc=r?vz3JZMsH)tVK^Z|5@KS6CM@9zRhU8%Mh80ou-iWh z&biP;cQus@l{U~1sP6u3}_D_l+uS7<{L=0Jrya1L{yJf}_EM)MQz{(xWfQrN$11C^X3R;8$7N|f4CLC!-mWq)IRhoepgZGa@pyD6@Km{R2 z$Oka&ag)It!yA%-9{SuMb3i@ACE@^yGc+|0T?P)(7 zS|M2B3(+)=y~cUdf9&l|f^i|*45X2FLS_kF@JSKD;DjZRVI@eM!f%r>1t}DlF=PNP z9jz!R({0GQuZmSrSSgy0MwF3)AcRE6kOVZ+ln-JI>PDI3(VueR6Y&--~Ez7sCJ#r4rriYHT(k+f57k`RPl#Y z`~eAX_(v&Fp$1+EgA07vD;MU#5Hi5R5p{3`DwIKAhHya;jo2$4-^x}V_t=iX(*-Vs zfeJbT5yG;OuwtG65DF>`kPD$epe-v|MqCE-m$ux26S$C@$U@f3j|Fp=B|EioRn`y& zq7fg25QBdhK?!e$^P9KeW+fP5&Pup5p51(BKJS^%Z#IGve(;YuWTH5BLx2KiSi|Bl zI&A7G=dkeK!zh;!3$cbI~2me1S-mn3n3q78mvGDttIMXeyjDZ zTp$Fl>+lNyU~^%MW7(k9ZomgeY>-NrP(#88Sm7)ejti-B;!iHF8#P?#a$EqWm_`2O zku#PvQhAXSEDIQteBlLwHi8v`5c8SKyv;N>!auffbDJyS=06Yg&2b*+IS+bM^_p#> z&*|v9I3jw|8`Hn2(+E1u!4K0bn1-y@lS?O|>z>YZhjxGiAaE#_$+8*_2AEy#lDWG9 z9s?l+(bJ0ZcaLKLZy`6j##aMz6|&CJKM3&#Tni5jbPxtBcwtik3tOf@yefhJLEu1& zkqeGcMkvZH?V*zSH4?@)ZExD)RQw~{rQk#q$RG?(KtuDPzyvQsp@&zX0~JY#_Z*NR z1w-)vf)lqW!tc@AZ{nLWbYCoDCGBo-&%0&^y;AraFp*47Y`K?_`vnuoT%^I^u8yPN)L~fT0RVko`a#uQLFZ>#c=pfq&2ePm_#Hb0EuT zffldvG9yRIyGQy5fBFX!V1X8(0+!-} zQqZcv8$4XIyf+XAxe_D)>L>vFA{+aMMwq-pxG7RQqDCmUqnb8rnXpZw0z^=S4a2bi z4O4`Fcmsc81wNn!TxbMkfP_$32xLHoSGWaX_y^xg(51xMl7Xb z!v!)Z1YEG3BRV8&kvOZdHJfRKSKuWBvb4u3A}QD>u&Sh!*a6CU5ro=-D~OrF`lXVS z#q=wz_WKN50Rj)aESC$knfr(O6F^_AGya3QVl==y`vLqj#sD;eAQ(oN(>bP-3q&&~ zbRrH;NP+=?Ap;--PT-HfNdf~9fOav2>j(-O5J3_g6dP!PF474duz|Ak2^wfe9gx9) zzyZ^V44E006}SP1*(15zF;qJvG6=#kn1WH+0SwT95Ws*XU<1ozg)8vFf8YfFgDO1B zdnA^st7M5Oy91&Sx=26T!j)REM}oBnYrfX7mHQH%e^3Mr>#%?LgMauiD&PcUzy(^M zgDwaKUcd!I-~?Xy2SW%2L%;-Da06ao3t`{|KEMQJpf}55B)784jl{|w)5@#d%BJgGm_SFc z02sO(9pIb&I1J(Nx&a_Z2hpw;(1Ac9K@@ zMF$cV?n*iM>kUkpzoFAP0DR2F+&@9vIs7BWUtGo?<`;AOQk+fLV(RHF!QCFa#$MM-NnqvC{#o2|?bZ45rWlU(%5O)LA>7sE=C8$0ERi z+Z4ea@QE}XK_Fnqn<6^`%Evs}0Ubz|s&UgBV1egc0TvjS6~F)%Sb|ac2Q%_Mhw-OW z+#~#=g6q(-f0zLl7y%2of$w`OI(nly-~&4N2dX5b9Ro2DiO1tZN#i`PH=u(->dJxq zpOs_{35!&%QiC%fgg6+8rHTX3F}={~qyr@bWhEp+<0&-SF{}*BTLnvMoz`moO8jD^ zxq1WjvX&Y630=yK8(@Mf@FgtEC8qd?So#vDh$VJq*L1Bid8Jn@n^$|SSL-^mD%qg- ztBBr^gd7Nh9|$@lE!fM{xdJ>!JDa(k!^}F{f|_H-%q+(LUsQr0kOa@XDG0R2rV9li z7ytv9gC!UM1n2@o0}d)sfRO!%4$y&ra7{-rgd%{!6cj;vG*g!Nn44;W83;i_^$B+L z*_$%c+r)vI1p**ALV9e+Bmjcj96@%ZM|#A8o{2%rxXl)90Xq#>45)yw{aO=HyAJq= z3b=tKm`m6B2gI?NB4~jX_#W-?94cV0#$W+OU4ah>0Wyjm^Eo3kl3TeAotOFy+6k)j z5ue0`!@gx)<=ne+Ssn91R^^+r&PiPHft|qB-15QP@ zfk10aiG{{I$b+1dUZIP*f3Uv-Bv@$NIV*U^W^~Lgh=Du+1qU=u(Ck>cV4DsY01QM` z0?+|N!vsT^trkdv(u7%%Kvf->fnLFZXpzmGm;xj~0w55ALjnR^v0vt5M;jQ^|80SL zRKXU&fjE6x6|~0?pW@uiaX_N;6Fb8hd*{R0o+kR#sv9AI!kd<;&20)jbBJ8r!8a%Cn$j1 zYzsqxp#cDiC|K8jN(me&;gpDiCpdy5c!3vKf+L9H8CU@+XoG!pEp1=-Js!i5*D64dGwew65FCqa-j?VXFWPAOWUefqy_@UBLhbz<_AEffm4k ze_(-*+LaZUW(?>65Ab0U2!VeXfe#=78weL*u|>|9XI+U=_FxJH{uOC?mS1Vddlu+{ zCg^)cUTcxCf>!8-_Lgz+yxe#{=}CzHFK~fgytyDC#-Pgs?EMGnwE{`_0z^0iE64*O z$OAptgOdJ-FF1oQz}PR?14JIWjHbCQz=Y0hz_|F#yGdWW(1E<^Mou__O^$-Y&;bEJ z05He|N5}+_H2{z(0tJXAop@RrP6Aktf>j2BR*nKBD1sxfnuBVAC8(M!kb+ox)G64I zC_Vx@YJ(*J129O_;c|9+Z9-WvRwgcTdxp!&JiF1&DL8I_<#@CT3cKVWjg3xH4*Njm6MCnBr9!nac$f< z5r>{EpHU{-mTg5zCX}1ef5imCmi;2?PV$3V=D+#+wpK9MDEESPQ2H39q9P zs@8BOfMr!i0v(`%7dV3b25Yo%@FcJSG9X1K0D~9QjVk~Gk1H53fSDE0fy_B;pXJT} z3E&U+*|Ia`8IVCG25TGsfD~?luube~R@57q0j~`KpVgI~?MDy5><&ob5D0-0!0gse z@^d+)W4DzUCGuit_GWkX*kI!`>kZ~@#(^bLMMl6g_=GcfZY0g)FCgP99V*tIFGv)bu;bo2-e^chTuGX z;T51q51@JfrU2&(@BrN30dtP=o_%2!o_b}WfuS!=VApI4?w+fEdKq=2AIQ1>gE@lDXrJ4;WQo$1Fx6=md>T6Q%3vxtM|h2!I!;p{0h| z+R6ly1qcKJ{xO&_;GYvmh=A<)H>1T29S?ORNm8W95+oXP&}i|mMGJ}*cXR~Vf(8vB z6a?E?zqu{1XvO+Y;@gf_AJ`8YS*%D>-Ozd8gS>*t!wu#-n@GE^2NJjM-eBD5H)J# z2$G-wA3u~Bu@c0Hk$+nxKZb0@h>|UhD?^sNxUpp;nng>7Z2Iz#(O*VkYVG-Au;=rGE0Vc5n2_by20u3a1 zu!2@Iknm3kE&OFe3nplwfe99_^%qxV^)(`ib;%`Hi7BeMB8x4$SXWm-NC918jyQtJ zKR-bB7-gqL##m&NF(z4Qp_vw0WB&konP)%-2}y9fxklSRRQ|I^Zc@I+NhndimI){S zoMZxtYd1o2CL{_)Cq;YbZP(rs7|D5rd2QNxr$sv9+2&Du+S#X`^+EL)p<4Zg!wn*W zn5c+s75XBikxDu#rIlK`;$MN$XxNRC2=SO>K{iR+Xr^uPS&%x4TB>NO3K`mDpUk4= zl(kj)PXV~m`Wl&1_DbfNnAm7zVTMHKgr7Q@=bd-$0h+9{(B>)apX~|Sm7;|bx-FxF zZu>2`;fgyhx#gOBF1qQG>#e%&y8AA?@ya_dz4h7~?hTq6QsZHmG-8DhM+)3yYD6-2 z*{iIA7G!5jLZ%}ko#=L>Zn0T;Tb8u;x@&7U_B(8`Yd#BYoXgfp?VWw9jB>L7M={ap zr7_DqGtD*Ie6w0IZfawim`Gy951@i(1(1`KYP6|J5{a~EMx;jSkyd=N@vatEsQ|_t zYuxc`9;ZnxA|kh3XR|Dut>?5Wr;YZ=7Tx${Ks`_k*nFPUay!igmRh~%;V{{Qg* zfByg|!2kIVfM1Z|)TTF0i*_EA)=*{;p&N)0 zDk3Z)2~%i76{Zk{Cmf**S@^;g#;}Gkyde#7*g_r7aECekp%1lU0u%wUhenhk5^Y$- zB=V4nOH^VIj|fF6HgSqhjN%ok_{1u5af>t*3}J@#u?U7KOra1(8PmumG^(+UW@KX- zyOcn!SuHjW99;y<#5Ipq&{!Ch7NCmIoevU{T161yqQJ#25PgeL+TvCtBMHe#KC+UG zq~s+ni7iZSQj?C%BqI}*CJ3=#=raMfU(o~qRB>`E`azYfA za2`R96J;6fU?I;lln-?aXYSk!Dc>p2dD1g4RS}He{${%R<*}c0)Ed>EIl4NAE@Rd7 z)iwJlHazty3TKGIce*3dz+7RRg1o3joN$FHRJ4PA+71)CfHv7(lnEw1DN0Yuog}2R zr7nFbOk*n3nbNeTHoYlITd+vI@wBHt{psCoAWWY1ET9KHDpE1QK-=iynocbpRQGw! z`ehSjVLKMIitvvw(8(ebEdmz^A<>fx(xgS00vVRzO=MyJ#G7QOD4V+JrtJvQn+)Y( zU7euUz3x>CT=**$RL9rB61K2TSb|y&tJuXdwy}QvQ6)ninejRO8b2W?)}Shl?_ZgXo0KNyR*d-&}f=HLc5 z0Ko|tIWBUKdjyS8;XBDqLKm)Zg(6%*4PXF660EC+!*)RmY$5|0y0C=ninI-B6)AYZ zPy{f5cM41h?{t$Z-{VTBBI2xXoKPW-Ziqt}Y`_Rh?Yjgf3^>4u6(>gSOJH#l7{B$k zFMh>2-~}^yJBW4ggYT z!7ZDX%fIR}RjV2@tR{;KU|4P!j_^8*NP!Jkm_rfX8s{spfxv2z0vM#*1(---2^`f! z62Q>se_R0!K*%#0q`-tb&*2IjgqBGSTZCey0~yK?#yI>C7y=(wI(h{uVvi67Iut<^ zj*tQ_IPnTcdwL0KPQn%3@ZiH9mce?h@PIFT;KW9@*S=<~T2BHq%o4i*pFm*0*fzVT z1#6T|(TcXq&So~4qYdq8N88!Y_Oh^+dYhgl^_gEI|JJ_#h^H%j;S2vz0}{^g1thrI zB4nTg7xdr+Ig{bsEM>zKz`%tKRzXEi{&tcp#7Fj&!r z=%PXyZ{YNR$-sq*Tvv5hAcG;0@n$e!0vBWugrdW%W;dwU5xl6V#-*dyLW6<8v7Y%` zKhA_-^StMVmBNXED)gZfz3A$q!Hf#SscUz;>CmJN)Un0~qgIojq_yfoTlWukBVoB` zKtfEI@P;^joC|ayL&E8xhBsUR&-->l8`SVtmIM6FQb;Qs)R1s8IN{t=A^~h$w`D4QxnM zAqY&+f){%5{9$l`i$bWm3&_BQFbMGm*>eI6%D}xWgaL`2^V;XekL(gAYwYDSpJpT( z>ab4dRH{3@`bq^|Z2sYfZc`1asDlof@w5bpen-udcin?4@>XOmVY}Xxuyo>j>xv-j zO>uowcbqVV!9)7ts-HqAd>rHj#u1Rg%YlI*@B%8Zf-pD&EffJA;6f3gLScl$7{CG_ z@B-Y?fgxamFknI*yaE+GLnyogF1VT+h@2sqATMA7>EXf@&_W~l!3iFp4fa~{=~VOW zAP+{$^U=uP6qEH0;R4l0_91{9P#+#C|IpQSmIa9$o~T)Z$%(7Y$$9kIQ6wKamD5NC zl2?%v;h9bG4OS5#10>)MA)rI#v56Y+0u^+DAMgSv6b2-OLJ`!#F%&^4K!*k1LIyfP z7ZAb+!U87n0WDmCG62pLL;)BGLlpP{Ezklh5CSF;!Yd>}Dfq!0z(P0OpeH((^7Wu7 zj$(=YU_Olz#Xt}d4k1Ayz#MR21W^#!K!@rii>sBN6qd}%q+dFLRC_#{v?P{V6<-;O z!z-);D=32+2F8Gef-YPhF3^Iopu$;w;2a`C0OA4_paL)OLg~H22U5WYvYzHO!Yf3< z?Ru0m@u#qA^_G4T81=0aw5Jr#^t|C%NQ}!ic z_1O;}IiVlL6`XLG%pE~@xElP8Scs9>qv78Mod-tVSDTDsUljo_>_a`^Lp{6$JTwB| zIDtu#LCrD27$lr`9o7|e!4ycr6yzionA8}E6cxO|7`PV|T*1K6WE2>n8jJyAy_sHJ zf&Mvx6i`7u-lJ9C+GOdYKW-&geuxd=(=d5WEE*&$Vjpe1Vp37e1f9;e4aS=IiOR$T zvp84mq?28Gq+%^W7YKqM?13KiK^^eb&au?|-P*0y<1o5pq!}J!c9W}JfgzYw^0`{A z?OIh{rB&wRK6WK%_M<6!|5j>Q8(CH#1I@T!y=G1BWK>c?PQs>b z-X?BJfmG%uZ|bIPcAA~=+At#4t;uB;(i*1`)^O6=az>hPUZ!D+)29hzbTX%PS|)a8 zr*>{9cXlUYhGJ)iCs%%^7&((Fj;7N|ldUKuQrXW`@zG$=B1B5(#DT%Y-RH#pm3~Io zecI=B{U?A1=zn&Bf7&O09%vWnr+)e;ei~(PE*5S|Wnt;2Yf31E64r%+Vun_zZ}t^t zekjmsrFf1gDgL0+ffhfRCwitQ_Eia5Hl12_nP-7tEqY|3-RDi_D1YkcP4Xv#{wR3%9`kapLf>;OX~|0$9#sggD+lRl}FCTWyHDV0vCl~yU1Ua6L5DVJ&~gqV`ig{hd1 zY2JM0&R~;Nt*G@OWNonLQ8D2jfmVFJrAPi~kLqX?_~?!LXp#2mffA{oM%M(35!D2sC^x%j!s;UMpvHMDT0P-pq{Fo z4(gx)6RToNtG=qMb`qE_YELmrJXzMFkO&Il%%c>lp_u6@q9T_?>Osmz_Gw>1YE3Hc zk-u~nVbH0B9Vi)`!5K^|wUWUXaKVn|nW=WGf$}M;f~uc(l$#uqug=r0&XcS52N1NY zyS^*D#;d#P{{XzwD-hT#zP4+=-mAX$E5H8hzV7S4_A7Zn1gjP*Ktf;7z^OG6D;^=_ zSwfSIbc`yRi5S_)zR+o>;^!PttH*k5o_4__4hA29s-8*LO&UUXeH<8Qly^lJ%7$yI z!pTr<=DEhq4y3EP+5iv?0wv7CBM<{6JOa=PEzwd!D^LO@^uo~20@5li(+;iCI&IJ@ zZPiMx(k^Y*3N6%bt<^d$C2+0QDy`UxZPrr4Af&Ba*eqv~=VwWuKRN8f8tbjNDaSa% z3^+k#?(Vii?+S154)5<0LoX16EldL_6oEdL#p}uoy9DGZrl=6gZ8f!GrP2!MIl>7n z0hl1dKY&3daEf7I0vV9N9%xe?gd0Rk2h56B6kLIR#z|7r2^DaGAtc)5f*c2e987|N zAh>}bkU<-?K^GXp9vFff=z$~9K_k4C$$~0++^MPJX!tX4%@IfR%taX_I8fN9IM@uP76E%CS(F4kN_D# zf=vLy3P=I^a=`i`#|q@Y93WP8SO*h8Wj7I8kA{;IP%9Ng!4yzIA6x-K2*Mut0U7K; z7htYY8jE;EmlPPn5nO>FoZX?Rfpo=3ZFIp}br&a30e_iO@cv1G zA&+l^s%q?$gT48lLy!ap3b68G>(k8~3Muu7w}Es!)!!*olxLQKcBO1Jb& zH*rqyG!yf*PXDwmymBwJLM!}3H$1~MOoJ{sK^1p&ynLl2RIf8_j5JSkt=vkRR<&uJ zz!T)g8K*G`fPpA90tbM>8H4~LIKeqX!V!>wj4*@_+`wQ?9HFrRwX(tI)&>_mt`mU4 z9?U^necT)v0vPxK=@$0D?ST{kwjR*I988>%@uzOahZKlZUq=CY^c{5d|EEa(;vqRT zXyZ%Hf-s^&1rD@;NcRFYq;ze>G77gg3OmC;$o2`(wyn%IN!JERuXbzKMhyFKNdxz6 zzcvon_6`37N+-8146&_H!!{swQXc~oobpD8HY8=S7+J4XXK#zTBKPiw4dehOgaRGN z79^0s6NCaGbh9}lLKKid2NuBz0FMo*RTBJ_TA`iZMFADCfygcaZ61M63bJ@Dfu14D zO^TBz!UP71v4Tz*?+O@j01!OE3D^K6G{OncfT5kU8(fJXxb+jj z#1Sw=5#)!Tb(0jR+5BEXAkzs%{R0Aj4cSAIQL$Bxht|zswC$+Hyd$CUgIQ)7vGUGAx5KC_^#u z0xSr_HW>RfKs%IYdRMw_mAj`iWqH+rPL+5!G#OeBECDtW|H274!4TvCaLj=Y_(3L+ zK@PmY5eR~G;D8Qb2XytBgeK@;{r3?#LH=^V6i}upKP9Nzq+WHGUWykWLM38V_7v2H z6#Rq6BSduB%AOKvMS;{sfxD*TEQlYQeR#xB>-MORL#uCtt%`K{4}t`wzI=D z^nB0%{LTx#&-eT@JU2T)_qKC8(>FcSLjyECgEAn4<>3M{*gCiW!!#U2ly|1MTV33m zJ2h{4R##JQWJx28ZzymXHaTQ1S{ST-Yy9e&f-by*YOBoVJ!g;d{;?EDNqNd&%4jz; z&9w4A6!l1tdd)BX;txI6`#i4~{m^eauk*UrFa6Lb|FzExy|E|#&LcHDKzq|8HFT4{ z)Kfh#(8ARZz2|HFw-bKzC9I=9>TYN?_ExiPY%iAAerq(s3-~Qn$!Y4mZv_Wwo`!0U z9z3YZz25h!fexs2anMAOwsnK{D3QgYLIn$adP(;%Go<>>Gk(qQdgTwh9kp2lu*V#m`Ii-SB_@?wFEEn~JUkaK0u zoY_6Q{EVPL(bJx#R)&lhuUEpxDb_sg-?U=~6Xw;u8zK!UjWz=PI8tR!oyU>nC&|D3Tj)YyTBAZVUhjWt|ei%l{Y2Pz1+3Ylz@ z!5uKth@*~v8mUU?u*`C$=4hG;CoNe5Nz9Le0uB+QxJy&1B$h~Xi6WK|Pt7^$tkX_4 znIOw7v(S>z$v*)NRL}+?ylc=yZ?K_-L3+vXA6o`1Oq>uAg9aB>9IqNJ61SG;zA2 z?8Rwh%uJx#K3hz*(^5t4vm6Op^%-P_d@Y^CHtUf#ad2VcKSY6j5+mTIq>?z}P7(>s zWnq%3O9T*jZY5=55=o>gfeI=+H1FgtPc_@@R@`yt{5H>T_cWBZb=hs#U4WZbU=|5<@sa1w~qg{~_{~P(nck85fa6GS$#ZAItf{3X?AJ3=4|@1=8-)5=p&(s;&#q9mxw|N zCy)v^Y4pf#dR+dH+ViYFgRR=?s|_sFPpm6sVUR~P>=4vR5km$fUKS%q#MqSS_(Wxr z998bnKBN2L99b1D;~#-sO&DHoSw)yzLuQPzXKLfc*R8p>dWV*Sdzm<8somLfOt@^$ z4VtON_B!CSt256iqCnz{D9B4XX(yCsb4}G@S6X&DTPMr*bNK|K@!feB6ha#q?>#{r z`05Mn!Hh&qnNT=^hVX7`|0DTGexX?frG#HWX0nJkn{hN%U8Pu8(@gUb8iGj_obZqZ z+J>OoOioL9L?8bxa*ueH`SSf!y7}gtW~L=;Z3-wr3!R;=z$Pak0SRUq&zs2b1~#xE zTt(oH1=WN>3?^ZN7+gXZl48Ny>B(FcWC9TWlQI>qkcDZ{nhRUl7P@#XL-&FdVGM&9 zVPFCpkJ%TCy73HJgybK}5C$uAqkUALKnb5hDsXZ3QkaD?Meu>{p?46^E2fsvlby# zCP+~;$q6DOvSjy!oP zf*L5f1bntZ3TiOq6}m75Fn}QmfOLZ)-7p0=NMR0Apo0_WV8|}~gAPo1gCvpmEu{3v zTzWDTH$i$zRfbeR2~pG_X2Bs2J%cd(DjOf*^1KnNa;h9Ljiwr$m;k zhqcOk;d_QK{}hG{Tv!o{1j7X_ril)Atj{srI~A`M7d(Cq|Ai&Yfsu`+gA}gtUJ#~9YUJIh?xGuE`hAwO3Bdsk{{qXFCZ-z&`;=l(L4_-< z0y33a4d8^)wk49Pdv=2uG^U8#-m-%ijX(u7Zb1vU>8)?Ha$6|6n2xDhQ?@LfH(E7(&rL2={St(m)N&+R{8sbgnQ{c0c~v?2-}vBno#H2aEcLy&hFsN{Is* zv=9a|l<|yETmcNUz!P-rh>r12ZzUJ+I0 z|B7R|viXdUoO`lF52(p5>skJ&Gi92YvrF8~k~q;=Ks=7pTMl%>6BzgfB#>uMZ?fQJ zH^{+pg*$_E;^<}31>Iq`*Wh~pog zb{O5<*F@AH0~IS42EZKTt8z= zPOQpi*8iMyIiILiTaAEhp*dQX@ib-I3Jezrdq$|hXVu*zLl9G71!O`Y1x^U${}o_x z1TR>jNVH+he9E}BsCfyGbckHYy~dS{=%!6!vs>j}J$6_J=yEXqZ@U3ZPUL^$voZzk zC}KW$5kTJ`^6LCfBXnAMsqNrV8d~bDPvu9Wds4p~PwPNL3_Eb)URFpZRN~;ptOe3j z!O50XEJCfRa48T}B*72_DK#tLh73M*VHL`N#)+iZ_l@J?76%i?$3ebp!*8aTCRg&h zRlbp8)lq+vr}9joB@-+!3uZJIZy?XjQJgopKZG{->AS^&`fsB+2=-j>0O`WrBFqN7 zrZ4X0FIsBSB*T3$f!}(l8*qsiZj4__thR~|8hGJv7G_q2K{R}d7b6rDrUMrQFZ>3t@Q5s^Xrmy`FVP;y$s$Md>4L zCY-HWnvjk%4=6T5JNR!4_fPalj{rpn3<1zvI0$Nl4(bpv4J9OAP|lPjWCj@JFUr9g z@&!~vgj5Vi82E`6CU6>*YT%BKHg0PgUI7!h=p_865m>=&xZq>nUY#|? zt`2a47uvuHLLpXYfm5^y1uG2_8X+WDLGaMQ8`uFIK#td3k-0R({M2p9((kLPq$i$m z@}7kz&gvx`ffJ_VB!ZDRlBGJXgY&>m|DvWWx{d#o5%s8TXpXL1|3nE-AS?~laM3u6 z0s8{$Y=PeFE%_4T6{uhi7Dkw8ffphJGH5BqLO~52;Td>=5Bg21$Y46u027em6_~&c zQbZX9K?+a-V+_Fw29gz=pboU>8CYQs9AO_h;nH5g5Au-}{vi~8FdbMi{Dy1@p$LAS zs|`u2*zN~ru7ntK@i_datftT<9AON8kr2qhx-bC@1c7JnD0D!N+{#c-%5YD1;7x9z z2zEdK2@rRlZcTIm2!H_efZ%n?OZCd@8nN*J6)?i!a27I5Y)q@fCWTb^u@OXt6AWRA zDuW$9Q5YP-wQyk-cmfw(&=IC!I!Fu|8tTTTArzRv5TfB9|6V}~`T*1XU>r%62yTD|il8Z%vCu~8 zH_0#wP$)S;4>^kt8ly2PPlk-Nb35Y#UhaZB*8)HquocPyZ0v1C5Q7$`01_C+4}c&P zUPKu%;U6%;uuLQrpbrIkA+i1e8G;BCmVhy*K^Vy33SOb63}FdEp&Me;5VVItufWpi zKo4kv76=Lxo{AHefDV8#6~m9$ZbecYg9BfMWLUw_|G@Jt%t$zpEz3;PX0T#8(CH-} z;Uo;f>p~$4NT3l~pa?nu5-mUqAOQ$K00@9X2S|Vh+~7NI;2(4#YW!m;lOQcXPuN;O z2Z$1dkh3U>QXx2qE~<0}KyL?d;3<)U24(;VxReGs2nTS0C!~E-q?Yr#9^3(snq76HdKoiI6-?b0~q)73Z@BBH%=KG0TOS)`cMJEatazC zfe9c%G+x2UXvLqc@DR&@UZy*WWG&+$&2fTw! zi@*j7b}457PtdJgSg$Hw?<%9qYbZfOzOmj~M5Y3DGRSh^wk|TB;UtvG3D{Go{sC=J zK~#m|ZyLb~FacxKa}H937aGdbG!zp^0~aJ|Q>Q^0SfLHb;A1YO2&MoN1ZNt65C{n` zF_LE;Uj-SKB;|&Mtwd8(kS$qNk~#jTC0pV~5dk4d022NI5klb~z~CRE083Fp2W(&u zXy9Jev?+GrNtxg`^W<@sU=wiq7nn&HbRiT#!4^Pa7JP+HIoBap)L6pGyR23x zQ1gv?(M2(V1Xdslq5^DzfGH560-PWU9$=!n00aW3cK`@z00+=@A(|2hjsQz@ zKnF^v2zqn}oInkZ01Tv{1)4HV|JxQJfS?7Y^i7!{v(6PM$aD#C084Fv4CIwvMMo+N z?K2&A*dVsE81QTUp&TkU`7)MaAY+F@0d6=0sY2lu-Uk^l!PCyi1%1^C=1w5Gfl^-! z({N!Af@>AX01P&jCw$B>4S^TVCkIcW7`P7;Hitf8un|H56F9*Uz`zjem=i)_75sP= zkjO-CL5pK!Yzh3h+u^fnW-pfCiSJ4R!#(rT_?zB7x6> z3&>y!#_X5f0EDLC3e?~!|Bv}l8R?PY)aj1x z;fkT_1ftSHP#H+(8OnLMFlIofNqcFLdTclI;Ld*K`XIBkrAyHU*<}3!jdH!=AflnQ=&#yf{%f*5fDHSLLn0{ zfu*HGX27cvj-c~UPb&Nu3FvAG8py8jiA@Sr4dN`5D3J>!=?xI9Kru;^Hc<+upbf6z zzY=mo!63a<$Fi(?lme|`v6=C-nWXxZJd2p7R9CeKjxjdw(o#%hB%?NhgjLLksQeC9 zf`k^xKoDq6AXZ~<|BC1z%;$VAjaG<6i*gJVzPCa}4T-cU6f?0k{vl;~VJ1MK75st{ z2H^&PHRa+LjbbK}B^h(DmL)yfB_M$d(x@cDDJOfA3pr?kj=+E2>>sFr+wKXk+6)YU z0HCgb4Gc*Qn1HuE>AuK-3PAav4r)o0fWVvp4A@|@;#4ZpaI2&4hdJxQW@0Oe?<>2l>rj?0Bx)&Niv4-e1xx|sXzawH8PQzI;J&3kg;huWgA;8 zvSN`}Nuya5W}2|Gm9;tKZ(5RL7}JVOYOW|IizmrLu3DQswzaPAslAMP2`*|5oWKbN zQw<(#4w%4`|G0n)oZzCCJE9`03)}!P6X^;Xs=4LVTS^JKeYmSb>Oux#Vu=_WyMY5? z1c^NZRWL*CQe_*$`nIV!J>bOK!p(xbBi!ZGo{+BejxyalN^#xy zecfGN^7P%)B8YjML#~@)kXU38?^B3sM#hJzbVV3AA*bfKRq{s4seEH}J=lSLHLjfD z-MNU0-S7NP7iNM(h=DkPH8+A4b8SEh9CIC8f~Kt*g#Iha#f`F96!lNmpaD)&v7YL+{_3|r>$(2xy&mgtzy#=m>TDqFyFTr~UhS#QvT2|J|G^wufkUtXx46eM z|3X6?cBH5(#PT@l-zbRe$wa|B;~sq;Fz1Ujm#okHJ5Ot+GQ9{2;F` zD1*`i=NpXNf-{7^uqVf`+Gd{}iDtwzko@0!i!*X0 zH2(S+1P<8thHnx-;r&k6A7A}fgZ(Fd@-waCFCHuQwLp@-(`g_EvqNf8pG*J(k|Ri% z20{`@&>+Hs2Nx1mx_BS!&!_THQ zZVb(^AaXRKK(Q}zsYY}mAE$G%y>34}o|$kg$7)>7C$n zmoOV4V&Y_|{F_C3BK?V!=>4Kq^Yh=I-+Thfx8G1q05M#G3NFZCgAP6j|6zm@PDo*e z7CyMc3N!$BVTT?jIKv>6^zu(H_4mtlXcDA`|?O{2^)$D9+*XQG{B z>oK6wI^$)tUiOcXrXh*sW1}s(WRp#H_AIniMoHzguj$4ci6C(({~W2D?m)wsWm+Ur zL3)}SXS!{6$L5^jePm}w7eR+-M$gUb2pDAS3kDcnbaBNMQ|zz=5C$KNu)#$r3 z>uQJn1MD%$AO;OP$RN{Ak&GRUtg_RbbM%qSD(S3~Qa^j`l-5>jWh;Aa+oe~;!L@R6 z;gWf#K^NhxZrW_JyQaJ0iS%5Xjl{iCd4`ZtPd2zwnb*hP2_9a-0u3ol{&o&mr|D$Ng9K+5($sogyXEq8u ztgt{n!%nV7KlAj{QUC5_wYgQjBeuQt(h4#Ea7kRqnYT5zA&9^|%S;qG2)dRCOp++E zd*JB^-0qYfOx!Jt7D<8*+AswisG$W(XxO84;3$O|N@0)M!5en~F>qGXn)l1k4s>ua zbi&am;(Syc0|&Xn6@{EkV4hcI&@~^5Dv_eXr9c1ap_BpCOAsW{)>34_P)_n3uQ&%V zZZ(Y+DFYd=@FX&d@sDD}?nlK+R?}F)y2l7<|D-T%mMdQg%WC0pN3RhEZ+!EQE%^|L z1FcY)c6p{Wp=(~jRNMC2^pPk2V-8Y8iTF;!)0B|me1>R&AIRi~Ie-KQ4a0#BcF?e{ zVDqZr1Ohn4X{Z~ZF$q`&Cs%<0Pd6T{p6)alPKtodL!q@{)@;hc9@bT)(0~Oj@F5FY z(1IQOl?C`*K?_!(shTQwu?Z3=V=2VB62Yt$=fFlpX?Bn{w$&ooz+hs1t2xP9 zO*J0KCQkvv9M$MeaxP3N`^E1LT2R;x%|JtZ-7A*@+uH==vXBan&;$Q5BE3vdk}a~} zjG{47(Cp|Kzxc;8+(Fu3Aww9!+OUnFag13cBO1R_)(cC@EUMLZcsFEe4ng9ZL2Ri@ z4TjKf%S1h$-pjZ?Wv)iP_YnmcfT(x6UQ(mWOh>c;3>5)_6lTCquXfiaSY6l+KsHvS zU^Q@MMNq@MSid^h4KjKHQ)fz&|k5E6M!4!oe~*)O@t1TLqZ;8LZ>89E+QCO5Ct8q zV4B-SqgS(91hIZKykSOTq`+%dv$pXk@b$?*+&R{ZEezdg%`ds*8?mC;B$0@n0f65^ zSU>0azX#)nE=)~qoK#BQIcvtRtdXp-7Lu6CG_eC8;MfqsOM#ecUPd0aQG1RN?}>-W z=c1RBHPUP|8Nv;QnnNFS|4=A9%T>JIwux8UC-3)VlbrO)<OY6v6p~>xHvl;OYtB z;Q)3xeQp8U!$k9%%iXt*o%?V?+QYn8|HI=TEcq)yxZXQu0TQ85tG#&Vl%ck>-4B6*# zDt7n6;}MS}+fB|TA4aY?-ElR-4|Pa_7zO79E+7RAR44)!#HgsBT)`-CEF8vk@|28i z%wkN?{#E#QpyuT|ECRH<`6t9+^FO#my;&8{Ry3Fk{^c1U&)uev(Luxn;~y2@WaIzQ zVIamU9~W`UfGnJc|7xeE8o;AcR5CQW0D-bLG(!_hx0PWrr(;}^PlnWBuNQ1QRa~@p z9-Lr%$>kB^5gtS*H^ud2SVTQaCkTe%2Srd5_d_2{AO%do2V77GS3m~J=LGSAF@4ho zZSZwEL3aM5gqETeUNb-h=SRFIg_KihQ+OPSbSk~k8|QEi@uyJ20u2+mI+0cyj)yC? zats9+4I5;5t^*8(hZ&}(B&B3hpx08kpbJBjL$sg^wh#Uj1H21a#t4+gkvXSSu8?3 zvw|zpm}!qT8X?4g|Bx$(p=q844Ml^EzruN`#!9p0fUp38=Ew`Ba1Ork59W9b=BNv> zAb~gZ8vlTL$CH6PrXa)kST_Z1vFCdsNQpmZi6D_=2%v($)Lck4i78P;Wx^+Wz&?g! zSFz}cXq5zHa0P6T1XQpuPH+WWpax7Z1!`b+N7#!?2!2jjj4k;g$5?Y*kw`A%8{djIB+Ko(p{^jrhEY(OU`;PEz@$R=~MiPpmq?IArh z5g?CJ6jaa#OP~i`Fb7wl20o|;Z{UM(KnFkg25&G2NCAFOk&?X#ApPW$nQ2pXH+PA~ zezn9Zr1OlXB`l^TN~U2#9YrLiF(fS1J0%xGu`z+lkdEtk4$J_RzJMZJxsLy^3#^cb zVmMJOm6a}YDw)zC{J2Ac+codA9NuS2ZnR4fuTDW)Ez?zjIO0lv+U?`wTGa971 z|3abhV$4!Gf@-&!4&5vZ#Z#oM_69(nUWOaF`*JTFnG!E3Kxce2&$#f(xs)an_Q@yyNRJ`YN5lrn@{Pc^@w^UBBHFvM*=i{ z3>1ZSx|Vsmr$!a1#1vEta7^iaPI{umk(A1uL)yORxv4unEhs2+iQu@ft?2}=X}Y62Ha zu@TF$8|$(AIs<$456Xi)`)Nu|GZ{%T4aX1)lQ($3FnOMrB&~rAr~tDst769>j!c4b zD>q}vfD5Q#CC|W)Re76c>PXDMjws>_w}}k4@RYNO3|2x6Ipzgif=@ow|0P>HqWjvh z75lYc>qAT62YcWLG9eS_L#}Jfwr%USZ_BpbdVBBkr)r}f!{r~IHPH?^_mQ*Qo0Zd)PStVnzXZPw7X!m%#aGU01BJYtT6`?J4UC|+GF7IYr=;n zzLX|+o4j}{d(2y?&%3;G>qIB`58&FO*@HF`(H>jmw^SjS-NejDC84`os!Gx>}ytxYyXbZQX3%u|Qhxi-9=(rt7 zL~4m1&FgzSj6F|eOi?7gM%9o+%v6Zbol}g&`*Q_d5Fdj}|G3pRARXhrlLCxHip4E? zq&1glBnvYnEG!+R8)2BoBW5f7$22;UX(<*9Il>9Qa1PDT8MzWW1#Bx0JiwV2LkvnK zx=;$ckgWee4J2&4=im&t`43i7&bABA>rBE-d&0Ud8aL@y?iZ>wz{c^-R0S1jD z#T2utEP2a|8!F}}lXr0{zi>R2Wh_9Mnn5GeJ3?Yj;*Bbn46_gm?!Yq>6++A4VGmqt z3rLQ^gB!xY3bv5Qj+Dsbtj^wSyUyU7ggn)@t3y!h|CKp33ovy{j%&*U#hgLbylB(U zX(Lo10mNwog3tSc>C?TK!UR9~4@b}wTyO-6)1G9&22wBwQ{aO?5g&1cF-t%O2TcZt zNe5kUF-x!nQgD5bO2q}@zL;6kSxnikcXtrRek5{}sAW3>ilDqQc&M;R`^Q@M5DdCX z+Le?eAdzW$9Ao5&8~-2+pa2THFv8&+)$44+=j@y7Y$Ybl47#h8!Z2$gF$;-!#ao=u z)f38P?L-D?kO8eOLpBjFXv6}t1YAG`bd4WeFaP1azPV|KN$^Nd~d_|ATk*o!$$-_KV=1H#jFcutjG%lLunXbL+k`CDy8RC?{@czF z+`FK=Au(dS@w->Mk7H58gcc@FfWv#MQ)CU@1u5O&^PIJJE_$0c?!lcM{hdV+l61}3 zJ+a+E!3KsIM^xSgg`EV@u4KD>V(5-h!Uu60@g3M2=(vzms@siDWI=0YySfV5Q`$N&pZnaH}`>ELX;yFlZ( z4b{vb)hiD0nVt&N01CJ;welQuGOQ`OcF+BI$*^}sgbM5ajC%;lL~W_9y;Q`xJ`~x< z1^_K+@9WUpa#|M24s-f!cO0Y-I&Af1n>Rx@a+f2*9Q6m#f<|5 zdM@s`ti^twXq}^l*vJ?Z&KSTf|4Nh*Tcr44ZkMw>djEnf=!`Me2LekVqK%k#X1>|G4eEJ0U z799Bcq%!+Y=tCnr3$-Q;>h4iS@*}<~ho%9WBy}1S%(_O6TetuUqCWN}jN70N@G5Th zYwz~cp9-Mv48*NNAd%c<35C_FoVD*`<;RG0(cIOu!+S5T&?$5tzvM_&FNLtlS%jz9 zP4d`x6N^IE^TQKB0T4%u|0GEQWZ=IfMFtXN*wA4^gbf!eT$p4D!;1tnGGqee28|gz zZipNy66B1LHfF3ODbl3N8!bxC+yQgs&6+rC?!1vwX3HHmbn49M5+=}*GidBssnjM- zo<@t_94d9>3Y0c;R^=-7C{LU{nTFMBa>hTjz105025s83XK&rYh3j_i-D%L=KC_!w z?_a=n14C1$xA0-Ygq1B`{A}^RQk+_~+O^ABWoM}_SEg2ZS7%+9J9D`fbAh1R4YrIDdVjvPUPglV~ROwgl8cQjo(rsLMN zM}I`!dG+n##Yabg|Mp*b1a6v-x9-SEb4N_JJ86WeIi%%|8Z|&_IK9AP5KufdJ5=04cO^qlpTVaG{JgN^l?#J)(gI9CqSqg%(y=0S6UZkcovA zTtd+$7fUkHtD;P7A-JMuXkiByeoQJP7MAkuMkH+n=?0~2Sm7ijb+j?bnpy~nN*SNr z$;z61ywOIeu#D2i+Dt4-rH{@sPpxCldF#!$;({|Tx#G05FTkStOHaTS`%4*Q3=@>F zKmkpRF#Q@;J|j)i%4~VmG+S&*?U7P=LFSmW{u$&Sl5ArNrIl{Lilr#4 zobsz2Z}f7={~fptN(x5|QBFDO)?-gQP7LuQ6YB(-!#ZN4;{*&pIQjKi^v*-ejc2EG zL<;Jbz=RAir09baCic6+2|u=7Vu?K(kr0R-GAaVXffU+7L5k>Aa0!DhQV0kp5=vr+ zejS20A%h-N2!{=e*kQv53x0Rq9U3m8BPLgBAxN=kV4+GMjjYv#q)f<)h7nd^5@Q>J zq~T&KX=93oB55$;C$W5-K?EUhFoA@aSQhDG-FgCAXxd^bk_8h$T3O@~jYbt?nK$;4 zW~OR%(Z!#wte8m>u(}~gmzhFQCZlB{Tc#N>7K`Pcga*1+E0y|bN1s~|*#;9teN8Q0 zuu&$O|7RQv92#~4k4sL+kU3m&!;nGjP(a~w92#K)Z5$cPF<%Us%9W|yab=!ChL?YE z;pCA_F}1}s)-zrGb=O_T6s<=_;8o6S8?4-ED5kw5Z1Pmw0z$A$m z>I36^P8_)cj3pqVTE9X-0nbw&^$gGvOMpcGv;_n=G~x)5Fpd-E(4R)QVGmJQf*x8R z1%+J%UkY&$ybQ9h9ULKr1bNs*=JlY5oN!<7k{3Z71fUbHiz5Dt*t-(4uY_1^1}4Kw z|4y)?v6YRjR?~x-Zgz0Q<+*5xAORW7XkapnZLEkm@sX;6#>5s}ab;H065PJ_wJ>7E zYeNLmN=z2FWUsdyx)$iFk^WYUbd)Uu^aEhH`IT3&7Cr7oh?VsRU+I(;;w zo-D7gOL>xFdj`cPioiU-=*2(Uq$gTVBXr21Q=C|9n79DSPmKYcY-?GV|4`yKw}hIU zZ3z|1+6sdgtZ0QUkU7lb9@m)4bsZ>5A&k|`Vw!0AS`#%3S&MDID#MWV~8$j4-$ru0vMRnEkraT3Yp+U6y^X1{)WO0WXJ>7{U|GXNV|ZA{18`7DmN`o@i04J?u#WA~@lOh9+THM{v(c5djHw0YSk>phF9y z5W*yMWMUCBh(H8l(|H|%h4C^7zy38Lf-r%GKV;ZamHOj?Nho4Omaz{VmXMQG^-AX4 zNnJ-$q!|cLoloNHAveZXtUal-F{*1glcL3?M30?BIwYDn#v~Ta|3D=gJ98VsJhfB3 zQHzD$T2I1>6+hy+k4jmA2>^)_uZgX%MEsG8`0Nx#Pwy&-UfEUt{6?8z#Ywdi?VA1} z3{FPlld*LiU7o>?$OW#qvfVA_5_hP~g-$QJtfeRebxY3?Mi{%)MJQU4sbBxvn8J>o zu!#+dV57wrvOtD;{xJ*cHYH^}Nm(1y*4G~qy0A|i5f-m>#h!KfYCzhUn#)Q@GAKAX z_#^`)hQOcsMFA50A@O_g*@z`v;y80~!yKNF34mT96#mV`9sn-D_FmM&)-m8l6ZkAg z1j`8%hXlZ%uml3jTM*}J_Y^K71w^b%LNTT(!RDo)6c#}T|2k$NyGHKvfh_EWF@Dzz zYyQKQ`zxvZs(H*67ITROv18eu^77WEqA1e9Nfo0}I4{Nmu#T1JKq{Nmj&_?LQ4QRO z9TCjPCK4DePh*9=37|)m^+*=d>q~^2%ZMgNw0~_zLxh>~x(*{FK{nGVTI|M_7&bIY z`iU?A&_FN0%6jycvQ0%6F-SPbn-|bRT3xUsP_FFcDpkvuz34Kxs8oz6St~kM`-xDv z1(fDWKY7h5F7$w+MJOKeh(Zh^*tQUMF=zjeWYhj1kHGyS2J!krfC3iCFs?Ms10=cP z!06}9uGYeCwCO?b=|xYG*{UXY!6VVHVI6FI!KgTjLM)C(@Pp*wmE^Dw`~PU51f0a_ki<$14_~nlX92(f z+^7Q5unilahg*;8z>i%y4ny#d4rGXUNsxpnkPuu&S)4^$e29P%vY=@jUED<>kW|#E#rc_K21PBEX9zMe4Xq<=78HNX7rK#Ui+ZE?9#2 z>VhbEgD!XjH5ia0kODPegDyw{GH{5B$Pj&T0x+0K(!|Awj7!u^P1Rh@U(^!Te9bg5 zk6Gvi-bqS3xlP0&$EJ)*-lWQ@#7bET&dos!Sa6M2phJ61PJB!a)u6-FC?;8eF3cgm z*<4Ff(Zj2~|y@ zbjWH<5{Gn63QbLra5hb9w!^WL5-rEN=uH*<6W@d!s|3!~LWWn^J>R24+_MATQwy1HlBz z^*qdxj7cHu0`uttB;W!kFjFp|f^#VXGEf5!N&-CqgE!)DOLt23)u05KKyx zQt>3uXh{#f#3*NRggWR_=U@&s=z`-2(-G1a$h6D>Spq6xQ-M&BDIkM6aDp~Sf+>)K ze~^MHpo4#y0v+fAHxNxSHHgt{7?yNTd}T$&yb>3Lxl`-j(DZ@dlV!rvzsl^Uf{TmLA9RDgvbEr!zboa&sWwuF^K>{z2cTJD@k_&~sAHCDcC zxB;w|kNh9wfCMhMf`w{?gVNeYkb?Swgd%u>JrD#O_=km%F{MI+CD;M8rI#s~0)e=J zBIp7YB7-Yvg9DWUGGK!~#W*)rgMp9&H#m@bovH-!DW!Ut9^2`Y{oBC>>V0xm!hZY=^XFk2P!J}!6z0aXM4 z;J7>W4};(q5Hhg%3aWv~A*n*L9{V9DPZ!CqN8#GwBZS2BRZLt5u-20QKd{#Q*BX{O;zb#t#>@V(Q%E`_@!3(Uew{e9OVV_ZMM{NoU}xXJe-YS zMA9*)#-z1NC;$D<`jt{-Wq^NpfPVl??+6e5A{MNTFicp2Oc2*7$S?F;U~1KY78s#^ zDFTEMG9Yk*`=bIUfMqH$5R~&iAF`nnN?gXJp^F8bTznT|(=97J+BU4|3B3NDp0SxVtC6t@UPv=1#RfN}_y{phoi-I_(jY9 z#j$$n_+<|001y71X$wODN;Z$1&eH8@gdyOd6T1TYxPpqapiJCzemVo(T_UdHup@e~XSx>Q=|C~o8C#D=R*#ZK!p&92^^4^+`yRJh&I27TeNc_V*)qd^9{s6HxKk8NVDC@@~#-d6aSnF z8WcpWxJD&pLP9jbNmocpPidoAiAt(;VJyK#XK^fdRE=@AUm%8Gu!T?ng=BE9Utsk# zT=i8~^$^T>m9rzx7?W^%!+sjIj14ZOb~cqcL(Lb zK%Yen%s`qfL?fK^A!PK6RoF!D!7xc_fd_a;-*+Q~^dTG?Nk2qs$B8m(X^G!hYJ+iT z>xEe$292jpP1<;k?|6;Rc#faVkpK9MFL{(F29j6#kf+U)e|eOLd6u7fng7rDli!`) z$@rYtotS5No#&lhB^8u5krDyeiD&7QZ~_KoUc*ECw$4C6YXZgine2o8i-m(0dw|v9De3RFB>y&bZ zF-AlV^=pUeUXf|1$0(@B-v`iNFaMQHOixox_pH~z15pqiYxhD8`~7Zn`sV$7mwVwC z{>mQyBei%!F0I$7&eEz*=6|-*YJTOfPUx?G>qp@WN z=8hFKR_+Wcw51IeJG>0~mvj)ZK}?@QRSLD~RHsy>Vzuft>(Z`VyMj%M^q&{0PPd*7 z3zn?dux!tg{YP^p(4lr;?w}z>VIxO=4-UixNnl{Yh7Ti7taveF!w4QAV6cDz0ym8t z6BL-4ph3S05ixY=k)%Y57LQ=OXmT~{)+U(%X}M!I?b^0)ko4+Kty90QJv(>o&%JNw9$mZiw9=K9MVo%T*z@U?l6B6U zxl6jokJDAIzqVe!ehn6u*<}L~Sm0p~{Da^>3;c7&VFDI7SYQAiXsUsg(K zrkPr5>7|o)x~Zn1b{eXrn7T-+q?M)$s;FOjIx4H1o{B1~^xd}`evj&AgA*kt)sp(lGp!wM$M@NtZ?nl{%>tToy(_FL7JE;rt&33IcpT0i> z?K99f1YNYzMX`;{-sd0tHIn++2Ee- zZOpA1%Cy^W*PJulJiFvG(Ra^xcT4o~jd!Gay4An zb02CZniUq7r`4Mav>*eJ#px`@1wzP~v~h?7&EyY6!p zw>!=|1s?cI!v7t)@8lAXS4_CW?KIRD6FWNRRm)j0f*?Pe8Q9WVcyhIAyIgzgveQ00 z`7TRTwxPVT-#(&^x<4X*_tgaPY%<-iGf-jX+CTsQ`!9e11R(yFH$O4;W>@i>jphCV z7}FJNdRB`Q#}I&kJs?X!YpPK9FyxTcb^mJ#92p_(9^!-#j*x^REFTNcXTBG9Ykdox zAq^Rovl=2NSNRhlixh~%{V4E&yz!y?8i+X!8m4O!bW_KeMW>KuP%vP#5F!+!x)M4; z4c{t4N3P%mCv<@|E^Hy}QdkiZvaW4ETq7G(^8W|%sb0(NB=IyVS_R*d5_!6~?QLT{y zf}}E=$;@XKhJp-25C$7@7)}TToBx>5CN~$8CrN(qjNOvL8$zN6S89?BU6{fZ$Y6*m zobw85xWXLhd4)QFfeusX!z)85&J_aGi~;?pK+PyaJR)>~E9hfF8|qL+F_c#~kOHv! zBDFyhrkmT$CPz2wQH_GMqappMU=EqJJ#fN89OPhUTKbpMIk0;jGz232Pz2F*#0hi= z$sC*jPd7{<30VY#Afy0>D@Z||WJtmsy0FQfcEJr`SlfqSlRRHy^=2fp#9k}J*Msbpu59&86+u%| zKkVVAA8|q*=0FB|_EZXU82=?1+CT>LId66Hn_rF?F@dqv>Dg{x%08XSdXi;=R!BS z(tYmWsym*e`!avfm^yAzOlSLJI#OP=X?Opb9Q%f)DJ3BE0dT5?+xTBl=Jx3UR_0zKw-> zMFS@o^FQ?sBq24npao?O5hPnNv0BWg`nGtb3PA)RGBlEh{MVlo z=te{O(UOkz3Tw&aOW$S5m@abx?da(`g8I{<4mGLyXOp@xk8*hd@tH2iVn~))WCD2r zgKGT`48GdM(OagA(L}AWwXB3Y9=48)P3&VEJJ~Aa$ViU7>1RKzchGh+nWr5$P|L>5 ztWHSOblvA%gWKEU4)==hbZ0}V*g%?_vs*vo!PlYBwDMj}fGc8YYvX%)($04sHSE4@ z&m`5vJaenNUH_0ZLo3#oi5`NO)o@(bdCnNyU?lf+)+;hPga=-5gFDXgk26@oF?2S+ zOP(V7nY_svRhyr?qWNgBx9Y7b7vW$ZqxsmL2V9j}|2EeA4;C z8d@XE+=|Z|Hkv9uZKMPP7^DznAZwiIA}_Q*rB23>Fq`CBf3~I<4{*o-j_bnodcj5f z>X3<@?wZd$=h5DI&v)+5dB!FZoiNsi_1xQ@panEM z-KT#f#UnT@u+bH~g1~q|yYP=Gz<&u|WL+B!LEt$oA*p_^LmQ;v_fn=(QU#S!O@SMv zQYnF)#~IYP_*(-4QBQQ314^L3MW7#TTX=Owxs~4Zm0#&aj|VQ3=^4w3(ORA*QP82_ zno%4F{n{0=kpE4=QGr1hL;);mQfR5c6x7owslh9~k|1Of7rX&INr4);K_ou;QYSu=D8`-GeV@7T^U`$ zI)MQ@k%1G4Qw}CU9n=98^b{8`fhPH09XLTBbb(|s!5e&5DY-!x%t25=;_QgT6J8=$ zU0pR|nAI`rj3> zlRq7!P>}%>T)`ePffJMy6-?Fdb-^1<)joECPfgVl8eWmLO*UfH6iQ@8g4H%wk^iu? z7}2>S^#$D;ZeP(=U&2}6iJjOPdSV2XsPs#+$7S2uEE3WgyYz8DH>&fJw^=S*dsq}w=( zW7=&be!*nO=@?I*r2;bMf&moq!KK@{Wn@xjTN2z{(q&S9W1K;dQo15Lrk-b-B!lD? zVhmjh)+LoMVLJ|t{LBjPQA;#KC(Oy+IsCb}5qTuO~Hv7|`C8vht>-{+}a zv2ctT1|}DRV_vGDR&M2CHl|`y=X6>pK;hU=?q*vG<#u{!x;!6E`Q}EBq)1ZD&3R^X zGN*Cc+CN0V1-auG1|7wv9@4R%SXSp^>SumdXGDHy+;r!E3h2Xx=TUZJXa*-5FhD=lP+nNKFVc|XDhl`aI#{InjVb~r|DtBf|TF_prjI&TmKhoPR$Y4BpE4@ zM&q3Fn7!F%ilz%i8pp0E5DgU96*R(eG=dQFfrvcm4lu_Y9m;SxDsJfMrS+!438rvT zsCr`Pm|m)jofv~ez^!T1m$G5!)!bnC+I@a#hpK9-9+*$61eR*)gu&1K97hYRKnu)9 z3$OsL&Oi&afC;F9BbWdc7{UrP0xuMS8oYsvtN;tJgsrxKZefBGL~FC!fPMJt3M?wL zDypus01ZqEtj6lN?uT4bY6xECuJNU)j$|4_(Foca_^Bh;NKb>Z7}8Y{SJLUe+G(AR z5Cf7cxw?^U%zzqT0v`~K!M;HYIDsHIY$zy$8Zd#x3d1Y-BmWn)02g2aAD09ka z&~@skt|=&f+bV*ipRJx1xn{retG~YH?ci*z4lG@?038T}A>e`_kO3~t0WOe%8cYKw zya6W&0~PoIE+hdi_*f`lf)oe?A<%*&I6)|A?GPdZCltXe5Cke5#|$LFGlYU8D8s~p z?Jc|k89YNH-~ulg0x~p$QB-Z^mPmMJBvQIr2%_s@r03|UBGR&Cyy~c4QlB&F2`2Q# zhANiSLhb7wDS!d2Z3O_q4xj=p@BuG4!v7l_0}Ge{A)rDB@WCsXKqxc< z25>@OghB@(2_F!GFgOAW;6f@rgCU?T6BJhx2m=#TKq(Lc+SUOsaKaei!Uzz;DpbHW z;VSLQZ*u4?Qikp_rRSF-sFyyIo0-mne5%o=B8>7c{*ug(qH5GCFzik(5WH%nnv2}r zZYXeq2v7kNgaRrg!DZ0_F7#?6u)+$|0WILJBdkD5IRYz~zzJc3#U6tr%)l`KqcV&E zJ>kd=6ag}ffeGA#$I`+-D5DzCLJKrPD6oJ);3@=Pp}E>`&xYWL5$2|5DwztMV05Z` zJ^-#soV(_wu9-{~1?kfg8v~Q^kcp@g^Nh49D*qMmLMRA>#Qp;&&;k{_!9TRX3`~JC z5CR?i!wR4RCWt^B7r`;0f-clS^%6oHcYqtmF)D;YD6|0F0)a5}t}qmV6VO5nkHH)8 z0t+~T@^XS5(<&PK(u#89Zz3ErWnY`#Z+enlU0#fP7EAnb(VQEf|8;0=w*j2wzo%LX6i3RR;ht;$79NcA2q$sT2xQ;Rij6lj;OOUkqX*XL@^BS$cnPqBf-`rcT+TAlNtFq|A80bM0Bz)=u{-2biA;A5`-wLoh~~^}%&+*JQUx zrm|bBwLs*ki5u;5qMmt*IMc44Q2!lH{$m}JC2s%n)Y&(NZ&?HB%{fC ztRr-}s@H)d5W=z7tp6i$K@u1|7ZJo97&)-q02u(t4ZMMc?7$VME++IkAM}Oqal#yM z0YPwq!9x5FsO-WL0vF6d%=h~pOZgS>0U1PVsw)ID|3eX6!L27>r0O|ze_;PE?V``; zw?BQN3&v>6@&fFrnU)@E>vE&t_0sj2SXTN%Z_A};I}X{dq7nih>_8&~D;G5a6%6Xz ztHB)1Kzma=A-qAVQ-RlF0vT`u9YiZ3Gy)xPLea1N7!U#&0KwkV!3{J*7dV1YIRX`M z0vQ}^BZ!vCt3)F9{TuKB4PXKjyq~B80VX5?=F=?O_kHCv$35l!?e={9asn#M0Sgqt z^Fl%+OljGdi2sIvDR$@c(+_%?a_%b=I%$6@!~ryqj^hJ?QzO8;y-R<+FW3_PxV{G* zzbmRCkO2$)1058C;1z6Ie)LF^wfl7A)GaVlka%YnH9swrRoEoqP9Rgar}!EmX4o0-(yaT;}M)vH;zcKsT5Y}vDE z*IsRN1&!1*P%35;lu4s2|4jV5;)K%`M}#H_U zjYy6^$cOBXLR*=vY{ZFT5ln(GjiE!vgh5Pd=&0cx{2wYpDPo7LAkuAy7G@A?hws#A z;iH3?NDjJ28ri`n+ceye!wx-6?J5H;^y;v|=xPhDwgv;ttisYNti`}!M3Kg___{Fy z1pZP{uoLBa5v{NiQ*0|kig+xtC6ZhcGA5O563Qo~bdt&_tDMqGE0v6li6V5P3d}IY z9RHKdGQr#-Hw;gkfslWaIL)Jf2rR+|0(W?`2q%gF;!YY6^20kld z;-(@P)s2ZH0DbJJf4ao5B0Ukp@P;IcBJiV4H?@fhKr{R&DNt=H;-89&aFkIqWu2AQ zT9L8}D?<<&(UGr$v`a-FT|6sAVuS7R*usp(1jh(6_-7Bpj$M|=AlF)}R||DD#4*rD z)66q(I~!MA(aHta)0%8um)&;RMe|FWZkVD72>-DmDH?8=freK1UGOM?_eE7;n*@dl zse=*z7vTj71{hO*Z=gZnn_y~q-+<*^kW;2?Sh(Q@Mef+$l1-KsR}s1DwZs^KRR3`; zn5Qi^ExD!*4A{Gx{l~9rYp(gOm`zk`NCW-o_R7hekRr*+B4Zj#C!CPXi7A}E66-9n z-1^Bb8T=6Ju*Dvmwxd?a5VeYHlUFsgUvt|vwoikb?7Ho~8*i{f)OBT+e?4nxpn(J$ zaAa|&k#MriiXbm%_1c3I!DX&_SjEG-HnGJTLsDzVuDC*qE;z5OjmIQQq6;vnzC!D) zxo#cy(oUY8_Sy$cGb!n8-~HC4Nah{*;Atf^R|{A6)h?H7406T8j|H;W=B+)pFUJ3Q zV2?};9~>~Yyce=7qmdprvMH>Ftc#{2b4dy^$Ur@PFq~lB-1^D2-|5M`{{LP0{{2@9 zUi|yt00~$?0;X&$yh5Jkes;6KO>RY%laaJ)1SG~?@L4-Dob&+qJradaE8OB7XCiZj zrcGgVNl=3n=FmPcOu-Fgkb)H2a4s9-FEdS(odJ0mya4tPh(Q!$yAWtR68#NuF_NHQ zXx71LHE?J)y3s!}prh`|Oj-?$*eQD6GIW6qc~Zj^4B>_&y$^@? zlVce5r>-I1@m;vP)$dSarn%t}kbzuR5fxY>WBG`ALKB)`Sah?OQI1)SbJhZ)bwxu) zF-3LhA_yCCw9z>UeNvd;`JR-7(#-)QV7LMqz#zjKx(=4Gd)*TDC;v!Wj_HSk;@GWh zz=EBWsbIGh<}jgxz+D}WixYHST!i&J#7!`H#u`>y_>z}@Tu+0AgW$3}2tFch?p#Zl z0_gHr!X-F?m5zCg=&TmU8_qE_rXl7$oq{GCa0*va_*$Z>L$}$?AS+*M8$AgMNJ1jh zayDBYwPIE|2`XzW!R^<* ze%60d^&7BW7Qw=0lB}hboaBb~)o1n0W`q+O_qMpntbjAFD$VU~<;YUd3Nx2@4MiiA z;fQCr0TamJf-pi6idz_B8Z1EuDp-LGOemuZkl=(e#`BCT@YN5>Xaq70feTt}S53cF z@9vD*w*{JYMa=Y>^OlK4NZ$8}DxxA^DhgZak#@ceL`(QI2gX>=^1um}CDyi-E_toj zmH|Y~3jPraLZAW!xZuMZaIphuAOsnXz{Lu7zzZh`V*eE_-~}H-feB$qw*sMX#9kFp zVOG4M2*OB$XCd5UcZqg^Ct__hw;JE&`3RDZq#hM1`hYV;Zmh^U(H4bd+aew5Y75pf zg14;T*X=NGVHWe4`zT?U&a@GRbb6%dW>A8YAF~|!C-I!8Fb(xXOto; z7j0W=O(}16yXxLjWYV#gwQO*s8`R7|4R5$YXAL1rL$n|XVeyn95><#KT!9ZaSo9pe zLWUbOq7G^x!wl-c2|6fSPmNI5thwE7Z@b0@#s4d0rg;=SpfyohNrqw+vB>28Vz0;$ z#i~{j(?#)(kk$Ei^*fWaLmvk+mo{mEf_75V8L;3cELg#USa1}BL&&EJhqy0c(t;Hr zyrwod+rK&fu5hbtsvLEq6N{DZjW*KUa`9?^ceL6@lKfY;1u4GK#a4Z{8t0XfOqag& zZJ$fpY_`Vd4s@3qf1XNBKUezFna-NM?J6-rRwfkHUF36THHk&O*?ukR(j>_&C+g<@gslP5K(=Ez7G_W&L@GXJDWq_z8b(2M zNed?sDe&bfTEGk+>;MzQV6@N%6l89mkWifRiiR_3-0taHY|4Q9a$W`X@SqX^sJl-lEr zTFHdwVE(*}6}tx3mXL?^Xb85A`DQMk^l^D0tm*y8db*+W90xlW(J&q z3ldH@xPT&Pz!@hdPYxv_D*wXKZiVkk?|~8uS)%7hypMtg4>0!2-4@S*I1T&;O#Bw3 zlWtF;oB$=Jp(w1PCRzX!ri}&IfEQQ+K8P(8gy9xwz!7MH78=0>AVC;}0nna-31SKt z5KbR+<(NW_$foK0l>bcAuE-FPg^DVQiXNcl0#f8)?l915@}z|KDB}xm&h- z#ln&cc7g^30Vv0S7X+awIN}wY0LM6i7Qn;2QUV$r;SE?J6e5cjSOFDYp$OuvLCN41 zLcu?2VG3AaBb@*j=%5sCfELI=4{+cXz<>#8p+Whj5e$9zzYfAPK0zgu0ARxlDGPN+o&crEFp%1}-6zU=GHE z5S#!#x`PWA!b13f4p3qj0geWMpcGgE6F8I)kRcRa0TbXu7etf^UV#su0TXCp4n~v< zUV#h*Arz*7Jwp`|N}(HfpaaH$7RE6Y{^1oG#SuW2510!U8UYn{02jDmrjUUXZoyd9 z;6+1WRh=UgI20Eg;TE282O920`G6BD02SVV0URMNGfO@Bg%B{oyF%eXTHqgW;T2F} zU({d~D*s?U8nakUz!7wTueg8~Wb7X};g<%5^a$~9W-shoFD_cI_((_~N9ByXtmR@R4P(I!BbCaTc~-Q>gs!A;x~3fa_#il#zz}$h(mWIE0MZ}D&Z@+Uc@POK9RD%< zRI}3#7LyF)tc-^-aL+R$C3vlPt&UgUz$^pDvpJtr0KZUV{zX9;Zb2Xx)|@; zut6q{;d<)emWl>~>fi>B26Re6dI~TxL0_M7sV)vCC~i%F>I;jb5k!DDe(K*6abJdxnj?@5Z{wS{Id0O?oGZlwd;e#eW0EuZ zQNB!Tp{7qD6Y+Ju&k^5k@mNctT#oEG35e+4!*QFu>Er*oR8 zd)lXe8mP}Nc|+QEWYLR{8maGwPkd(|hXlSZN%hE-k+jLBReG1f^dH8ws+YyoE~m;A zXquH%}n;o7d}`mXC5ulHK7`#P`xny&%d zuLGN~2ivd(8?g&Ju@4&qfy}E%kXjhgs^VhgD!YLK`dOG*s}c&plK%(td{-04TC~f0 zv}5O))4Fz&4+}FU7+E_H5$3h`P-9vfwr4xGXD>~CFoLImDa>~XEz+Bh*ga)&*Nvcn;MwEx_J}Ne^ zux5nJl(i2xBxIR>YMhf?`_K8t9R7`P7gHthd7K zk|r|T&;6ogr{BA@XUUlX5w&M0;4J1Sv=E(d+ZLxAxBv#>6941^{V=~NFk>8?V0&s} zbV@Uqs-})^oZ;r2HINJ$`6d=F;UL5vuQ?bwC6(7?lzHlryF51_`6g7?o~s+5yAO$| ztgHmAp|acg&H}S#nyNostWFIEfA_8ObP(QP3?AAtuArUv^jp3~3RFj@Z*H!3T&-I+ zCW_();Bi6jX{k&I$EH9HxZs2N1w&du3Z_8E@hCf}UEa9_S8C$j<}w&D%^kUpG1U;0oBBjO9&e2leCGs7@JIQ$g zU`d6djwwb}FxU~WV;vzuB#Iy_l2Qr?fm@2;4Q@gT*#E$X_t67AZS_PPn($qpjm)3N z!o*cj>rg!F?wpIj`nDi)GQ5BfD1qSz0ahks4vxkN=HQ(6bZO*t3g)l=mPVb7m$&jy zpyr!78F1rnjVoG!2?lE&>*ZC1g9?I84G3!n_9qDhVc4lzzP*hF-opu|L9fu43--l~ zU_mmjfaR~?CYXTLZy-2Ap@RM7Q(&zH_KFq?;R<-cLK7s-9Dx-O;tFhHe(r=8{P*Q& zAWt3RB}}y_XuxV_-so8X40wSPSRn~;0Tp(2Yk7eSOaK+8;UyAf3_Rk6x78460TTu* z6fhMP7Po`>$^=qXu&zKHhJzL|Q#I%vh+9w*tN$8_Upk)&BTNJO$+nuNt;MWZhL{h& zBqMSV3c&^`!A%jJ4Ca6gmOu#Irwx{%4d!49aDU=+4RmD4ec*_h<7u@i{bWpFq-Q{X zxm|M!fh(}$J=h3n|KSb5VA`=0`Z?i2gbC$e!MGsd#%Muuxj+|I0U5^Na9^QD?VbyG z0T${Y&zQ?!v7Q#3fELE!msnkC$p9dPVNx@Lg&|yg$S}dhixVGZs9uqI)(8_WU0ra| z5{62c6I{1=&2c2`*c)N5lCWS>24EnU2K{o2(#Sg&Ef84@S{_W)7fy^s0ots6LRUAB(U8ZwkbN|Gf>K8FUq zq{u%?gIW!u)grA;qqqA6goT9ykWDW&Fmy^ z6v4$6e5g?e8FT9MIln`umcrygyIAr4DQecCs*yz0u_$jK*$(v z{`1BSb|A6Y)W0l<{ z>0hQ=mKSDhS-4qeqAfuh6HF{|gcpUZh8mW%hNgxTO9(Q@6?0Hg$8Jv0ao-hc2uH>g zWJF6WY1Arbt*qBpi!Ep@sfk^KYFY>GxZ;)@?z!ZmYi_#iuIsM4@U|Q8yYkjc@4Dz> zC+-YlY3c7+YKkSWSTx*FF#o>;XE*P{_A-1g!!*ng@eDV#FhdIw??5rX6l2^%#ai-P zmYN%9EG~8}kla(i6&Gx=#5CBsL(CY@U_;FO9xPT*7ia9P#$(ao-VN@}@K4M!H#k;U zNdr-_#n+8YRtq1C^|Hn`udMJ6Ni3??T5{R-7GIrKHa4oMVrtl_sZvUIsc(U**gyX` z#wn?h!Tp!mt*Z5^XV1l2(-^A_;u@{5CGl);b4W3Vd`{T5L>mY~>+En>yg`N=f=lOl z;LnlfbXjDTZu;q{r>^?ythes^>#)a;dcR{)Yz=Ujz8imh=?E8(JOA^@@BUBq$~#{@S<{!UeDDKv-+RH|_x}9$z~4~BqK$^V>ieih zns=smuZ`)Yb4g~{Vsb}t1}CKg4EzFkH@;|fV%qbb_{^t1 z_sP$G`ZJNQLCe<~DaE&0a&L~TOehsvDQ;FVFPTI^W2mXBOij~(nLz|8vn3h}!lqZ+ z3MogoB~p@(w4~aa4hw_F$CkSEr7(@DOlL~dfHI1akf=-k5^6uRK`MYhJt(QlW*H}D zV3R~lD*vj^7D`cKk(};SNwf{-lSN!>Pvc5OPt6SlbX6)so4M1tTqdI%%_>%{s#?~eJNUshyqOJdFyYkEpu(`bu)#2lItg$1!y2v~>NHH^376Pl ztt&!V({fg2nzmBiESp1zNaOgySZ{Wb+doin)c-M2fA_oST-M^MM)-lR2#%F!uGLC6 zGI?8{al!+617+;Sl9ok?8HBgY(^cKb+3E<>tPF<*IWRDv4^b&CvfiuOj!1@nIdLs|Jv8rmNv7Ka9$tYw9poP6h-Ab z#NhfAsJ(3>kMH{rO2ap8L@irf-U2p(3V2%=OaiDM@d(ve5L;vrglD911u#ef3|BBU z84@mqE?fav{z=ZkuTbE^4z{Ck#I?pZZdHa+de}=Sb)I!oPe>7K8hnM3t{)hZ@%! zS2Nz~P7Der{XZn8d$|b3sH;-D95EJQ5TQ+ePO^46PWZy(_6A%S`LAbw5@85K7cT$D$0h%dom1f-3%bG>sIZDqqX3mSX=mHgLfC;aF3y#1A7EuasKnS#e3S58+p};IN z7cHcx2DxK%^+#;>M+R?z43OXim>>*w5D~NhC!7Ea0}%?ZpbLVKbN}{tfj@V9snbL1 zMNl_3MN?-#Lu6@5v`|2GU+gw%qatrp7gXBhQ~C#U(7*|+@CuIb z459E0k1!Ok@Cr%?Y{14k>7`pVcuA7Pdk>WP`Ey0*clEd1^)mBNzetu!4$XQ8DOvkQ>cveQ5^qPreLE3S=zXb z+}Mq~bORB{a#s)vv_No#zz3^<3jctDji3gwzzMX#1XR!n$WRKbP>7O8dlsmOz*c&E zfDCUy1$-b3jUWtD@CLkadL;-6yr3ctNp!UbgL$MrE7m?P=89@%WAjx%r=n=m^l1CD zZtE6=Q)F&Dh>G(jPDof_UG#)c=!@!9M(m_UsRnC?WriGuhHJQ!JV`ulc!4Y!LWH0U zg@_E77z)Vn4<>jLju;BK@DI3v3aH=+rGN@lP=69gY>Ie)i`Z*i02Cki3UvSxxUdTJ z$O*4dkZ(W|O4ov+xH_ZAVwiD}X~kc^Ctvzwbvc-Wo^^acNOk`Vg(-^0H{oO<0fuBy zCM&cOL8t^${}57-nJtf5aW`pkAtgFJnVFg?JUpk5Tu=zBzzU6U1yT_TgHw@qqS&=Mk$hZof(i#?)7NHwJPC+TKA?cAC*oYMVbFNxuTYNlkQh*?HQw)DHd2r zdt9k<##U@ax1*q!ZBhU*V&Mdu^NFN4d%X4rPJjwxfeayJbUbRL*_H%aW=G3OXf)Vd zzV~CA1$JtaS#;rpTlbd&Bz4QTH#+s50w$j0$r3hsjk4yZu|!WWDx-9&hW)|>GZ&6K zcZf&#hCVlQwE?Jo8lX;)J6a-!c?ya&*KD3A08AhZ0qUnLNOUvTB}{N$gC>`yC|vIq zWNfpM4fRlisTZ+$U)fovzlVxVHA-m;OEHO_aC)BF<&CsjtF~IJD3(0L^lWjYJqZ&q zCV&Y}@DBh01f}3JiR7!*lY5laof%q#d5MEI2z>v<_ZJ(w0X&vXm3D&+g^S*KKxh%3 zW8_NW39II6PI6kO>dKSjgJK1fL)UXV1mmvsswEiU2*mmi4A2PAFf&1;I`0~2vy-W6 zF_*lRR?rz=#kH^lR6xRq0@%7^e+fyns9&Kpq9iJ=?Gzm{d9JZaUFx~6B5QcLv^yp{ zXLD*ue`Eqy!UPo{l|*7Y#)PTNnoQu-oi_G+owc1z#F6jSDX|E#Vk(3`+lp8!N@J(7 ztK>lBYF$_Mu}~|gEH$!JTeUc}118W24M8`Jpa2qMLvh(CZn01wIjxmem%oLf)l{lm z=RdRPR(n~r7yGS#Q=(61lPsCHciW;YdXxVlYqfwIxGuBZSUXiU!rG8``#<)Ls?ksaEu@ z0EQM!P`XXVKx9w|g%FU5!!2{b8z09;lfy-^2DM}Kx3;^!?0Y*EQxjn^wLa-B^LSHj zagqyLV>vZ^;s#2MHhg3&X+rC6XB(I(X+yZorJaMiX7o27p(YBwU6s+P?oNoWiKX0x45N0+R$%VhC4sk_fLkyjMnnJC(KUR)C8&0sm@GJ#Rkh-V~jHr9hPA~(=mP1H2u<{K?QGMrOlbVaZ63wSs1iPd_0H=5zESgNm@gwP?wRw z&{YRufWfzX%Zo{#5_|+C6*}0$u@CgsU>(+CJ=S2onCtXc>V($obk=Om)_>*JYpvF4 z4cBlz*J@qY=XBR{o!9?uz1MjC*M1$?bS>C=J=lg_*ofWNhppI&{nmud*pThmi!IrW z9oL6_qUQwIb$!+E{BhN6%`HZ@|EtEUn2P;XxjJ}6cOkS}R|4*4ZXk+RVFynCRkw!l zB6?59*1-M@|9 z*j*poz1`Z)-Q6AD;qBey?c3ko+vSbk=WX8Qo!;#I-R>RV>n-2yJ>T|S-}nvR_pRUg zE#CX>-~CPA{5{|RPT&Gw;0S);z1;@G-3Dr)+{vBY_08LJKnE6H2YuiNf-p`9)M77& ziq2`dOC8(Yd{F&*ZlglE7OE=Eb*Af#K)3xO8|5@L_lwRqUe(9K=>6*UjoZji4{^_6|>Y}dbdQj?P-shX) zH@fFyqTR4M9K9b3z{bl=LL0Fe&~>4jS)a7Lu^i*jwHbZ>B7y+ug#hTr?jn4!2Y#^Z z%--zI{_OwI9_`XT?bKfF)_(2Sp6%Mc?cCn&-u~_29`52k?&MzX<__(_&fz}&(?xCP zsYujPN8)c4Tyl=Bo%@`^x9iS&v;Sq7hRNYG-sgJ|>;&KEWM1$HpYRI5@C@JZ4*&2F zAMp}D@f2V27Ju;=pYa;M@f_dr9{=$Tf7<}h&g~-?*^IN>ipmK4tV)D+e8JlGURS5g zt-&?7j>0NMW^ZW$>;X^kh*0JLAM`>$^h96uMt}53pY%$<^i1FMPXF{!AN5i{^;BQ= zR)6(azw}4A?z`9OsR~yiI<3(A=IDkAC@#m8w!C;wbrvf`dF<~bj|hYSV1yv|c25Wh zq*4F&w)Z>F_j=#=fdBV`pZA3C_k|z$hd=m+zxasH_=?~7kpK9SpZJvT_>~{|mp}QI zzxkNY`I_JPp#S-zpZTQk`K2HFr$72Xr0O^IH6BjG6iTh6d~QOeXf3Z)nakSQs-<1p zsR(tn7`x6n58B^0CB$F7Kh*j~ru@kd_Z^P>&;K>izx>XROww=t)DQjG-~8Io{L|0< z*YEw?|NZ1Y{^l?K=wJQm-~H;}{_Ow$;qU(O5C7Re|Mp-1_z(X1U;gWV{{Yd*kibTb z5EUFa&>%vB3kfPb_^@EagcBJ;ylAmv#Da|+ef$W?5hh2FNS-u#5|hc4BQdE&`O^R8 z%$F%^zLa^=Wlo+jQT*J1qC^BlI9ICNIWlESokvZMg!)vZNRS^rcElQy5LT`V9X9;x zm7~~>WEomK8@A)vwPo9;Ws4SUT(xq|&UI_|Enc{J>;9!1*stKeh4~)7n|QBcy^R46 zhHRMeW66sxJ0^^HFUO9KJXW1rlH}8)E}0%hidyAq)Jb9DB&}NMO%y?EyCB+>r|I1{ zdy|H$GjvsuoeNs^%+>1W)4y+DzJB7Nfj6ZoxYl?gjU}f_%V{Nrl(EJbZ&Z;+97)tMM;m?I zu_PFQB$CG;jSMnHB#RWX$0eU^^2jKY91=<;r)2WV8ATcm5-x))u)^O~>kX!zPU9`Z zGF^hOwtpr(uqQH&;_W~K739!AEPWi&M5_Em^3M|iol?*o2}N{JMGsw+$3z*0)X_$p zd{oj%DV@|%OE<;zQcXMM^ixp-CAH8}D+M*xQB7qP)m2?Rbx}b>8?C7@Ev$1VG3Tt) zOru^S&^O*7{HFvIGB|^iU3Fv1LNs&wFDd}LENLohh4eD2YpKna+b{pK?Y3HRz14PH zal-}o+ilNP*W7f=MR(nI$)%TFc-xKFU3vG_x8HpK#W&!42d;Nsdkf|lV1f^3*kFef z78qfFBW_sUYHQ_i!vSGp4NRj>>sVMZ1@vuBNFdyx*ncQ=?N^t7)z#N&HCA(Gn`yo| zXPkG|xo4h#_Bm*vhZeeMqK`H@X{47{x@o4Lb~;x2)xq+2xj9Zqrye z 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Π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 literal 0 HcmV?d00001 diff --git a/tyk-docs/assets/img/tib/profiles/tib-profile-creation.gif b/tyk-docs/assets/img/tib/profiles/tib-profile-creation.gif new file mode 100644 index 0000000000000000000000000000000000000000..d81e4c8d797b7e8491c07ac604a5ff1a1d944735 GIT binary patch literal 800173 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

hrjy}~6b+$}}l&c3x3daH7p@m)g>{p!aXmI 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≠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 z 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 z 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%0Ay&HMyo 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%0DlyUC7T}aVRV*xgkKiNFd?&- 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,x8l$ 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

    ;7^a$C8&Qa8Wn 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

    + +--- + + + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 1c2d000413..a907e1542b 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -4370,6 +4370,14 @@ menu: path: /tyk-configuration-reference/tyk-identity-broker-configuration category: Page show: True + - title: "Release Notes" + category: Directory + show: True + menu: + - title: "Tyk Identity Broker 1.6" + path: /product-stack/tyk-identity-broker/release-notes/tib-v1.6 + category: Page + show: True - title: "Tyk Helm Charts (Open Source)" category: Directory show: True From a3991108669fec7b4e611a2d0abca77ac9dd7ef7 Mon Sep 17 00:00:00 2001 From: Jay Deshmukh <35005482+jay-deshmukh@users.noreply.github.com> Date: Wed, 27 Nov 2024 12:32:24 +0530 Subject: [PATCH 05/39] New section & guide on the UI for Streams (#5721) Co-authored-by: Sharad Regoti --- .../assets/img/streams/api-details-page.png | Bin 0 -> 260223 bytes .../assets/img/streams/pol-details-page.png | Bin 0 -> 763043 bytes tyk-docs/assets/img/streams/selection.png | Bin 0 -> 204599 bytes .../assets/img/streams/sidebar-navigation.png | Bin 0 -> 184539 bytes .../img/streams/streams-and-events-wizard.png | Bin 0 -> 241877 bytes .../assets/img/streams/streams-option.png | Bin 0 -> 248464 bytes .../streams-configuration-using-ui.md | 92 ++++++++++++++++++ tyk-docs/data/menu.yaml | 4 + 8 files changed, 96 insertions(+) create mode 100644 tyk-docs/assets/img/streams/api-details-page.png create mode 100644 tyk-docs/assets/img/streams/pol-details-page.png create mode 100644 tyk-docs/assets/img/streams/selection.png create mode 100644 tyk-docs/assets/img/streams/sidebar-navigation.png create mode 100644 tyk-docs/assets/img/streams/streams-and-events-wizard.png create mode 100644 tyk-docs/assets/img/streams/streams-option.png create mode 100644 tyk-docs/content/product-stack/tyk-streaming/streams-configuration-using-ui.md diff --git a/tyk-docs/assets/img/streams/api-details-page.png b/tyk-docs/assets/img/streams/api-details-page.png new file mode 100644 index 0000000000000000000000000000000000000000..4fbfe73222364929aa79d35867ae295926822095 GIT binary patch literal 260223 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%0A-}>>t_a6AO9UAx+e+)SU2`WVs!sD0WBAy;k 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 Rs4C4sRUuab- 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

    HhdJ0tJ{1QOuo6-|w2{Hfgbu4&n^^^zfG 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/assets/img/streams/selection.png b/tyk-docs/assets/img/streams/selection.png new file mode 100644 index 0000000000000000000000000000000000000000..f08e54ce263fbecb172a66fc7edbd3944b2af8a2 GIT binary patch literal 204599 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 z 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 P;G?0c^9c9A`q}>hqu=k) literal 0 HcmV?d00001 diff --git a/tyk-docs/assets/img/streams/sidebar-navigation.png b/tyk-docs/assets/img/streams/sidebar-navigation.png new file mode 100644 index 0000000000000000000000000000000000000000..c6cc315d3a10e8ec72828126174d8e5a29bbd193 GIT binary patch literal 184539 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 )Jp{j2#3_{19@*DEghATae-C45J0J587?TMmp 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:?gz_Ux$PbKiLLIwU^Gg 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≺C&4 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�<{JXaLTCMCL-2eTO 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�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%0DXjTue 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

    s*2D(9&a$EaG0^`A?JR-c9mf> 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/content/product-stack/tyk-streaming/streams-configuration-using-ui.md b/tyk-docs/content/product-stack/tyk-streaming/streams-configuration-using-ui.md new file mode 100644 index 0000000000..10ee6de7ba --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-streaming/streams-configuration-using-ui.md @@ -0,0 +1,92 @@ +--- +title: Configure Streams API using dashboard +description: Guide to creating a streaming api using dashboard +tags: [ "streaming", "events", "event-driven architecture", "event-driven architectures", "kafka" ] +publishdate: 2024-11-15 +--- + +## Overview + +This page provides a detailed guide for creating, configuring, and securing a **Streams API** using the Dashboard UI. Follow these steps to set up real-time streaming with authentication and access control. + +## Prerequisites + +Before you begin, make sure you have: + +- Access to the Dashboard. +- Permissions to create APIs, policies, and keys. +- A clear understanding of your streaming input, processing, and output requirements. + +## Create a Streams API + +### Step 1: Define API Name and Type +1. Click on **Streams & Events** from the sidebar. This will open a form for creating the Streams API. + {{< img src="/img/streams/sidebar-navigation.png" alt="Sidebar Navigation" width="670px" height="500px" >}} + {{< img src="/img/streams/streams-and-events-wizard.png" alt="Streams & Events Wizard" width="670px" height="500px" >}} + +2. Enter a **unique API name**, select the **Streams** option, and click **Continue**. + {{< img src="/img/streams/streams-option.png" alt="Streams Option" width="670px" height="500px" >}} + +### Step 2: Configure API Inputs, Processors, and Outputs +1. On the next screen, configure your Streams API: + - **Input**: Select one or more data sources. + - **Processor**: Choose a single processor for handling the data. + - **Output**: Define one or more output destinations. + - For manual configuration, enable the **Advanced** checkbox to create a custom YAML template. + + {{< img src="/img/streams/selection.png" alt="Output Selection" width="670px" height="500px" >}} + +2. Click **Finish** to proceed to the API Details page. + +### Step 3: Review and Finalize API Details +1. On the **API Details page**, review the auto-generated YAML configuration. + {{< img src="/img/streams/api-details-page.png" alt="API Details Page" width="670px" height="500px" >}} + +2. Configure additional settings: + - **Authentication**: Choose an authentication mechanism (e.g., API Key, OAuth2). + - **Gateway Status**: Set to **Active** or **Disabled**. + - **Access**: Select **Internal** (restricted) or **External** (public) access. + +3. Click **Save API**. + + - The API is now created, and a unique **API ID** is assigned. + - The API will appear in the **APIs listing screen**. + +## Access the Streams API + +### Step 1: Create a Policy +1. Navigate to **Policies** in the sidebar and click **Add Policy**. + +2. Select the newly created Streams API. + +3. Configure the following: + - **Limits**: Define **Rate Limiting**, **Throttling**, and **Usage Quota**. + - **Configuration**: Provide a policy name and set a key expiration interval. + + {{< img src="/img/streams/pol-details-page.png" alt="Policy Details Page" width="670px" height="500px" >}} + +4. Click **Create Policy** to save. + +### Step 2: Generate a Key +1. Go to **Keys** from the sidebar and click **Add Key**. + +2. On the key creation page: + - Select the newly created policy under the **Access Rights** tab. + + - Review the applied limits for the API. + +3. Click **Create Key**. + + - A popup will display the **Key Hash** and **Key ID**. + + - Use the **Key ID** to access the protected Streams API. + +## Summary + +By completing the steps outlined above, you will have: + +- A functional **Streams API** with real-time data delivery capabilities. +- Policies and keys for authentication and access control. + +You can now use the **Key ID** to securely access the API for your applications. + diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index a907e1542b..a1544c779b 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -3842,6 +3842,10 @@ menu: path: /product-stack/tyk-streaming/key-concepts category: Page show: True + - title: "Configure Streams API using dashboard" + path: /product-stack/tyk-streaming/streams-configuration-using-ui + category: Page + show: True - title: "Quick Start" path: /product-stack/tyk-streaming/getting-started category: Page From 92542b41255887e5eee5dacc601afb3b97602eba Mon Sep 17 00:00:00 2001 From: Burak Sezer Date: Wed, 27 Nov 2024 10:31:19 +0300 Subject: [PATCH 06/39] [TT-13567] Review & update developer portal integration for streams (#5732) Co-authored-by: Sharad Regoti --- .../tyk-portal-classic/streams.md | 18 ++++++++++++++++++ tyk-docs/data/menu.yaml | 4 ++++ 2 files changed, 22 insertions(+) create mode 100644 tyk-docs/content/tyk-developer-portal/tyk-portal-classic/streams.md diff --git a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/streams.md b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/streams.md new file mode 100644 index 0000000000..6d05b43d64 --- /dev/null +++ b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/streams.md @@ -0,0 +1,18 @@ +--- +date: 2024-11-19T10:10:33Z +title: "Streams" +tags: [ "streaming", "events", "event-driven architecture", "event-driven architectures", "kafka" ] +description: "How to publish Tyk Streams APIs to your Tyk Developer Portal" +menu: + main: + parent: "Tyk Portal Classic" +weight: 12 +aliases: + - /tyk-developer-portal/streams +--- + +As of Tyk v5.7.0, you can now publish Tyk Streams APIs to the Tyk Developer Portal. + +## How To Set Up + +Simply create a [Tyk Streams API]({{< ref "product-stack/tyk-streaming/streams-configuration-using-ui#create-a-streams-api" >}}), create a [Policy]({{< ref "getting-started/create-security-policy#tutorial-create-a-security-policy-with-the-dashboard" >}}) which protects it, and then [publish it to the Developer Portal Catalog]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans#part-1---publish-an-api-product" >}}). \ No newline at end of file diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index a1544c779b..720846bfb5 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -3003,6 +3003,10 @@ menu: path: /tyk-developer-portal/tyk-portal-classic/graphql category: Page show: True + - title: "Streams with Classic Portal" + path: /tyk-developer-portal/tyk-portal-classic/streams + category: Page + show: True - title: "Monetising your APIs" path: /tyk-developer-portal/tyk-portal-classic/monetise category: Page From 61c83c946b09aa05d2ad2b05fd82793a13dd2ad0 Mon Sep 17 00:00:00 2001 From: andyo-tyk <99968932+andyo-tyk@users.noreply.github.com> Date: Wed, 27 Nov 2024 12:25:09 +0000 Subject: [PATCH 07/39] [DX-1774, TT-13333] Upstream (#5746) Co-authored-by: Master --- .../api-designer/upstream-basic-auth.png | Bin 0 -> 33098 bytes .../upstream-oauth-client-credentials.png | Bin 0 -> 62708 bytes .../upstream-oauth-password-grant.png | Bin 0 -> 69279 bytes .../api-management/upstream-authentication.md | 437 ++++++++++++++++++ tyk-docs/data/menu.yaml | 116 ++--- 5 files changed, 497 insertions(+), 56 deletions(-) create mode 100644 tyk-docs/assets/img/dashboard/api-designer/upstream-basic-auth.png create mode 100644 tyk-docs/assets/img/dashboard/api-designer/upstream-oauth-client-credentials.png create mode 100644 tyk-docs/assets/img/dashboard/api-designer/upstream-oauth-password-grant.png create mode 100644 tyk-docs/content/api-management/upstream-authentication.md diff --git a/tyk-docs/assets/img/dashboard/api-designer/upstream-basic-auth.png b/tyk-docs/assets/img/dashboard/api-designer/upstream-basic-auth.png new file mode 100644 index 0000000000000000000000000000000000000000..4c9795d902a75fb01468e41f5f5b8bd9d634b478 GIT binary patch literal 33098 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�lBfHv82sK*ZmI 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⁣!6ae8zH;$yK(nW*J)v_Q8|V-tx9-!9fDT(R8N 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 NG7|Dn3PC>me*h7P_aXoQ literal 0 HcmV?d00001 diff --git a/tyk-docs/content/api-management/upstream-authentication.md b/tyk-docs/content/api-management/upstream-authentication.md new file mode 100644 index 0000000000..978bfef28a --- /dev/null +++ b/tyk-docs/content/api-management/upstream-authentication.md @@ -0,0 +1,437 @@ +--- +title: Upstream Authentication +tags: + - security + - upstream authentication + - gateway to upstream + - OAuth + - mTLS + - Basic Auth +description: Authenticating Tyk Gateway with upstream services +date: "2024-11-18" +--- + +Tyk Gateway sits between your clients and your services, securely routing requests and responses. For each API proxy that you expose on Tyk, you can configure a range of different methods that clients must use to identify (authenticate) themselves to Tyk Gateway. These are described in detail in the [Client Authentication]({{< ref "api-management/authentication-authorization" >}}) section. + +In the same way as you use Client Authentication to securely confirm the identity of the API clients, your upstream services probably need to securely confirm the identity of their client - namely Tyk. This is where Tyk's flexible **Upstream Authentication** capability comes in. + +When using Tyk, you can choose from a range of authentication methods for each upstream API: +- [Mutual TLS]({{< ref "api-management/authentication-authorization#upstream-mtls" >}}) +- [Token-based authentication]({{< ref "#token-based-authentication" >}}) +- [Request signing using HMAC]({{< ref "api-management/authentication-authorization#upstream-hmac-request-signing" >}}) +- [Basic Authentication](#basic-authentication) +- [OAuth 2.0](#upstream-oauth-20) + - [OAuth 2.0 Client Credentials](#oauth-client-credentials) + - [OAuth 2.0 Password Grant](#oauth-resource-owner-password-credentials) + +{{< note success >}} +**Note** + +Note that OAuth 2.0 Password Grant is prohibited in the [OAuth 2.0 Security Best Practice](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics-13#section-3.4") but is supported by Tyk for use with legacy upstream services. +{{< /note >}} + + + +


    + +## Token-based authentication + +Token-based authentication (also referred to as Auth Token) is a method whereby the client is identified and authenticated by the server based on a key/token they present as a credential with each request. Typically the token is issued by the server to a specific client. + +The server determines how the key should be provided - typically in a request header, cookie or query parameter. + +Tyk supports [Auth Token]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to generate access *keys* for an Auth Token protected API as explained in the [documentation]({{< ref "api-management/authentication-authorization#enable-bearer-tokens-in-your-api-definition-with-the-dashboard" >}}). The client must then provide the *key* in the appropriate parameter for each request. + +If your **upstream service** is protected using Auth Token then similarly, Tyk will need to provide a token, issued by the upstream, in the request. + +### How to use Upstream Token-based Authentication +Typically Auth Token uses the `Authorization` header to pass the token in the request. + +Tyk's [Request Header Transform]({{< ref "transform-traffic/request-headers" >}}) middleware can be configured to add this header to the request prior to it being proxied to the upstream. To enhance security by restricting visibility of the access token, the key/token can be stored in a [key-value store]({{< ref "tyk-configuration-reference/kv-store#transformation-middleware" >}}), with only the reference included in the middleware configuration. + + + +
    + +## Basic Authentication + +Basic Authentication is a standard authentication mechanism implemented by HTTP servers, clients and web browsers. This makes it an excellent access control method for smaller APIs. + +An API request made using Basic Authentication will have an `Authorization` header that contains the client's credentials in the form: `Basic `. + +The `` are a base64 encoded concatenation of a client username and password, joined by a single colon `:`. + +Tyk supports Basic Authentication as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to create Basic Auth users, as explained in the [documentation]({{< ref "api-management/authentication-authorization#protect-your-api-with-basic-authentication" >}}). + +If your **upstream service** is protected using Basic Authentication then similarly, Tyk will need to provide user credentials, registered with the upstream, in the request. + +### How to use Upstream Basic Authentication + +If your upstream service requires that Tyk authenticates using Basic Authentication, you will first need to obtain a valid username and password from the server. To enhance security by restricting visibility of the credentials, these can be stored in a [key-value store]({{< ref "tyk-configuration-reference/kv-store#transformation-middleware" >}}), with only references included in the API definition. + +If the incoming request from the client already has credentials in the `Authorization` header, then Tyk will replace those with the basic auth credentials before proxying onwards to the upstream. + +Sometimes a non-standard upstream server might require the authentication credentials to be provided in a different header (i.e. not `Authorization`). With Tyk, you can easily configure a custom header to be used for the credentials if required. + +Upstream Basic Authentication is only supported by Tyk OAS APIs. If you are using Tyk Classic APIs, you could create the client credential offline and add the `Authorization` header using the [Request Header Transform]({{< ref "transform-traffic/request-headers" >}}) middleware. + +#### Configuring Upstream Basic Auth in the Tyk OAS API definition + +Upstream Authentication is configured per-API in the Tyk extension (`x-tyk-api-gateway`) within the Tyk OAS API definition by adding the `authentication` section within the `upstream` section. + +Set `upstream.authentication.enabled` to `true` to enable upstream authentication. + +For Basic Authentication, you will need to add the `basicAuth` section within `upstream.authentication`. + +This has the following parameters: +- `enabled` set this to `true` to enable upstream basic authentication +- `username` is the username to be used in the request *credentials* +- `password` is the password to be used in the request *credentials* +- `header.enabled` must be set to `true` if your upstream expects the *credentials* to be in a custom header, otherwise it can be omitted to use `Authorization` header +- `header.name` is the custom header to be used if `header.enabled` is set to `true` + +Note that if you use the [Tyk API Designer](#configuring-upstream-basic-auth-using-the-api-designer) in Tyk Dashboard it will always configure the `header` parameter - even if you are using the default `Authorization` value. + +For example: + +```json {hl_lines=["43-54"],linenos=true, linenostart=1} +{ + "info": { + "title": "example-upstream-basic-auth", + "version": "1.0.0" + }, + "openapi": "3.0.3", + "servers": [ + { + "url": "http://localhost:8181/example-upstream-basic-auth/" + } + ], + "security": [], + "paths": { + "/anything": { + "get": { + "operationId": "anythingget", + "responses": { + "200": { + "description": "" + } + } + } + } + }, + "components": { + "securitySchemes": {} + }, + "x-tyk-api-gateway": { + "info": { + "name": "example-upstream-basic-auth", + "state": { + "active": true + } + }, + "server": { + "listenPath": { + "strip": true, + "value": "/example-upstream-basic-auth/" + } + }, + "upstream": { + "url": "https://httpbin.org/basic-auth/myUsername/mySecret", + "authentication": { + "enabled": true, + "basicAuth": { + "password": "mySecret", + "username": "myUsername", + "enabled": true, + "header": { + "enabled": true, + "name": "Authorization" + } + } + } + } + } +} +``` + +In this example upstream authentication has been enabled (line 44). Requests will be proxied to the `GET /basic-auth` endpoint at httpbin.org using the credentials in lines 46 and 47 (username: myUsername, password: mySecret). These credentials will be combined, base64 encoded and then provided in the `Authorization` header, as required by the httpbin.org [documentation](https://httpbin.org/#/Auth/get_basic_auth__user___passwd_"). + +The configuration above is a complete and valid Tyk OAS API Definition that you can import into Tyk to try out the Upstream Basic Authentication feature. + +#### Configuring Upstream Basic Auth using the API Designer + +Upstream Authentication is configured from the **Settings** tab of the Tyk OAS API Designer, where there is a dedicated section within the **Upstream** section. + +Select **Basic Auth** from the choice in the **Authentication Method** drop-down, then you can provide the client credentials and header name. + +{{< img src="/img/dashboard/api-designer/upstream-basic-auth.png" alt="Tyk OAS API Designer showing Upstream Basic Auth configuration options" >}} + +
    + +## Upstream OAuth 2.0 + +OAuth 2.0 is an open standard authorization protocol that allows services to provide delegated and regulated access to their APIs; critically the user credentials are not shared with the upstream service, instead the client authenticates with a separate Authentication Server which issues a time-limited token that the client can then present to the upstream (Resource Server). The upstream service validates the token against the Authentication Server before granting access to the client. + +The Authentication Server (auth server) has the concept of an OAuth Client - this is equivalent to the client's account on the auth server. There are different ways that a client can authenticate with the auth server, each with their own advantages and disadvantages for different use cases. + +The auth server is often managed by a trusted third party Identity Provider (IdP) such as Okta or Auth0. + +Tyk supports OAuth 2.0 as a method for authenticating **clients** with the **Gateway** - you can use Tyk's own auth server functionality via the [Tyk OAuth 2.0]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) auth method or obtain the access token via a third party auth server and use the [JWT Auth]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. + +If your **upstream service** is protected using OAuth 2.0 then similarly, Tyk will need to obtain a valid access token to provide in the request to the upstream. + +Tyk supports two different OAuth grant types for connecting to upstream services: +- [Client credentials](#oauth-client-credentials) +- [Resource owner password credentials](#oauth-resource-owner-password-credentials) + +#### OAuth client credentials + +The client credentials grant relies upon the client providing an id and secret (the *client credentials*) to the auth server. These are checked against the list of OAuth Clients that it holds and, if there is a match, it will issue an access token that instructs the Resource Server which resources that client is authorized to access. For details on configuring Tyk to use Upstream Client Credentials see [below](#configuring-upstream-oauth-20-client-credentials-in-the-tyk-oas-api-definition). + +#### OAuth resource owner password credentials + +The resource owner password credentials grant (also known simply as **Password Grant**) is a flow where the client must provide both their own credentials (client Id and secret) and a username and password identifying the resource owner to the auth server to obtain an access token. Thus the (upstream) resource owner must share credentials directly with the client. This method is considered unsafe and is prohibited in the [OAuth 2.0 Security Best Practice](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics-13#section-3.4") but is supported by Tyk for use with legacy upstream services. For details on configuring Tyk to use Upstream Password Grant see [below](#configuring-upstream-oauth-20-password-grant-in-the-tyk-oas-api-definition). + +### How to use Upstream OAuth 2.0 for Authentication + +If your upstream service requires that Tyk authenticates via an OAuth auth server, you will first need to obtain credentials for the OAuth Client created in the auth server. You select which grant type to use and provide the required credentials in the API definition. + +To enhance security by restricting visibility of the credentials, these can be stored in a [key-value store]({{< ref "tyk-configuration-reference/kv-store#transformation-middleware" >}}), with only references included in the API definition. + +Some auth servers will return *additional metadata* with the access token (for example, the URL of the upstream server that should be addressed using the token if this can vary per client). Tyk can accommodate this using the optional `extraMetadata` field in the API definition. The response from the auth server will be parsed for any fields defined in `extraMetadata`; any matches will be saved to the request context where they can be accessed from other middleware (for our example, the [URL rewrite]({{< ref "transform-traffic/url-rewriting" >}}) middleware could be used to modify the upstream target URL). + +#### Configuring Upstream OAuth 2.0 Client Credentials in the Tyk OAS API definition + +Upstream Authentication is configured per-API in the Tyk extension (`x-tyk-api-gateway`) within the Tyk OAS API definition by adding the `authentication` section within the `upstream` section. + +Set `upstream.authentication.enabled` to `true` to enable upstream authentication. + +For OAuth 2.0 Client Credentials, you will need to add the `oauth` section within `upstream.authentication`. + +This has the following parameters: +- `enabled` set this to `true` to enable upstream OAuth authentication +- `allowedAuthorizeTypes` should include the value `clientCredentials` +- `clientCredentials` should be configured with: + - `tokenUrl` is the URL of the `/token` endpoint on the *auth server* + - `clientId` is the client ID to be provided to the *auth server* + - `clientSecret` is the client secret to be provided to the *auth server* + - `scopes` is an optional array of authorization scopes to be requested + - `extraMetadata` is an optional array of additional fields to be extracted from the *auth server* response + - `header.enabled` must be set to `true` if your upstream expects the credentials to be in a custom header, otherwise it can be omitted to use `Authorization` header + - `header.name` is the custom header to be used if `header.enabled` is set to `true` + +Note that if you use the [Tyk API Designer](#configuring-upstream-basic-auth-using-the-api-designer) in Tyk Dashboard it will always configure the `header` parameter - even if you are using the default `Authorization` value. + +For example: + +```json {hl_lines=["43-62"],linenos=true, linenostart=1} +{ + "info": { + "title": "example-upstream-client-credentials", + "version": "1.0.0" + }, + "openapi": "3.0.3", + "servers": [ + { + "url": "http://localhost:8181/example-upstream-client-credentials/" + } + ], + "security": [], + "paths": { + "/anything": { + "get": { + "operationId": "anythingget", + "responses": { + "200": { + "description": "" + } + } + } + } + }, + "components": { + "securitySchemes": {} + }, + "x-tyk-api-gateway": { + "info": { + "name": "example-upstream-client-credentials", + "state": { + "active": true + } + }, + "server": { + "listenPath": { + "strip": true, + "value": "/example-upstream-client-credentials/" + } + }, + "upstream": { + "url": "https://httpbin.org/", + "authentication": { + "enabled": true, + "oauth": { + "enabled": true, + "allowedAuthorizeTypes": [ + "clientCredentials" + ], + "clientCredentials": { + "header": { + "enabled": true, + "name": "Authorization" + }, + "tokenUrl": "http:///token", + "clientId": "client123", + "clientSecret": "secret123", + "scopes": ["scope1"], + "extraMetadata": ["instance_url"] + } + } + } + } + } +} +``` + +In this example upstream authentication has been enabled (line 44). The authentication method to be used is indicated in lines 46 (OAuth) and 48 (client credentials). When a request is made to the API, Tyk will request an access token from the *authorization server* at `http://` providing client credentials and the scope `scope1`. + +Tyk will parse the response from the *authorization server* for the key `instance_url`, storing any value found in the *request context* were it can be accessed by other middleware as `$tyk_context.instance_url` (note the rules on accessing [request context variables from middleware]({{< ref "context-variables" >}})). + +On receipt of an access token from the *authorization server*, Tyk will proxy the original request to the upstream server (`https://httpbin.org/`) passing the access token in the `Authorization` header. + +If you replace the `upstream.url` and *authorization server* details with valid details, then the configuration above is a complete and valid Tyk OAS API Definition that you can import into Tyk to try out the Upstream OAuth 2.0 Client Credentials feature. + +#### Configuring Upstream OAuth 2.0 Client Credentials using the API Designer + +Upstream Authentication is configured from the **Settings** tab of the Tyk OAS API Designer, where there is a dedicated section within the **Upstream** section. + +Select **OAuth** from the choice in the **Authentication Method** drop-down, then you can provide the header name, authorization server token URL and select **Client Credentials** to reveal the configuration for the credentials to be passed to the auth server. + +{{< img src="/img/dashboard/api-designer/upstream-oauth-client-credentials.png" alt="Tyk OAS API Designer showing Upstream OAuth client credentials configuration options" >}} + +#### Configuring Upstream OAuth 2.0 Password Grant in the Tyk OAS API definition + +Upstream Authentication is configured per-API in the Tyk extension (`x-tyk-api-gateway`) within the Tyk OAS API definition by adding the `authentication` section within the `upstream` section. + +Set `upstream.authentication.enabled` to `true` to enable upstream authentication. + +For OAuth 2.0 Resource Owner Password Credentials (*Password Grant*), you will need to add the `oauth` section within `upstream.authentication`. + +This has the following parameters: +- `enabled` set this to `true` to enable upstream OAuth authentication +- `allowedAuthorizeTypes` should include the value `password` +- `password` should be configured with: + - `tokenUrl` is the URL of the `/token` endpoint on the *auth server* + - `clientId` is the client ID to be provided to the *auth server* + - `clientSecret` is the client secret to be provided to the *auth server* + - `username` is the Resource Owner username to be provided to the *auth server* + - `password` is the Resource Owner password to be provided to the *auth server* + - `scopes` is an optional array of authorization scopes to be requested + - `extraMetadata` is an optional array of additional fields to be extracted from the *auth server* response + - `header.enabled` must be set to `true` if your upstream expects the credentials to be in a custom header, otherwise it can be omitted to use `Authorization` header + - `header.name` is the custom header to be used if `header.enabled` is set to `true` + +Note that if you use the [Tyk API Designer](#configuring-upstream-basic-auth-using-the-api-designer) in Tyk Dashboard it will always configure the `header` parameter - even if you are using the default `Authorization` value. + +For example: + +```json {hl_lines=["43-64"],linenos=true, linenostart=1} +{ + "info": { + "title": "example-upstream-password-grant", + "version": "1.0.0" + }, + "openapi": "3.0.3", + "servers": [ + { + "url": "http://localhost:8181/example-upstream-password-grant/" + } + ], + "security": [], + "paths": { + "/anything": { + "get": { + "operationId": "anythingget", + "responses": { + "200": { + "description": "" + } + } + } + } + }, + "components": { + "securitySchemes": {} + }, + "x-tyk-api-gateway": { + "info": { + "name": "example-upstream-password-grant", + "state": { + "active": true + } + }, + "server": { + "listenPath": { + "strip": true, + "value": "/example-upstream-password-grant/" + } + }, + "upstream": { + "url": "https://httpbin.org/", + "authentication": { + "enabled": true, + "oauth": { + "enabled": true, + "allowedAuthorizeTypes": [ + "password" + ], + "password": { + "header": { + "enabled": true, + "name": "Authorization" + }, + "tokenUrl": "http:///token", + "clientId": "client123", + "clientSecret": "secret123", + "username": "user123", + "password": "pass123", + "scopes": ["scope1"], + "extraMetadata": ["instance_url"] + } + } + } + } + } +} +``` + +In this example upstream authentication has been enabled (line 44). The authentication method to be used is indicated in lines 46 (OAuth) and 48 (password grant). When a request is made to the API, Tyk will request an access token from the *authorization server* at `http://` providing client credentials, resource owner credentials and the scope `scope1`. + +Tyk will parse the response from the *authorization server* for the key `instance_url`, storing any value found in the *request context* were it can be accessed by other middleware as `$tyk_context.instance_url` (note the rules on accessing [request context variables from middleware]({{< ref "context-variables" >}})). + +On receipt of an access token from the *authorization server*, Tyk will proxy the original request to the upstream server (`https://httpbin.org/`) passing the access token in the `Authorization` header. + +If you replace the `upstream.url` and *authorization server* details with valid details, then the configuration above is a complete and valid Tyk OAS API Definition that you can import into Tyk to try out the Upstream OAuth 2.0 Password Grant feature. + +#### Configuring Upstream OAuth 2.0 Password Grant using the API Designer + +Upstream Authentication is configured from the **Settings** tab of the Tyk OAS API Designer, where there is a dedicated section within the **Upstream** section. + +Select **OAuth** from the choice in the **Authentication Method** drop-down, then you can provide the header name, authorization server token URL and select **Resource Owner Password Credentials** to reveal the configuration for the credentials to be passed to the auth server. + +{{< img src="/img/dashboard/api-designer/upstream-oauth-password-grant.png" alt="Tyk OAS API Designer showing Upstream OAuth password grant configuration options" >}} diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 720846bfb5..8962cbe484 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -744,6 +744,10 @@ menu: path: /api-management/authentication-authorization category: Page show: True + - title: "Upstream Authentication" + path: /api-management/upstream-authentication + category: Page + show: False - title: "Automations" path: /api-management/automations category: Page @@ -1317,62 +1321,62 @@ menu: category: Directory show: True menu: - - title: "oauth" - category: page - show: False - path: /basic-config-and-security/security/authentication-authorization/ext-oauth-middleware - - title: "Security policies" - category: Directory - show: True - menu: - - title: "Overview" - path: /basic-config-and-security/security/security-policies - category: Page - show: True - - title: "Policies Guide" - path: /basic-config-and-security/security/security-policies/policies-guide - category: Page - show: True - - title: "Secure your APIs by Method and Path" - path: /security/security-policies/secure-apis-method-path - category: Page - show: True - - title: "Partitioned Policies" - path: /basic-config-and-security/security/security-policies/partitioned-policies - category: Page - show: True - - title: "Gateway" - path: /basic-config-and-security/security/gateway - category: Page - show: True - - title: "Key Hashing" - path: /basic-config-and-security/security/key-hashing - category: Page - show: True - - title: "Key Level Security" - path: /basic-config-and-security/security/key-level-security - category: Page - show: True - - title: "Tyk and OWASP Top Ten Threats" - path: /basic-config-and-security/security/owasp-top-ten - category: Page - show: True - - title: "TLS and SSL" - path: /basic-config-and-security/security/tls-and-ssl - category: Page - show: True - - title: "Certificate Pinning" - path: /security/certificate-pinning - category: Page - show: True - - title: "Blocking Client IPs" - path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting - category: Page - show: True - - title: "Allowing Client IPs" - path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting - category: Page - show: True + - title: "oauth" + category: page + show: False + path: /basic-config-and-security/security/authentication-authorization/ext-oauth-middleware + - title: "Security policies" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/security/security-policies + category: Page + show: True + - title: "Policies Guide" + path: /basic-config-and-security/security/security-policies/policies-guide + category: Page + show: True + - title: "Secure your APIs by Method and Path" + path: /security/security-policies/secure-apis-method-path + category: Page + show: True + - title: "Partitioned Policies" + path: /basic-config-and-security/security/security-policies/partitioned-policies + category: Page + show: True + - title: "Gateway" + path: /basic-config-and-security/security/gateway + category: Page + show: True + - title: "Key Hashing" + path: /basic-config-and-security/security/key-hashing + category: Page + show: True + - title: "Key Level Security" + path: /basic-config-and-security/security/key-level-security + category: Page + show: True + - title: "Tyk and OWASP Top Ten Threats" + path: /basic-config-and-security/security/owasp-top-ten + category: Page + show: True + - title: "TLS and SSL" + path: /basic-config-and-security/security/tls-and-ssl + category: Page + show: True + - title: "Certificate Pinning" + path: /security/certificate-pinning + category: Page + show: True + - title: "Blocking Client IPs" + path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting + category: Page + show: True + - title: "Allowing Client IPs" + path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting + category: Page + show: True - title: "Control and limit traffic" category: Directory show: True From e23d2d44e5b37a82b8777d654138e8142253abfe Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Fri, 29 Nov 2024 08:17:21 +0000 Subject: [PATCH 08/39] add bootstrapping details to Tyk Charts (#5764) bootstrapping details --- .../tyk-charts/tyk-control-plane-chart.md | 12 ++++++++++-- .../product-stack/tyk-charts/tyk-stack-chart.md | 10 +++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index af30ba8620..3a48d1aacf 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -101,7 +101,15 @@ To configure Tyk components, users can utilize both config files and [environmen ### Bootstrapping -By default, the chart executes a bootstrapping job immediately after installation. This process ensures the presence of a valid dashboard license and initializes key components such as tyk-dashboard, tyk-portal, and tyk-operator, enabling them for immediate use. +By default, the chart executes a [bootstrapping job](https://github.com/TykTechnologies/tyk-k8s-bootstrap) immediately after installation. This process ensures the presence of a valid dashboard license and initializes key components such as tyk-dashboard, tyk-portal, and tyk-operator, enabling them for immediate use. + +The bootstrapping job uses three distinct applications acting as Helm chart hooks: + +| **Bootstrapping Component** | **Description** | +|-----------------------------|-----------------| +| `bootstrap-pre-install` | - Runs as a pre-install hook.
    - Validates the Tyk Dashboard license key to ensure proper installation prerequisites. | +| `bootstrap-post-install` | - Executes post-installation.
    - Sets up an organization and admin user in the Tyk Dashboard.
    - Creates Kubernetes secrets required by Tyk Operator and Tyk Enterprise Portal.
    **Note**: If an existing organization and admin user are found in the database, the bootstrapping job will not set up a new organization and user. The Kubernetes secrets will not contain the expected Org ID or API key. Please update the Secret with existing credentials in this case. | +| `bootstrap-pre-delete` | - Functions as a pre-delete hook.
    - Cleans up resources, ensuring no residual configurations remain post-uninstallation. | Key Notes on Bootstrapping: @@ -756,7 +764,7 @@ tyk-mdcb: ### Tyk Bootstrap Configurations -To enable bootstrapping, set `global.components.bootstrap` to `true`. It would run [tyk-k8s-bootstrap](https://github.com/TykTechnologies/tyk-k8s-bootstrap) to bootstrap `tyk-control-plane` and to create Kubernetes secrets that can be utilized in Tyk Operator and Tyk Developer Portal. +To enable [bootstrapping](#bootstrapping), set `global.components.bootstrap` to `true`. It would run [tyk-k8s-bootstrap](https://github.com/TykTechnologies/tyk-k8s-bootstrap) to bootstrap `tyk-control-plane` and to create Kubernetes secrets that can be utilized in Tyk Operator and Tyk Developer Portal. {{< note success >}} **Note** diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index 6ae8be702c..09a510638f 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -102,6 +102,14 @@ To configure Tyk components, users can utilize both config files and [environmen By default, the chart executes a bootstrapping job immediately after installation. This process ensures the presence of a valid dashboard license and initializes key components such as tyk-dashboard, tyk-portal, and tyk-operator, enabling them for immediate use. +The bootstrapping job uses three distinct applications acting as Helm chart hooks: + +| **Bootstrapping Component** | **Description** | +|-----------------------------|-----------------| +| `bootstrap-pre-install` | - Runs as a pre-install hook.
    - Validates the Tyk Dashboard license key to ensure proper installation prerequisites. | +| `bootstrap-post-install` | - Executes post-installation.
    - Sets up an organization and admin user in the Tyk Dashboard.
    - Creates Kubernetes secrets required by Tyk Operator and Tyk Enterprise Portal.
    **Note**: If an existing organization and admin user are found in the database, the bootstrapping job will not set up a new organization and user. The Kubernetes secrets will not contain the expected Org ID or API key. Please update the Secret with existing credentials in this case. | +| `bootstrap-pre-delete` | - Functions as a pre-delete hook.
    - Cleans up resources, ensuring no residual configurations remain post-uninstallation. | + Key Notes on Bootstrapping: - Bootstrapping is triggered **only during** a `helm install` and does not run during a `helm upgrade`. @@ -779,7 +787,7 @@ Optional Steps, if needed: ### Tyk Bootstrap Configurations -To enable bootstrapping, set `global.components.bootstrap` to `true`. It would run [tyk-k8s-bootstrap](https://github.com/TykTechnologies/tyk-k8s-bootstrap) to bootstrap `tyk-stack` and to create Kubernetes secrets that can be utilized in Tyk Operator and Tyk Developer Portal. +To enable [bootstrapping](#bootstrapping), set `global.components.bootstrap` to `true`. It would run [tyk-k8s-bootstrap](https://github.com/TykTechnologies/tyk-k8s-bootstrap) to bootstrap `tyk-stack` and to create Kubernetes secrets that can be utilized in Tyk Operator and Tyk Developer Portal. {{< note success >}} **Note** From 94bbe457d5352367ff302fba79c2344bcde98865 Mon Sep 17 00:00:00 2001 From: DavidRollins <44652196+DavidRollins@users.noreply.github.com> Date: Sun, 1 Dec 2024 22:14:55 -0800 Subject: [PATCH 09/39] New IA - Overview pages (#5700) --- tyk-docs/content/plan-your-api-integration.md | 113 +++++++++ tyk-docs/content/tyk-components.md | 217 ++++++++++++++++++ tyk-docs/content/tyk-overview.md | 66 ++++++ tyk-docs/data/menu.yaml | 17 ++ 4 files changed, 413 insertions(+) create mode 100644 tyk-docs/content/plan-your-api-integration.md create mode 100644 tyk-docs/content/tyk-components.md create mode 100644 tyk-docs/content/tyk-overview.md diff --git a/tyk-docs/content/plan-your-api-integration.md b/tyk-docs/content/plan-your-api-integration.md new file mode 100644 index 0000000000..7f80aa89be --- /dev/null +++ b/tyk-docs/content/plan-your-api-integration.md @@ -0,0 +1,113 @@ +--- +date: 2017-03-08T18:15:30+13:00 +title: Plan Your API Integration +tags: ["Tyk API Management", "Getting Started", "Tutorials"] +description: "Plan your first API integration" +weight: 5 +menu: "main" +--- + +## Planning Your API Project: A Step-by-Step Guide with Tyk + +Creating and managing APIs is essential for modern applications, but if you’re new to APIs, this process might feel complex. This guide walks you through what APIs are, why they matter, and how to plan, design, deploy, and manage them—step by step—with support from Tyk’s API management platform. + +--- + +### 1. What is an API and Why Does It Matter? + +An **API (Application Programming Interface)** allows different software systems to talk to each other. Think of it as a bridge that lets applications, websites, or devices interact. For example, when you book a flight or make a payment online, you’re likely interacting with multiple APIs in the background. APIs help create a connected experience, enabling everything from mobile app development to system integrations and data sharing. + +**Why use an API?** +- **Efficiency**: APIs allow applications to reuse functionality (e.g., logins, data storage) instead of building it from scratch. +- **Flexibility**: They let you connect applications across platforms, such as web, mobile, and IoT. +- **Scalability**: APIs enable modular application development, making it easier to add or update features over time. + +--- + +### 2. Steps in Creating, Using, and Managing APIs + +Let’s break down the steps to design, develop, and manage APIs. By planning each stage, you can create APIs that are reliable, secure, and ready for growth. + +#### **Step 1: Define Your API’s Purpose and Scope** + +Begin by clarifying why you need an API and what you hope to achieve: +- **Who will use this API?** Identify whether the API is for internal teams, partners, or external developers. +- **What problem does it solve?** Define the API’s core functions and the kind of data it will handle. +- **What resources will be shared?** List out the specific data or services (like user profiles, inventory, or orders) that the API will expose. + +**Example:** Imagine you’re creating an API to provide real-time inventory data to an e-commerce app. You’ll need to determine which product details are exposed, who can access them, and any restrictions on data sharing. + +#### **Step 2: Design the API Structure** + +With your goals in mind, you’ll now design the API: +- **Choose the API Style**: Decide between REST (easy to implement, flexible) or GraphQL (lets clients query specific data they need). Tyk supports both, so choose based on the complexity and data needs. +- **Define Endpoints and Methods**: Identify the actions your API should allow (e.g., GET for retrieving data, POST for adding data). +- **Specify Data Models**: Define the format of data exchanged. For instance, will product data include details like price, description, and availability? + +**Security Consideration:** Plan how users will [authenticate]({{< ref "apim-best-practice/api-security-best-practice/authentication/#implement-appropriate-authentication" >}}). Will they use [tokens]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) or [OAuth]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) (for user-specific access)? Tyk offers tools to implement any of these methods effectively. + +#### **Step 3: Document the API** + +Documentation is critical for your API’s usability: +- **Explain each endpoint**: Describe what each endpoint does, its parameters, and any expected responses. +- **Provide examples**: Include sample requests and responses to clarify expected use. +- **Detail errors and edge cases**: Help users understand what happens if they make incorrect requests. + +With [Tyk’s developer portal]({{< ref "tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/#why-build-a-custom-developer-portal" >}}), you can automatically publish your API documentation, making it easier for developers to get started with your API. + +#### **Step 4: Develop and Test the API** + +Now you’re ready to build and [test]({{< ref "tyk-cloud/getting-started-tyk-cloud/test-api/#introduction" >}}): +- **Develop the Backend**: Write the code to implement your [API’s endpoints]({{< ref "advanced-configuration/transform-traffic/endpoint-designer" >}}) and integrate with your [database]({{< ref "tyk-dashboard/database-options/" >}}) or service layer. +- **Functional Testing**: Check each endpoint to ensure it behaves as expected and handles common errors. +- **Load Testing**: Simulate traffic to see how your API performs under different loads. Tyk offers tools to scale your API seamlessly and track performance metrics. + +#### **Step 5: Deploy and Secure the API** + +Once your API is tested, deploy it for use: +- **Deploying to Production**: Decide where your API will be hosted (cloud, on-premises, or a hybrid setup). Tyk supports multiple deployment environments, allowing you to easily transition between development, staging, and production. +- **Implement Security**: Protect your API with [authentication methods]({{< ref "basic-config-and-security" >}}), [rate limiting]({{< ref "getting-started/key-concepts/rate-limiting/#what-is-rate-limiting" >}}), and access controls to prevent unauthorized access and misuse. + +Tyk’s platform makes security implementation straightforward, offering features like OAuth 2.0, rate limiting, and custom policies to secure your API. + +#### **Step 6: Monitor and Maintain the API** + +An API isn’t a one-time setup; it needs regular monitoring and updates: +- **Monitor Performance**: Use [Tyk’s real-time analytics]({{< ref "tyk-pump" >}}) to track metrics like [latency]({{< ref "tyk-stack/tyk-pump/tyk-analytics-record-fields/#latency" >}}), error rates, and [usage]({{< ref "tyk-cloud/environments-&-deployments/monitoring-usage" >}}). This helps identify any bottlenecks or security risks. +- **Version and Update**: As you add new features, use [Tyk’s versioning]({{< ref "api-management/automations#api-versioning" >}}) to avoid breaking existing functionality. +- **Optimize and Scale**: With Tyk, you can adjust your rate limits, caching, and load balancing to handle higher volumes as needed. Optimizing is especially necessary as you [move your workload into production]({{< ref "planning-for-production/" >}}). + +--- + +### 3. How Tyk Supports Your API Lifecycle + +Tyk provides a comprehensive platform to help you through each stage of API development, from planning to deployment and beyond. + +#### **Design and Planning Phase** + +Tyk simplifies the early stages of API planning by providing: +- **Multi-API Support**: Tyk supports REST, GraphQL, and gRPC APIs, so you can choose the best style for your project. +- **Advanced Security Options**: Easily configure [authentication methods]({{< ref "basic-config-and-security" >}}) and [permissions]({{< ref "basic-config-and-security/security/dashboard/user-roles" >}}) to protect data and control access. +- **Developer Portals**: [Tyk’s developer portals]({{< ref "tyk-developer-portal/tyk-portal-classic" >}}) allow you to publish documentation and manage developer access, making it easier for teams or external partners to use your APIs. + +#### **Deployment and Configuration Phase** + +In this stage, Tyk streamlines deployment, whether on the cloud, on-premises, or hybrid: +- **Kubernetes Integration with Tyk Operator**: If your API runs on Kubernetes, [Tyk Operator]({{< ref "api-management/automations#what-is-tyk-operator" >}}) integrates with Kubernetes to help you manage deployments as Kubernetes resources. +- **Custom Domain Setup**: Configure custom domains to make your API URLs user-friendly and secure with SSL/TLS certificates. +- **Deployment Across Multiple Environments**: [Tyk’s gateways]({{< ref "tyk-oss-gateway" >}}) let you deploy, monitor, and secure multiple APIs from a single platform, so you can [manage environments]({{< ref "advanced-configuration/manage-multiple-environments" >}}) (development, staging, production) with ease. + +#### **Operations and Business as Usual (BAU) Phase** + +After deployment, Tyk offers robust tools to ensure smooth API operations and maintenance: +- **Real-Time Monitoring and Analytics**: [Tyk’s dashboard]({{< ref "tyk-dashboard" >}}) provides insights into API traffic, usage patterns, and error rates, enabling quick response to issues. +- **Dynamic Policy Management**: Set up and adjust security policies to control access and usage, such as [IP whitelisting]({{< ref "tyk-cloud/securing-your-apis/#3-ip-whitelisting" >}}), [request throttling]({{< ref "basic-config-and-security/control-limit-traffic/request-throttling" >}}), or [rate limiting]({{< ref "getting-started/key-concepts/rate-limiting/" >}}). +- **Plugin Support for Customization**: Use [Tyk’s plugin system]({{< ref "tyk-cloud/using-plugins/" >}}) to add custom functionality or [middleware]({{< ref "api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/" >}}), such as [custom authentication]({{< ref "tyk-cloud/configuration-options/using-plugins/python-custom-auth/" >}}) or [data transformations]({{< ref "advanced-configuration/transform-traffic" >}}). + +--- + +### 4. Next Steps with Tyk + +Building and managing APIs is a process of continuous improvement. With Tyk, you have a partner that provides the tools to plan, develop, deploy, and maintain APIs with efficiency and security. As you refine your API strategy, you can rely on Tyk’s capabilities to adapt and scale with you, ensuring that your APIs deliver value to users and meet evolving business needs. + +To get started in your Tyk journey, [get started on Tyk Cloud]({{< ref "tyk-cloud/getting-started" >}}) and learn about [Tyk components]({{< ref "tyk-components" >}}) to further understand how Tyk supports your specific goals. \ No newline at end of file diff --git a/tyk-docs/content/tyk-components.md b/tyk-docs/content/tyk-components.md new file mode 100644 index 0000000000..0f25ff7d3e --- /dev/null +++ b/tyk-docs/content/tyk-components.md @@ -0,0 +1,217 @@ +--- +date: 2017-03-08T18:15:30+13:00 +title: Tyk Components +tags: ["Tyk API Management", "Getting Started", "Tutorials"] +description: "Explaining Tyk Components" +weight: 5 +menu: "main" +--- + +# Understanding Tyk’s API Management Components + +Tyk offers a full ecosystem of API management tools, supporting every stage of the API lifecycle—from development and deployment to monitoring and scaling. With Tyk’s components, teams can seamlessly integrate, secure, and scale APIs across different environments, facilitating robust and reliable API operations. + +--- + +## Tyk’s API Management Components Overview + +Below is a detailed introduction to each of Tyk’s components and their individual roles within an API management strategy. For more information, follow the links provided to explore specific documentation on each component. + + +{{< grid >}} + +{{< badge title="Tyk Gateway" href="tyk-components#tyk-gateway" >}} The open-source core of Tyk that handles request routing, rate-limiting, and caching. {{< /badge >}} + +{{< badge title="Tyk Dashboard" href="tyk-components#tyk-dashboard" >}} A powerful interface for managing and monitoring APIs, users, and permissions. {{< /badge >}} + +{{< badge title="Tyk Enterprise Developer Portal" href="tyk-components#tyk-enterprise-developer-portal" >}} A customizable portal for enabling API discovery and user self-service. {{< /badge >}} + +{{< badge title="Tyk Multi Data Centre Bridge" href="tyk-components#tyk-multi-data-centre-bridge-mdcb" >}} Enables centralized API management across distributed data centers for global reach and compliance. {{< /badge >}} + +{{< badge title="Tyk Pump" href="tyk-components#tyk-pump" >}} Aggregates and exports API analytics from Gateway to enable insights and advanced monitoring. {{< /badge >}} + +{{< badge title="Tyk Operator" href="tyk-components#tyk-operator" >}} Integrates with Kubernetes for seamless API management within containerized environments. {{< /badge >}} + +{{< badge title="Tyk Streams" href="tyk-components#tyk-streams" >}} Enables real-time event streaming for APIs, ideal for push notifications and live data. {{< /badge >}} + +{{< badge title="Tyk Sync" href="tyk-components#tyk-sync" >}} Synchronizes API configurations across environments for consistency and streamlined deployments. {{< /badge >}} + +{{< badge title="Tyk Identity Broker" href="tyk-components#tyk-identity-broker" >}} Facilitates single sign-on (SSO) and integrates external identity providers with APIs. {{< /badge >}} + +{{< badge title="Tyk Helm Charts" href="tyk-components#tyk-helm-charts" >}} Provides templated configurations to simplify deploying Tyk in Kubernetes. {{< /badge >}} + +{{< badge title="Universal Data Graph" href="tyk-components#universal-data-graph-udg" >}} Combines multiple data sources into a unified API, supporting GraphQL and REST. {{< /badge >}} + +{{< /grid >}} + +--- + +### Tyk Gateway + +The **[Tyk Gateway]({{< ref "tyk-oss-gateway" >}})** is the core of Tyk’s API management platform. This open-source, high-performance API gateway handles crucial API tasks: + +- **Traffic Management**: Routes requests to backend services, balancing loads and ensuring high availability. +- **Security and Authentication**: Supports OAuth2, JWT, OpenID Connect, and other protocols to secure APIs. +- **Rate Limiting and Quotas**: Controls traffic volume to prevent abuse and ensure fair usage. +- **Analytics**: Tracks API usage patterns and provides insights into performance and engagement. + +The Gateway is the primary component managing and securing all API interactions, making it an essential part of any API management strategy. + +--- + +### Tyk Dashboard + +The **[Tyk Dashboard]({{< ref "tyk-dashboard" >}})** is a GUI interface for managing, monitoring, and configuring APIs. It integrates with the Tyk Gateway and offers centralized control for all API operations: + +- **Design APIs**: Set up endpoints, security policies, and access controls. +- **Monitor API Usage**: View real-time analytics to track API performance and identify trends. +- **User and Team Management**: Configure multi-tenancy and manage team-based access control. + +The Tyk Dashboard simplifies API management, enabling teams to effectively administer API policies and monitor activity. + +--- + +### Tyk Enterprise Developer Portal + +The **[Tyk Developer Portal]({{< ref "tyk-developer-portal" >}})** provides a self-service interface for developers to access and interact with APIs. Key functionalities include: + +- **API Documentation**: Supplies developers with detailed API documentation, making integration easier. +- **Self-Service Access**: Developers can register, request API keys, and manage subscriptions independently. +- **Community Engagement**: Features like FAQs and forums foster a collaborative developer community. + +The Developer Portal streamlines API adoption by offering developers a comprehensive platform for API discovery and self-service. + +--- + +### Tyk Multi Data Centre Bridge (MDCB) + +The **[Tyk Multi Data Centre Bridge (MDCB)]({{< ref "tyk-multi-data-centre" >}})** enables centralized control over API configurations across distributed regions or data centers. It’s ideal for global API infrastructure, offering: + +- **Centralized Management**: Controls API configurations across different regions from a single interface. +- **Data Isolation**: Supports regulatory compliance by keeping data within specified regions. +- **Enhanced Resilience**: Ensures high availability for distributed API deployments. + +MDCB is designed for organizations with extensive geographic reach, supporting both global distribution and local compliance. + +--- + +### Tyk Pump + +**[Tyk Pump]({{< ref "tyk-pump" >}})** is a lightweight tool that aggregates API analytics from the Tyk Gateway and exports them to various storage systems for analysis: + +- **Data Collection**: Continuously gathers real-time API analytics. +- **Data Export**: Integrates with multiple backends like Splunk, Prometheus, ElasticSearch, and others. +- **Actionable Insights**: Enables advanced monitoring and analysis for data-driven decision-making. + +With Tyk Pump, you can leverage powerful insights into API usage, helping teams optimize API performance and improve user experience. + +--- + +### Tyk Operator + +The **[Tyk Operator]({{< ref "api-management/automations#what-is-tyk-operator" >}})** is a Kubernetes-native API management solution, allowing teams to deploy and manage APIs as Kubernetes resources: + +- **Kubernetes Integration**: Simplifies API management within Kubernetes environments. +- **Declarative Configuration**: Supports automated, scalable, and resilient API deployments. +- **CI/CD Integration**: Ideal for development teams with continuous integration and deployment workflows. + +For teams operating within Kubernetes, Tyk Operator integrates seamlessly, providing a consistent way to manage API resources. + +--- + +### Tyk Streams + +**[Tyk Streams]({{< ref "product-stack/tyk-streaming/overview" >}})** is Tyk’s real-time data streaming tool for APIs, enabling applications to receive data as events happen: + +- **Real-Time Data**: Pushes live data to clients in real time. +- **Event-Driven Architecture**: Triggers immediate responses to data changes. +- **Scalability**: Manages high-frequency data flows, scaling to meet demand. + +Tyk Streams is ideal for use cases like financial services, IoT, and live applications requiring rapid data updates. + +--- + +### Tyk Sync + +**[Tyk Sync]({{< ref "api-management/automations#synchronize-tyk-environment-with-github-repository" >}})** facilitates configuration synchronization, helping teams manage API configurations across different environments: + +- **Configuration Consistency**: Synchronizes API settings across development, staging, and production. +- **DevOps Compatibility**: Integrates with CI/CD pipelines for seamless deployment. +- **Backup and Restore**: Maintains backups of API configurations to prevent data loss. + +Tyk Sync ensures that API configurations are consistent and reliable across environments, supporting streamlined operations and effective change management. + +--- + +### Tyk Identity Broker + +The **[Tyk Identity Broker]({{< ref "tyk-identity-broker" >}})** simplifies authentication by connecting APIs with external identity providers (IDPs), supporting single sign-on (SSO) capabilities: + +- **Authentication Integration**: Works with IDPs like Google, Microsoft, and LDAP. +- **Secure Access Control**: Manages API access for verified users. +- **Token-Based Access**: Issues tokens for authenticated users, enabling controlled API access. + +The Identity Broker centralizes identity and access management, making it easier to secure APIs and manage user authentication across multiple systems. + +--- + +### Tyk Helm Charts + +**[Tyk Helm Charts]({{< ref "product-stack/tyk-charts/overview" >}})** provide templated configurations for deploying Tyk components in Kubernetes, enabling efficient setup and management: + +- **Efficient Deployment**: Simplifies installation and configuration within Kubernetes clusters. +- **Version Control**: Manages versioning and consistency across deployments. +- **Standardization**: Ensures uniform setups across environments, improving reliability. + +Tyk Helm Charts are particularly useful for teams deploying Tyk in Kubernetes, streamlining installation and ensuring consistent configurations. + +--- + +### Universal Data Graph (UDG) + +The **[Universal Data Graph (UDG)]({{< ref "universal-data-graph" >}})** provides a single API endpoint for accessing data from multiple sources using GraphQL, offering: + +- **Data Aggregation**: Combines data from disparate sources into a unified API. +- **Customizable Data Access**: Clients can query only the data they need. +- **Secure Data Management**: Implements access controls to manage data permissions. + +The UDG simplifies complex data interactions, enabling developers to work with a unified GraphQL endpoint for various backend services. + +--- + +## How Tyk’s Components Work Together + +Tyk’s components create a unified API management ecosystem, covering all aspects of API lifecycle management: + +- **Traffic and Security**: The Tyk Gateway acts as the first line of defense, handling traffic and enforcing security protocols. +- **Configuration and Deployment**: Tyk Dashboard, Tyk Operator, and Tyk Sync provide tools for managing, deploying, and scaling APIs. +- **Developer Experience**: The Tyk Developer Portal and Identity Broker enhances the developer experience, promoting API discovery and user engagement. +- **Global Reach and Resilience**: MDCB ensures consistent API configurations and high availability across regions. +- **Data and Insights**: Tyk Gateway's native support for OpenTelemetry, combined with Tyk Pump, enables real-time monitoring and analytics. +- **Unified Access**: UDG and Tyk Streams unify API Management by enabling seamless, multi-protocol data integration and delivery. +- **Kubernetes Deployment**: Tyk Helm Charts simplifies deployment of Tyk on Kubernetes. + +# Conclusion + +Now that you’ve been introduced to the Tyk suite, you have a strong foundation in understanding how each component fits into a complete API management ecosystem. Whether you’re ready to start deploying APIs, securing them, or scaling across multiple environments, Tyk provides the tools and flexibility to bring your API projects to life. + +## Where to Go Next + +1. **[Getting Started with Tyk Gateway]({{< ref "tyk-oss-gateway/" >}})** + Start by setting up the Tyk Gateway, where you’ll configure your first API and explore the foundational capabilities of traffic management, security, and monitoring. + +2. **[Set Up and Configure the Tyk Dashboard]({{< ref "tyk-dashboard" >}})** + Dive into the Tyk Dashboard to manage your API lifecycle from a user-friendly interface, allowing you to monitor, configure, and scale your APIs with ease. + +3. **[Explore API Security]({{< ref "api-management/authentication-authorization" >}})** + Secure your APIs with Tyk’s robust authentication options like OAuth2, JWT, and HMAC, and learn how to apply rate limiting and quota policies to protect your resources. + +4. **[Implement Multi-Region Deployments with MDCB]({{< ref "tyk-multi-data-centre" >}})** + If your infrastructure requires high availability and global reach, explore Tyk’s Multi Data Centre Bridge to deploy and manage APIs across different regions. + +5. **[Use Tyk Sync for Consistent Configuration Management]({{< ref "api-management/automations#synchronize-tyk-environment-with-github-repository" >}})** + For development teams working across environments, Tyk Sync offers a way to manage API configurations consistently, supporting CI/CD workflows and minimizing deployment errors. + +6. **[Explore Tyk Developer Portal for Enhanced Developer Experience]({{< ref "tyk-developer-portal" >}})** + Provide external and internal developers with easy access to your APIs by setting up the Developer Portal, where they can find documentation, request access, and get started quickly. + diff --git a/tyk-docs/content/tyk-overview.md b/tyk-docs/content/tyk-overview.md new file mode 100644 index 0000000000..62f3c86721 --- /dev/null +++ b/tyk-docs/content/tyk-overview.md @@ -0,0 +1,66 @@ +--- +date: 2017-03-08T18:15:30+13:00 +title: Tyk Overview +tags: ["Tyk API Management", "Getting Started", "Tutorials"] +description: "Explaining Tyk at a high level" +weight: 5 +menu: "main" +--- + +APIs are central to enabling software integration, data exchange, and automation. However, as organizations scale their API ecosystems, they face mounting challenges around security, reliability, and performance. Tyk exists to simplify and strengthen this process. With a focus on efficient, secure, and scalable API management, Tyk provides a powerful solution for companies looking to streamline API operations, enforce robust security standards, and gain deep visibility into their API usage. + +## Why Tyk Exists: The Need for API Management +The demand for APIs has exploded over the last decade, with companies using them to enable everything from mobile apps and IoT devices to microservices architectures and third-party integrations. But with this growth come significant challenges: + +- **Security Risks**: Exposing services through APIs introduces new security vulnerabilities that need constant management and monitoring. +- **Scalability**: As usage grows, APIs need to be resilient, able to handle high traffic, and scalable across global regions. +- **Complexity in Integration**: Integrating various backend services, identity providers, and front-end applications can become an overwhelming task. +- **Monitoring and Performance**: API performance monitoring, traffic management, and analytics are crucial to optimize API usage and provide reliable service. + +Tyk exists to address these challenges by providing an API management platform that’s secure, scalable, flexible, and easy to use. With Tyk, organizations can confidently manage the entire lifecycle of their APIs, from initial design to deployment and ongoing monitoring. + +## What Problem Does Tyk Solve? + +Tyk is designed to solve several critical issues that organizations face with APIs: + +1. **Unified API Management** + Tyk centralizes all aspects of API management, offering tools for routing, load balancing, security, and performance. This unified approach helps teams streamline API operations and reduce operational overhead. + +2. **Enhanced Security and Compliance** + APIs are vulnerable to numerous security threats. Tyk addresses these concerns by supporting a wide array of security protocols, including OAuth2.0, JWT, HMAC, and OpenID Connect. Additionally, Tyk enables organizations to enforce fine-grained access control policies, rate limiting, and quotas to safeguard API access. + +3. **Scalability for High-Volume Traffic** + Tyk provides a high-performance API gateway that can handle substantial traffic loads while maintaining low latency, ensuring that APIs can scale as demand increases. Tyk’s Multi Data Centre Bridge (MDCB) further enhances scalability by distributing traffic across multiple regions, providing high availability and low latency globally. + +4. **Seamless Integration and Flexibility** + Tyk’s open-source architecture and compatibility with Kubernetes, Docker, and cloud platforms make it easy to integrate within existing infrastructures. With Tyk, teams can operate in hybrid or multi-cloud environments, deploy APIs as Kubernetes-native resources, and leverage CI/CD pipelines for seamless updates. + +5. **Developer and Consumer Enablement** + Through the Tyk Developer Portal, developers can discover and access APIs easily, enabling faster adoption and integration. With detailed documentation, developer self-service features, and API analytics, Tyk empowers both API providers and consumers to make the most of their API ecosystem. + +## How Tyk’s Components Work Together + +Tyk offers a comprehensive suite of components designed to address every aspect of the API lifecycle: + +- **[Tyk Gateway]({{< ref "tyk-oss-gateway" >}})**: The core of Tyk’s platform, providing high-performance API routing, traffic management, and security. +- **[Tyk Dashboard]({{< ref "tyk-dashboard" >}})**: A graphical control panel that simplifies API management, configuration, and monitoring. +- **[Tyk Developer Portal]({{< ref "tyk-developer-portal" >}})**: A self-service portal that enables developers to access, understand, and integrate with APIs. +- **[Tyk Multi Data Centre Bridge (MDCB)]({{< ref "tyk-multi-data-centre" >}})**: Allows centralized control over APIs distributed across multiple data centers or cloud regions. +- **[Tyk Pump]({{< ref "tyk-pump" >}})**: Collects and streams analytics from the Tyk Gateway to various storage backends for performance monitoring and reporting. +- **[Tyk Operator]({{< ref "api-management/automations#what-is-tyk-operator" >}})**: Kubernetes-native API management that allows teams to manage APIs as Kubernetes resources. +- **[Tyk Streams]({{< ref "product-stack/tyk-streaming/overview" >}})**: Enables real-time data streaming and push-based communication for applications requiring live data. +- **[Tyk Sync]({{< ref "api-management/automations#synchronize-tyk-environment-with-github-repository" >}})**: Synchronizes API configurations across environments, supporting DevOps practices and CI/CD workflows. +- **[Tyk Identity Broker]({{< ref "tyk-identity-broker" >}})**: Integrates with external identity providers for single sign-on (SSO) and centralized identity management. +- **[Tyk Helm Charts]({{< ref "product-stack/tyk-charts/overview" >}})**: Simplifies the deployment of Tyk components within Kubernetes environments. +- **[Universal Data Graph]({{< ref "universal-data-graph" >}})**: Provides a single GraphQL endpoint that aggregates data from multiple sources, simplifying access to complex data. + +Each component plays a specific role in managing the API lifecycle, from initial deployment and configuration to real-time data streaming and developer access. Together, they create a cohesive API management ecosystem that can handle the unique challenges of production environments. + +You can learn more about the components that make up Tyk, [here]({{< ref "tyk-components" >}}). + +## Why Use Tyk? + +In summary, Tyk offers a complete API management solution designed for modern, production-grade API operations. With its open-source core, robust security options, high performance, and flexible deployment models, Tyk provides everything an organization needs to manage, scale, and secure their APIs. + +Whether you’re a startup looking to build a simple API or a global enterprise deploying complex, multi-region architectures, Tyk has the tools to support your growth at every stage. If you face problems with scaling your solutions, learn more about how Tyk can support you by [getting started with Tyk Cloud]({{< ref "tyk-cloud/getting-started" >}}). + diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 8962cbe484..a0665e19a4 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -5,6 +5,23 @@ menu: path: / category: Label show: True + - title: "Overview" + path: / + category: Label + show: True + menu: + - title: "Tyk Overview" + path: /tyk-overview + category: Page + show: True + - title: "Tyk Components" + path: /tyk-components + category: Page + show: True + - title: "Plan Your API Integration" + path: /plan-your-api-integration + category: Page + show: True - title: "Getting Started" path: / category: Label From d04a4db36d9b999cf7ae9b0def9293c584ad588d Mon Sep 17 00:00:00 2001 From: Master Date: Mon, 2 Dec 2024 14:21:52 +0530 Subject: [PATCH 10/39] New IA: Security Best Practices (#5701) --- .../api-management/security-best-practices.md | 407 ++++++++++++++++++ .../authentication.md | 24 -- .../authorisation-levels.md | 70 --- .../authorisation.md | 60 --- .../configuration.md | 28 -- .../api-security-best-practice/governance.md | 18 - .../api-security-best-practice/overview.md | 14 - .../resource-consumption.md | 24 -- .../content/apim-best-practice/overview.md | 30 -- tyk-docs/content/basic-config-and-security.md | 2 +- .../basic-config-and-security/security.md | 57 --- .../security/owasp-top-ten.md | 127 ------ tyk-docs/content/plan-your-api-integration.md | 2 +- .../shared/portal-developer-analytics.md | 2 +- .../managing-apis.md | 2 +- tyk-docs/data/alias.json | 11 + tyk-docs/data/menu.yaml | 74 +--- 17 files changed, 426 insertions(+), 526 deletions(-) create mode 100644 tyk-docs/content/api-management/security-best-practices.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/authentication.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation-levels.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/configuration.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/governance.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/overview.md delete mode 100644 tyk-docs/content/apim-best-practice/api-security-best-practice/resource-consumption.md delete mode 100644 tyk-docs/content/apim-best-practice/overview.md delete mode 100755 tyk-docs/content/basic-config-and-security/security.md delete mode 100644 tyk-docs/content/basic-config-and-security/security/owasp-top-ten.md diff --git a/tyk-docs/content/api-management/security-best-practices.md b/tyk-docs/content/api-management/security-best-practices.md new file mode 100644 index 0000000000..fe4204fbd4 --- /dev/null +++ b/tyk-docs/content/api-management/security-best-practices.md @@ -0,0 +1,407 @@ +--- +title: Security Best Practices new +description: "Guide on API management and security best practices, including authentication, authorization, resource protection, governance, and OWASP threat mitigation with Tyk." +tags: ["OWASP", "Security", "Top Ten", "API Management best practice", "API Security", "Authentication", "Security", "Configuration", "SSL", "Certificates", "Authentication", "Authorization", "API security", "API Gateway Security"] +aliases: + - /advanced-configuration/integrate/api-auth-mode/json-web-tokens + - /security/ + - /apim-best-practice/overview + - /apim-best-practice/api-security-best-practice/overview + - /apim-best-practice/api-security-best-practice/authentication + - /apim-best-practice/api-security-best-practice/authorisation + - /apim-best-practice/api-security-best-practice/authorisation-levels + - /apim-best-practice/api-security-best-practice/resource-consumption + - /apim-best-practice/api-security-best-practice/configuration + - /apim-best-practice/api-security-best-practice/governance + - /basic-config-and-security/security + - /basic-config-and-security/security/owasp-top-ten +--- + +## Overview + +This section serves as a detailed resource for understanding key concepts and tools related to API security. It provides explanations of critical practices such as authentication, authorization, and governance, offering insights into how these concepts work and why they matter. Whether you're looking to mitigate threats identified by the [OWASP API Security Top 10](https://owasp.org/API-Security/editions/2023/en/0x00-header/) or to configure your APIs for better resilience, this page breaks down the essentials. + +Two of the most prevalent topics are [authentication]({{< ref "#authentication" >}}) and [authorization]({{< ref "#authorization" >}}), which occupy four of the top five positions. These are critical elements of API security, which verify the identity of API clients and control what they’re able to do. Alongside these are a number of other beneficial topics that are also within the remit of API management, all of which will be covered in this section. These include: + +- [Governance]({{< ref "#governing-apis-effectively" >}}) +- [Configuration]({{< ref "#configuration-best-practices" >}}) +- [Resource Consumption]({{< ref "#managing-api-resources" >}}) + +## Mitigating The Top 10 OWASP Threats + +The Open Web Application Security Project (OWASP) provides a top ten threat awareness document compiled by security experts. For more details on the OWASP project visit [https://www.owasp.org](https://www.owasp.org). Below are the top ten threats and how Tyk guards against them. For further details please visit our [blog](https://tyk.io/blog/res-owasp-api-security-intro/) + +##### 1 - Broken Object Level Authorization (BOLA) + +Broken Object Level Authorization (BOLA) can occur due to a lack of access control to API resources. This vulnerability allows attackers to manipulate or bypass authorization mechanisms, typically by tampering with resource identifiers to gain unauthorized access to specific resources or data. BOLA is a critical security concern as it can lead to data breaches and unauthorized actions within a system. + +It is the responsibility of the API to handle this form of attack since it can access and understand the data needed to make authorization decisions on individual objects within the application database. + +##### 2 - Broken Authentication + +Authentication is a vital aspect of API security. Failure to do so, as noted by OWASP, leads to *Broken Authentication* posing a significant risk to both API providers and data. + +Tyk provides the following features and authentication mechanisms: +- Prioritize secure methods, like [mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}), over [basic authentication]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}) wherever feasible. +- API owners can integrate external Identity Providers (IdPs) supporting methods like [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}), [OAuth 2.0]({{< ref "/api-management/authentication-authorization#use-authorization-code-grant" >}}) or [JSON Web Tokens]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). +- [Single Sign-On]({{< ref "advanced-configuration/integrate/sso" >}}) can be used for a centralized and trusted authentication source. API operators can choose from common authentication methods such as OAuth 2.0, LDAP, and SAML. +- [Dynamic Client Registration]({{< ref "tyk-developer-portal/tyk-portal-classic/dynamic-client-registration#oauth-20-dynamic-client-registration-protocol-dcr" >}}), enables third-party authorization servers to issue client credentials via the Tyk Developer Portal. This streamlines Identity Management, eliminating the need to manage credentials across multiple systems. +- Tyk's default authentication setup disallows credentials in URLs, reducing the risk of inadvertent exposure through backend logs. +- Tyk Gateway can be configured to enforce a [minimum TLS version]({{< ref "basic-config-and-security/security/tls-and-ssl#values-for-tls-versions" >}}), enhancing security by blocking outdated and insecure TLS versions. + +##### 3 - Broken Object Property Level Authorization (BOPLA) + +REST APIs provide endpoints that return all properties of an object in the reponse, some of which could contain sensitive data. Conversely, GraphQL API requests allow the clients to specify which properties of an object should be retrieved. + +From a REST API perspespective, it is the responsibility of the API to ensure that the correct data is retrieved. The Gateway can provide additional security measures as follows: +- [Body transformation plugins]({{< ref "advanced-configuration/transform-traffic/request-method-transform" >}}) can be used to remove sensitive data from the response if the API is unable to do so itself. +- [JSON Schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) to validate that an incoming data payload meets a defined schema. Payloads that do not adhere to the schema are rejected. + +For GraphQL APIs, the gateway can be used to define the GraphQL schemas, limiting which properties of an object are queryable. Furthermore, access can be controlled to specific properties by configuring [field-based permissions]({{< ref "graphql/field-based-permissions" >}}). Subsequently, the visiblity of a schema's properties can be controlled for different consumers of the GraphQL API. + + +##### 4 - Unrestricted Resource Consumption + +APIs can become overwhelmed if the resources upon which they rely are fully consumed. In such situations, an API can no longer operate, and will no longer be able to service requests, or potentially even be unable to complete those currently in progress. + +As an APIM product, Tyk Gateway can be configured to use the following out-of-the-box functionality when handling API traffic for legitimate users: + +- [Circuit breaker]({{< ref "planning-for-production/ensure-high-availability/circuit-breakers" >}}) +- [Payload size limiter]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}) +- [Rate limiter / throttling]({{< ref "getting-started/key-concepts/rate-limiting" >}}) +- [Caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) +- [Enforced timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) +- [IP restriction]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting#ip-blocklist-middleware" >}}) +- [GraphQL query complexity limiting]({{< ref "graphql/complexity-limiting" >}}) + +For Denial of Service (DoS) attacks it is recommended to use specialist 3rd party services to prevent DoS attacks from reaching your infrastructure. + +##### 5 - Broken Function Level Authorization (BFLA) + +To prevent Broken Functional Level Authorization (BFLA), requests to REST API endpoints must be authorized correctly. This involves validating client permissions against the requested resources. Requests from clients with insufficient permissions must be rejected. + +Tyk offers several measures to assist with protection from BFLA threats: + +- *Establish path-based access rights*: [Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) are predefined sets of rules which grant access to particular APIs. These can include [path-based permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}), which restrict access to particular paths and methods within an API. Clients can be assigned one or more policies which the Gateway will validate when it receives a request. +- *Access Control*: Tyk has plugins that control access to API endpoints. They are known as [allowlist]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) and [blocklist]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) and can be configured via the Endpoint Designer of an API Definition. Both plugins grant and deny access to API paths and methods, but do so in different ways, which makes them mutually exclusive. When the allowlist plugin is used, only the marked paths and methods are allowed, all other paths and methods are blocked. This can be perceived as *deny by default* since it provides the least privileges. The reverse is true for the blocklist plugin, only the paths and methods marked as blocklist are blocked, all other paths and methods are allowed. It is recommended to use the *allowlist* approach, since it is the most restrictive, only allowing marked endpoint paths and paths. +- *CORS*: This [functionality]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) allows the Tyk Gateway to limit API access to particular browser-based consumers. + +##### 6 - Unrestricted Access To Sensitive Business Flows + +This involves attackers understanding an API's business model, identifying sensitive business processes and automating unauthorized access to these processes. This can disrupt business operations by preventing legitimate users from making purchases for example. Attackers manually locate target resources and work to bypass any existing mitigation measures. + +These business flows are application specific, being unique to the API's backend systems. Subsequently, the API owner is responsible for addressing the security issues posed by this threat. Furthermore, to discover points of exploitation and test IT security breaches, pentesting is recommended. + +The APIM can be used to protect sensitive endpoints using authentication and authorization. Tyk recommends considering splitting Admin APIs from client facing APIs. This allows authentication and authorization checks to be defined and managed by different governance models, thus establishing clear role models. + +Furthermore, the APIM can validate authentication and authorization by scope to ensure that the client has the correct credentials before the upstream API processes the request. + +##### 7 - Server Side Request Forgery (SSRF) + +Server Side Request Forgery (SSRF) is a security vulnerability in web applications where an attacker can manipulate a server to make unauthorized requests to internal or external resources, potentially leading to data leaks or remote code execution. This can allow an attacker to probe or attack other parts of the application's infrastructure, potentially compromising sensitive information and systems. + +This is application specific and is largely the responsibility of the API. However, Tyk Gateway can assist with this form of attack through [JSON schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) for incoming payloads. For example, a schema could contain a regular expression to reject localhost URLs. These URLs could be used by an attacker to perform port scanning for example. + +##### 8 - Security Misconfiguration + +Tyk offers several mechanisms to help protect an API from Security Misconfiguration exploits: + +- Use [response header manipulation]({{< ref "advanced-configuration/transform-traffic/response-headers" >}}) to remove or modify API sensitive information. +- Use [response body manipulation]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) to remove or modify parts containing sensitive information. +- [TLS]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) to ensure that clients use the right service and encrypt traffic. +- [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) with both the clients and API to ensure that callers with explicitly allowed client certificates can connect to the endpoints. +- [Error Templates]({{< ref "advanced-configuration/error-templates" >}}) can be used to return a response body based on status code and content type. This can help minimize the implementation details returned to the client. +- [CORS functionality]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) allows the Tyk Gateway to limit API access to particular browser-based consumers. +- [Policy Path-Based Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) and the [allowlist]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) plugin can be used to prevent clients from accessing API endpoints using non-authorized HTTP methods. For example, blocking the use of the DELETE method on an endpoint which should only accept GET requests. +- [Environment variables]({{< ref "tyk-environment-variables" >}}) can help standardize configuration across containerised deployments. +- For GraphQL APIs: +- [Schema Introspection]({{< ref "graphql/introspection" >}}) ensures that the Tyk Dashboard automatically uses the schema of the upstream GraphQL API and can keep it synchronised if it changes. +- [GraphQL Schema Validation]({{< ref "graphql/validation#schema-validation" >}}) prevents invalid schemas from being saved. This catches errors such as duplicate type names and usage of unknown types. +- Third-party [Secret Storage]({{< ref "tyk-configuration-reference/kv-store" >}}) to centralise configuration of sensitive data such as passwords. This data can then be dynamically referenced by Tyk configuration files, rather than being hard coded. +- Users can can write their own [custom plugins]({{< ref "plugins" >}}) in a variety of languages, either directly or through gRPC calls, to implement their requirements. + +The Ops team should also take reponsibility for monitoring the APIs for errors and patching accordingly. Regular [Penetration Tests](https://en.wikipedia.org/wiki/Penetration_test) should be scheduled to ensure the security of published services. Tyk, through our Professional Services or Partners, can assist in the process. + +##### 9 - Improper Inventory Management + +Tyk offers the following features to support improper inventory management: + +- [Versioning]({{< ref "getting-started/key-concepts/versioning" >}}) allows newer versions of APIs to coexist with the older versions, facilitating deprecation and sunsetting. +- [Sunsetting]({{< ref "product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning#sunsetting-api-versions" >}}) allows versions to be configured with an Expiry Time, ensuring that a version is not accessible after the expiry date. +- [Key expiry]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) ensures that access to an API is short lived, with a per key configurable Time to Live (TTL) for which a token remains valid before it expires. The implementation of key expiry, with a configurable Time To Live (TTL), mitigates the impact of compromised tokens by narrowing the window of vulnerability. Setting a TTL reduces the time frame during which a compromised token could be exploited, enhancing overall security. +- Tyk Developer Portal catalogs APIs and facilitates granting access to them. Integrated with a CMDB it can help keep documentation updated. +- [Tyk Analytics]({{< ref "tyk-dashboard-analytics" >}}) can help identify the stagnant APIs and used stale APIs. +- [Tyk Pump]({{< ref "tyk-pump" >}}) can ship metrics needed for analytics into Tyk Dashboard and other systems. +- Third-party [Secret Storage]({{< ref "tyk-configuration-reference/kv-store" >}}) can be used to centralise and protect sensitive configuration data such as passwords, rather than exposing them as plain text in Tyk configuration files. + +In addition, it is best practice to consider any definition of done to include corresponding documentation updates. + +##### 10 - Unsafe Consumption Of APIs + +Attackers may identify and target the third party APIs/services used by an API. This can lead to leaked sensitive information, denial of service, injection attacks etc. + +It is the responsibility of the API to provide protection against these attacks. However, if the organization uses the Gateway as a forwarding proxy to third party APIs, then the following features could be used: + +- [JSON Schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) to validate that an incoming data payload meets a defined schema. Payloads that do not adhere to the schema are rejected. +- [TLS]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) to ensure that clients use the right service and encrypt traffic. +- [Versioning]({{< ref "getting-started/key-concepts/versioning" >}}) allows newer versions of third party APIs to coexist with the older versions, facilitating deprecation and sunsetting. + + +## Managing Authentication and Authorization + +### Authentication + +Authentication is the process of identifying API clients. It’s a broad topic, with many approaches to choose from. Choosing the right approach is important, as it forms a fundamental part of the overall security strategy. The decision depends on many risk factors; users, functionality, data, accessibility and compliance, to name just a few. While there isn’t necessarily a single, correct choice, it’s usually safe to assume that some form of authentication is needed, as it’s a crucial prerequisite in performing subsequent identity-based authorization checks. + +**Implement Appropriate Authentication** + +Choose a suitable authentication approach based on the risk profile of the API. Is it publicly accessible or internal? Does it require user interaction or is it machine to machine? How sensitive is the data and functionality provided by the API? Simplistic approaches, such as [Bearer Tokens]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}), can work for low risk, basic APIs, but for higher risk or more sophisticated APIs, it may be more appropriate to use a standards-based approach such as [OAuth 2.0]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) or [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}). Furthermore, using an [external identity provider]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) can deliver additional benefits, such as [single sign-on]({{< ref "advanced-configuration/integrate/sso" >}}), as well as multi-factor authentication approaches such as [biometric verification](https://www.okta.com/identity-101/biometrics-secure-authentication). + +**Handle Data Securely** + +Don’t undermine the authentication process by leaking sensitive authentication data. Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) and hashing to prevent credentials from being intercepted and stolen through insecure transmission and storage. These principles also apply to upstream requests made by the gateway and upstream API to other APIs and services. + +**Enforce Good Practices** + + +Establish rules that reduce risk and enhance overall system security. Use [password policies]({{< ref "basic-config-and-security/security/password-policy" >}}) to prevent the use of weak passwords, and [TLS policies]({{< ref "basic-config-and-security/security/tls-and-ssl#values-for-tls-versions" >}}) to prevent the use of older TLS versions that are now deprecated and considered vulnerable. + +**Protect Sensitive Endpoints** + +Reduce susceptibility of sensitive endpoints to brute force dictionary or password stuffing attacks. The typical target for this type of attack are endpoints that use credentials, such as login and password recovery. Unfortunately, anonymous access is required for these endpoints, so authentication cannot be used to protect them, so the best approach is to hinder access by using techniques such as [rate limiting]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}), [captcha](https://en.wikipedia.org/wiki/CAPTCHA) and one-time URLs. + + +### Authorization +Authorization is the process of validating API client requests against the access rights they have been granted, ensuring that the requests comply with any imposed limitations. It’s the most prevalent topic on the OWASP list, with three entries covering different levels of authorization. + +Almost any part of a request can be scrutinised as part of authorization, but choosing the best approach depends on the type of API. For example, with REST APIs, the requested method and path are good candidates, but they aren’t relevant for GraphQL APIs, which should focus on the GraphQL query instead. + +Authorization can be a complex process that occurs at multiple locations throughout the request lifecycle. For example, a gateway can use access control policies to determine whether a required path is acceptable. But for decisions based on object data, such as when a client requests a particular record from the database, it’s the API that’s best positioned, as only it has access to the necessary data. For more information about the authorization process, see Authorization Levels in the appendix. + +#### Split Authorization + +Implement authorization in the best locations across the stack. For an overview of the different authorization levels across the stack please visit this [page]({{< ref "#managing-authorization-levels" >}}). Use the gateway to handle general API authorization related to hosts, methods, paths and properties. This leaves the API to handle the finer details of object-level authorization. In terms of OWASPs authorization categories, it can be split as follows: + +##### Object Level Authorization + +Handle with the API. It can access and understand the data needed to make authorization decisions on individual objects within its database. + +##### Object Property Level Authorization + +Handle with both the API and the gateway. The approach depends on the type of API: + +For REST APIs, it’s the API that’s primarily responsible for returning the correct data. To complement this, the gateway can use [body transforms]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) to remove sensitive data from responses if the API is unable to do so itself. The gateway can also enforce object property-level restrictions using [JSON validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}), for scenarios where the client is sending data to the API. + +For GraphQL APIs, use the gateway to define [GraphQL schemas]({{< ref "graphql-proxy-only#managing-gql-schema" >}}) to limit which properties are queryable, then optionally use [field-based permissions]({{< ref "graphql-proxy-only#field-based-permission" >}}) to also specify access rights to those properties. + +##### Function Level Authorization + +Handle with the gateway. Use [security policies]({{< ref "basic-config-and-security/security/security-policies" >}}), [path-based permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}), [allow lists]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) and [block lists]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) to manage authorization of hosts and paths. + +#### Assign Least Privileges + +Design [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) that contain the least privileges necessary for users to achieve the workflows supported by the API. By favoring specific, granular access over broad access, this enables user groups and use cases to be addressed directly, as opposed to broad policies that cover multiple use cases and expose functionality unnecessarily. + +##### Deny by Default + +Favor use of [allow lists]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) to explicitly allow endpoints access, rather than [block lists]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) to explicitly deny. This approach prevents new API endpoints from being accessible by default, as the presence of other, allowed endpoints means that access to them is implicitly denied. + +##### Validate and Control All User Input + +Protect APIs from erroneous or malicious data by validating all input before it’s processed by the API. Bad data, whether malicious or not, can cause many problems for APIs, from basic errors and bad user experience, to data leaks and downtime. The standard mitigation approach is to validate all user input, for which there are various solutions depending on the type of API: + +For REST APIs, use [schema validation]({{< ref "graphql/validation#schema-validation" >}}) to control acceptable input data values. + +For GraphQL APIs, use [GraphQL schema]({{< ref "graphql-proxy-only#managing-gql-schema" >}}) definitions to limit what data can be queried and mutated. Additionally, [complexity limiting]({{< ref "graphql/complexity-limiting" >}}) can be used to block resource-intensive queries. + +#### Track Anomalies + +Use [log aggregation]({{< ref "log-data#integration-with-3rd-party-aggregated-log-and-error-tools" >}}) and [event triggers]({{< ref "basic-config-and-security/report-monitor-trigger-events" >}}) to push data generated by application logs and events into centralised monitoring and reporting systems. This real-time data stream can be used to highlight application issues and security-related events, such as authentication and authorization failures. + +##### Understand System State + +Perform application performance monitoring by capturing gateway [instrumentation data]({{< ref "basic-config-and-security/report-monitor-trigger-events/instrumentation" >}}). This enables the current system state, such as requests per second and response time, to be monitored and alerted upon. + +##### Manage Cross-Origin Resource Sharing + +Use [CORS filtering]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) to control the resources accessible by browser-based clients. This is a necessity for APIs that expect to be consumed by external websites. + + +### Managing Authorization Levels + +This section provides basic examples of where different authorization levels occur in the API management stack. The accompanying diagrams use color-coding to show links between request element and the associated authorization locations and methods. + +This is how OWASP describe the attack vectors for the three authorization levels: + +**Object Level Authorization**: “Attackers can exploit API endpoints that are vulnerable to broken object-level authorization by manipulating the ID of an object that is sent within the request. Object IDs can be anything from sequential integers, UUIDs, or generic strings. Regardless of the data type, they are easy to identify in the request target (path or query string parameters), request headers, or even as part of the request payload.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa1-broken-object-level-authorization.md)) + +**Object Property Level Authorization**: “APIs tend to expose endpoints that return all object’s properties. This is particularly valid for REST APIs. For other protocols such as GraphQL, it may require crafted requests to specify which properties should be returned. Identifying these additional properties that can be manipulated requires more effort, but there are a few automated tools available to assist in this task.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa3-broken-object-property-level-authorization.md)) + +**Function Level Authorization**: “Exploitation requires the attacker to send legitimate API calls to an API endpoint that they should not have access to as anonymous users or regular, non-privileged users. Exposed endpoints will be easily exploited.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa3-broken-object-property-level-authorization.md)) + + +#### REST API - Reading Data + +{{< img src="/img/api-management/security/rest-api-read-data.jpeg" alt="Rest API - Read Data" width="150px" >}} + +The client sends a `GET` request using the path `/profile/1`. This path has two parts: + +1. `/profile/`: The resource type, which is static for all requests related to profile objects. This requires function level authorization. + +2. `1`: The resource reference, which is dynamic and depends on the profile is being requested. This requires object level authorization. + +Next, the gateway handles function level authorization by checking that the static part of the path, in this case `/profile/`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. + +The gateway ignores the dynamic part of the part of the path, in this case `1`, as it doesn't have access to the necessary object-level data to make an authorization decision for this. + +Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to read is requested record. + +#### REST API - Writing Data + +{{< img src="/img/api-management/security/rest-api-write-data.jpeg" alt="Rest API - Write Data" width="150px" >}} + +The client sends a `POST` request using the path `/profile` and body data containing the object to write. The path `/profile` is static and requires function level authorization. The body data contains a JSON object that has two fields: + +1. `name`: A standard object field. This requires object property authorization. + +2. `id`: An object identifier field that refers to the identity of an object, so needs to be treated differently. As such, it requires both object property authorization, like name, and also object authorization. + +Next, the gateway handles function level authorization, by checking that the path, in the case `/profile`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. + +The gateway can also perform object property level authorization, by validating that the values of the body data fields, `name` and `id`, conform to a schema. + +Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to write the requested data. + +#### GraphQL API - Querying Data + +{{< img src="/img/api-management/security/graphql-query-data.jpeg" alt="Rest API - Write Data" width="150px" >}} + +The client sends a `POST` request using the path `/graphql` and body data containing a GraphQL query. The path `/graphql` is static and requires function level authorization. The GraphQL query contains several elements: + +- `profile`: An object type, referring to the type of object being requested. This requires object property authorization. +- `id`: An object identifier field that refers to the identity of an object, so needs to be treated differently. As such, it requires both object property authorization, like name, and also object authorization. +- `name`: A standard object field, referring to a property of the profile object type. This requires object property authorization. + +Next, the Gateway handles function level authorization, by checking that the path, in the case `/graphql`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. Due to the nature of GraphQL using just a single endpoint, there is no need for additional path-based authorization features, only a basic security policy is required. + +Another difference between this and the REST examples is in the way that the body data is authorized: + +- All object types and fields contained in the query are checked against the API’s GraphQL schema, to ensure they are valid. In this case, the object type is `profile`, and the fields are `id` and `name`. The schema defined in the gateway configuration can differ from that in the upstream API, which enables fields to be restricted by default. +- Field-based permissions can also be used, to authorize client access of individual fields available in the schema. In this case, `id` and `name`. + +Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to access the requested data. This can be more complicated for GraphQL APIs, as the data presented by the schema may actually come from several different data sources. + +## Managing API Resources + +Excessive resource consumption poses a risk to APIs. As the number of concurrent requests handled by a server increases, so too does its consumption of CPU, RAM and storage resources. Should any of these become depleted, then the quality of service offered by applications running on the server will rapidly decline, and may even lead to their complete failure. + +This issue can be caused by both legitimate consumers and malicious attackers, but they are different situations that require different solutions. For legitimate consumers, solutions should be focused on controlling API utilization through the gateway, to keep usage within agreed or desired limits. But malicious attackers require a different approach, as denial of service attacks must be blocked as far as possible from the core API infrastructure. + +**Restrict Request Flows**: Use [rate limits]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) and [quotas]({{< ref "basic-config-and-security/control-limit-traffic/request-quotas" >}}) to prevent excessive API usage. Rate limits are best used for short term control, in the range of seconds. Whereas quotas are more suited to longer terms, in the range of days, weeks or beyond. [Throttling]({{< ref "basic-config-and-security/control-limit-traffic/request-throttling" >}}) can also be used as a type of enhanced rate limiter that queues and retries requests on the clients behalf, rather than immediately rejecting them. + +**Block Excessively Large Requests**: Place reasonable [limitations on payload sizes]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}) to prevent oversized requests from reaching upstream servers, thereby avoiding the unnecessary consumption of resources. + +**Avoid Unnecessary Resource Usage**: Appropriate use of [caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) can reduce server resource consumption by simply returning cached responses instead of generating new ones. The extent to which caching can be used depends on the purpose of the endpoint, as it’s generally unsuitable for requests that modify data or responses that frequently change. Caching can be applied to [particular requests]({{< ref "basic-config-and-security/reduce-latency/caching/advanced-cache" >}}) or enabled for an [entire API]({{< ref "basic-config-and-security/reduce-latency/caching/global-cache" >}}), and can also be [controlled by the upstream API]({{< ref "basic-config-and-security/reduce-latency/caching/upstream-controlled-cache" >}}) or [invalidated programmatically]({{< ref "frequently-asked-questions/clear-api-cache" >}}). + +**Limit Complex Long-Running Tasks**: Use [GraphQL complexity limiting]({{< ref "graphql/complexity-limiting" >}}) to prevent convoluted queries from being processed. Alternatively, [timeouts]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) can be used to terminate long-running requests that exceed a given time limit. + +**Protect Failing Services**: Defend struggling endpoints by using a [circuit breaker]({{< ref "planning-for-production/ensure-high-availability/circuit-breakers" >}}). This feature protects endpoints by detecting error responses, then blocking requests for a short duration to allow them to recover. The same principle can be applied in a wider sense by using [uptime tests]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/uptime-tests" >}}), though this works on a host level instead, by removing failed hosts from the gateway load balancer. + +**Enforce Network-Level Security**: Problematic clients can be prevented from accessing the API by [blocking their address]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting" >}}). Conversely, for APIs with a known set of clients, [allow lists]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting" >}}) can be used to create a list of allowed addresses, thereby implicitly blocking every other address from the API. + +**Mitigate DoS Attacks**: Increase the chance of maintaining API availability during a denial of service attack by using [specialist mitigation services](https://www.cloudflare.com). These have the infrastructure capacity needed to handle [large scale distributed attacks](https://www.cloudflare.com/en-gb/learning/ddos/what-is-a-ddos-attack), with the purpose of preventing attacks from reaching the API infrastructure, thereby enabling the API to continue operating normally. + + +## Configuration Best Practices + +Modern APIs are often backed by large technology stacks composed of numerous components and libraries. Each of these is a potential weak link in the security chain, so efforts must be made to ensure that security measures are implemented throughout. The API gateway plays a critical part in an overall security strategy, by utilizing its ability to process requests in a secure manner. + +**Secure Connections** + + +Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) where possible. Most importantly, on inbound connections to the gateway and outbound connection from the gateway to the upstream API and other services. TLS can also be used as a form of authentication, using [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). + +**Limit Functionality** + + +Use [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) to specify which paths, methods and schemas are accessible, whilst blocking all others. + +**Mitigate Server-Side Request Forgery** + + +Restrict any URL-based input data to specific schemas, hosts and paths by using [schema validation]({{< ref "graphql/validation#schema-validation" >}}). When data is fetched server-side, it should be validated and not returned to the client in raw format. + +**Protect Secrets** + + +Prevent sensitive data, such as usernames, passwords, license keys and other secrets, from being stored as plain text in application configuration files. Use [key value secret storage]({{< ref "tyk-configuration-reference/kv-store" >}}) to dynamically load sensitive data from a secure secret manager. + +**Sanitise Responses** + + +Modify or remove sensitive data from responses by using [transforms]({{< ref "advanced-configuration/transform-traffic" >}}) to alter the [response headers]({{< ref "advanced-configuration/transform-traffic/response-headers" >}}) and [body]({{< ref "advanced-configuration/transform-traffic/response-body" >}}). + +
    + +## Governing APIs Effectively + +APIs need to be managed and governed just like any other resource, otherwise organizations risk losing track of their API estate and becoming unaware of potentially vulnerable APIs running within their infrastructure. This risk is magnified as the number of teams, environments and APIs increases. Use API management as part of overarching business processes to control how APIs are accessed, managed and deployed. + +**Restrict Version Availability**: Enforce the expiry of [API versions]({{< ref "getting-started/key-concepts/versioning" >}}) that are planned for deprecation, by setting a sunset date, beyond which they will not be accessible. + +**Enforce Key Expiry**: In many situations it’s best to issue API keys that have a short, finite lifetime, especially when serving anonymous, external consumers. Set [expiry dates]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) for API keys, or use ephemeral credentials with complementary authentication techniques that support key renewal, such as [OAuth 2.0 refresh tokens]({{< ref "/api-management/authentication-authorization#use-refresh-token-grant" >}}) and [dynamic client registration]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration" >}}). Then, should an API key fall into the wrong hands, there’s a chance that it has already expired. + +**Use Standardized Specifications**: Use the [OpenAPI Specification](https://en.wikipedia.org/wiki/OpenAPI_Specification) standard to design APIs. These specification documents act as a source of truth that can generate [API configuration]({{< ref "getting-started/using-oas-definitions/import-an-oas-api" >}}) and [portal documentation]({{< ref "tyk-apis/tyk-portal-api/portal-documentation#create-documentation" >}}). + +**Understand API Usage**: Use [API analytics]({{< ref "tyk-dashboard-analytics" >}}) to report on usage. This captured data generates useful, actionable insights across a variety of metrics, such as API popularity, performance and trends. + +**Control API Distribution**: Use [sharding]({{< ref "advanced-configuration/manage-multiple-environments#api-sharding" >}}) to control availability of APIs across multi-gateway, multi-environment deployments. This ensures that specific APIs are only available through specific gateways, which helps to prevent undesirable situations, such as internal APIs being published to externally accessible gateways, or test API configurations reaching the production environment. +
    + +## Securing APIs with Tyk + +Securing your APIs is one of the primary uses of Tyk API management solution. Out of the box, the Gateway offers a lot of functionality for securing your APIs and the Gateway itself. + +This section outlines all of the security configurations and components that are available to you when securing your Tyk stack. + +This section outlines some of the key security concepts that Tyk uses and that you should be familiar with before setting up and using a Tyk stack to secure your API. + +**Key Hashing** + + +See [Key Hashing]({{< ref "basic-config-and-security/security/key-hashing" >}}) for details on how Tyk obfuscates keys in Redis. + +**TLS and SSL** + + +Tyk supports TLS connections and Mutual TLS. All TLS connections also support HTTP/2. Tyk also supports Let's Encrypt. See [TLS and SSL]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) for more details. + +**Trusted Certificates** + + +As part of using Mutual TLS, you can create a list of [trusted certificates]({{< ref "/api-management/authentication-authorization#how-does-mutual-tls-work" >}}). + +**Certificate Pinning** + + +Introduced in Tyk Gateway 2.6.0, [certificate pinning]({{< ref "security/certificate-pinning" >}}) is a feature which allows you to allow only specified public keys used to generate certificates, so you will be protected in case an upstream certificate is compromised. + +**API Security** + +Tyk supports various ways to secure your APIs, including: + +* Bearer Tokens +* HMAC +* JSON Web Tokens (JWT) +* Multi Chained Authentication +* OAuth 2.0 +* OpenID Connect + +See [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details. + +**Security Policies** + + +A Tyk security policy incorporates several security options that can be applied to an API key. These include [Partioned Policies]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies.md" >}}) and securing by [Method and Path]({{< ref "security/security-policies/secure-apis-method-path" >}}). + +See [Security Policies]({{< ref "basic-config-and-security/security/security-policies" >}}) for more details. diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/authentication.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/authentication.md deleted file mode 100644 index e2c6e6d965..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/authentication.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: "Authentication" -date: 2023-09-01 -tags: ["API Security", "Authentication"] -description: "Authentication best practices" ---- - -Authentication is the process of identifying API clients. It’s a broad topic, with many approaches to choose from. Choosing the right approach is important, as it forms a fundamental part of the overall security strategy. The decision depends on many risk factors; users, functionality, data, accessibility and compliance, to name just a few. While there isn’t necessarily a single, correct choice, it’s usually safe to assume that some form of authentication is needed, as it’s a crucial prerequisite in performing subsequent identity-based authorization checks. - -### Implement Appropriate Authentication - -Choose a suitable authentication approach based on the risk profile of the API. Is it publicly accessible or internal? Does it require user interaction or is it machine to machine? How sensitive is the data and functionality provided by the API? Simplistic approaches, such as [Bearer Tokens]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}), can work for low risk, basic APIs, but for higher risk or more sophisticated APIs, it may be more appropriate to use a standards-based approach such as [OAuth 2.0]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) or [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}). Furthermore, using an [external identity provider]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) can deliver additional benefits, such as [single sign-on]({{< ref "advanced-configuration/integrate/sso" >}}), as well as multi-factor authentication approaches such as [biometric verification](https://www.okta.com/identity-101/biometrics-secure-authentication). - -### Handle Data Securely - -Don’t undermine the authentication process by leaking sensitive authentication data. Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) and hashing to prevent credentials from being intercepted and stolen through insecure transmission and storage. These principles also apply to upstream requests made by the gateway and upstream API to other APIs and services. - -### Enforce Good Practices - -Establish rules that reduce risk and enhance overall system security. Use [password policies]({{< ref "basic-config-and-security/security/password-policy" >}}) to prevent the use of weak passwords, and [TLS policies]({{< ref "basic-config-and-security/security/tls-and-ssl#values-for-tls-versions" >}}) to prevent the use of older TLS versions that are now deprecated and considered vulnerable. - -### Protect Sensitive Endpoints - -Reduce susceptibility of sensitive endpoints to brute force dictionary or password stuffing attacks. The typical target for this type of attack are endpoints that use credentials, such as login and password recovery. Unfortunately, anonymous access is required for these endpoints, so authentication cannot be used to protect them, so the best approach is to hinder access by using techniques such as [rate limiting]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}), [captcha](https://en.wikipedia.org/wiki/CAPTCHA) and one-time URLs. \ No newline at end of file diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation-levels.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation-levels.md deleted file mode 100644 index 3ca78f022d..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation-levels.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: "Authorization Levels" -date: 2023-09-11 -tags: ["API Security", "Authorization"] -description: "Authorization levels" ---- - - -This section provides basic examples of where different authorization levels occur in the API management stack. The accompanying diagrams use color-coding to show links between request element and the associated authorization locations and methods. - -This is how OWASP describe the attack vectors for the three authorization levels: - -**Object Level Authorization**: “Attackers can exploit API endpoints that are vulnerable to broken object-level authorization by manipulating the ID of an object that is sent within the request. Object IDs can be anything from sequential integers, UUIDs, or generic strings. Regardless of the data type, they are easy to identify in the request target (path or query string parameters), request headers, or even as part of the request payload.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa1-broken-object-level-authorization.md)) - -**Object Property Level Authorization**: “APIs tend to expose endpoints that return all object’s properties. This is particularly valid for REST APIs. For other protocols such as GraphQL, it may require crafted requests to specify which properties should be returned. Identifying these additional properties that can be manipulated requires more effort, but there are a few automated tools available to assist in this task.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa3-broken-object-property-level-authorization.md)) - -**Function Level Authorization**: “Exploitation requires the attacker to send legitimate API calls to an API endpoint that they should not have access to as anonymous users or regular, non-privileged users. Exposed endpoints will be easily exploited.” (source: [OWASP Github](https://github.com/OWASP/API-Security/blob/9c9a808215fcbebda9f657c12f3e572371697eb2/editions/2023/en/0xa3-broken-object-property-level-authorization.md)) - - -### REST API - Reading Data - -{{< img src="/img/api-management/security/rest-api-read-data.jpeg" alt="Rest API - Read Data" width="150px" >}} - -The client sends a `GET` request using the path `/profile/1`. This path has two parts: - -1. `/profile/`: The resource type, which is static for all requests related to profile objects. This requires function level authorization. - -2. `1`: The resource reference, which is dynamic and depends on the profile is being requested. This requires object level authorization. - -Next, the gateway handles function level authorization by checking that the static part of the path, in this case `/profile/`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. - -The gateway ignores the dynamic part of the part of the path, in this case `1`, as it doesn't have access to the necessary object-level data to make an authorization decision for this. - -Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to read is requested record. - -### REST API - Writing Data - -{{< img src="/img/api-management/security/rest-api-write-data.jpeg" alt="Rest API - Write Data" width="150px" >}} - -The client sends a `POST` request using the path `/profile` and body data containing the object to write. The path `/profile` is static and requires function level authorization. The body data contains a JSON object that has two fields: - -1. `name`: A standard object field. This requires object property authorization. - -2. `id`: An object identifier field that refers to the identity of an object, so needs to be treated differently. As such, it requires both object property authorization, like name, and also object authorization. - -Next, the gateway handles function level authorization, by checking that the path, in the case `/profile`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. - -The gateway can also perform object property level authorization, by validating that the values of the body data fields, `name` and `id`, conform to a schema. - -Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to write the requested data. - -### GraphQL API - Querying Data - - -{{< img src="/img/api-management/security/graphql-query-data.jpeg" alt="Rest API - Write Data" width="150px" >}} - -The client sends a `POST` request using the path `/graphql` and body data containing a GraphQL query. The path `/graphql` is static and requires function level authorization. The GraphQL query contains several elements: - -- `profile`: An object type, referring to the type of object being requested. This requires object property authorization. -- `id`: An object identifier field that refers to the identity of an object, so needs to be treated differently. As such, it requires both object property authorization, like name, and also object authorization. -- `name`: A standard object field, referring to a property of the profile object type. This requires object property authorization. - -Next, the Gateway handles function level authorization, by checking that the path, in the case `/graphql`, is authorized for access. It does this by cross referencing the security policies connected to the API key provided in the `authorization` header. Due to the nature of GraphQL using just a single endpoint, there is no need for additional path-based authorization features, only a basic security policy is required. - -Another difference between this and the REST examples is in the way that the body data is authorized: - -- All object types and fields contained in the query are checked against the API’s GraphQL schema, to ensure they are valid. In this case, the object type is `profile`, and the fields are `id` and `name`. The schema defined in the gateway configuration can differ from that in the upstream API, which enables fields to be restricted by default. -- Field-based permissions can also be used, to authorize client access of individual fields available in the schema. In this case, `id` and `name`. - -Lastly, the API handles object level authorization by using custom logic. This typically involves using the value of the `authorization` header in combination with the ownership and authorization model specific to the API to determine if the client is authorized to access the requested data. This can be more complicated for GraphQL APIs, as the data presented by the schema may actually come from several different data sources. \ No newline at end of file diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation.md deleted file mode 100644 index c884414be9..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/authorisation.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: "Authorization" -date: 2023-09-04 -tags: ["API Security", "Authorization"] -description: "Authorization best practices" ---- - -Authorization is the process of validating API client requests against the access rights they have been granted, ensuring that the requests comply with any imposed limitations. It’s the most prevalent topic on the OWASP list, with three entries covering different levels of authorization. - -Almost any part of a request can be scrutinised as part of authorization, but choosing the best approach depends on the type of API. For example, with REST APIs, the requested method and path are good candidates, but they aren’t relevant for GraphQL APIs, which should focus on the GraphQL query instead. - -Authorization can be a complex process that occurs at multiple locations throughout the request lifecycle. For example, a gateway can use access control policies to determine whether a required path is acceptable. But for decisions based on object data, such as when a client requests a particular record from the database, it’s the API that’s best positioned, as only it has access to the necessary data. For more information about the authorization process, see Authorization Levels in the appendix. - -## Split Authorization - -Implement authorization in the best locations across the stack. For an overview of the different authorization levels across the stack please visit this [page]({{< ref "/apim-best-practice/api-security-best-practice/authorisation-levels" >}}). Use the gateway to handle general API authorization related to hosts, methods, paths and properties. This leaves the API to handle the finer details of object-level authorization. In terms of OWASPs authorization categories, it can be split as follows: - -### Object Level Authorization - -Handle with the API. It can access and understand the data needed to make authorization decisions on individual objects within its database. - -### Object Property Level Authorization - -Handle with both the API and the gateway. The approach depends on the type of API: - -For REST APIs, it’s the API that’s primarily responsible for returning the correct data. To complement this, the gateway can use [body transforms]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) to remove sensitive data from responses if the API is unable to do so itself. The gateway can also enforce object property-level restrictions using [JSON validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}), for scenarios where the client is sending data to the API. - -For GraphQL APIs, use the gateway to define [GraphQL schemas]({{< ref "graphql-proxy-only#managing-gql-schema" >}}) to limit which properties are queryable, then optionally use [field-based permissions]({{< ref "graphql-proxy-only#field-based-permission" >}}) to also specify access rights to those properties. - -### Function Level Authorization - -Handle with the gateway. Use [security policies]({{< ref "basic-config-and-security/security/security-policies" >}}), [path-based permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}), [allow lists]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) and [block lists]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) to manage authorization of hosts and paths. - -## Assign Least Privileges - -Design [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) that contain the least privileges necessary for users to achieve the workflows supported by the API. By favoring specific, granular access over broad access, this enables user groups and use cases to be addressed directly, as opposed to broad policies that cover multiple use cases and expose functionality unnecessarily. - -### Deny by Default - -Favor use of [allow lists]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) to explicitly allow endpoints access, rather than [block lists]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) to explicitly deny. This approach prevents new API endpoints from being accessible by default, as the presence of other, allowed endpoints means that access to them is implicitly denied. - -### Validate and Control All User Input - -Protect APIs from erroneous or malicious data by validating all input before it’s processed by the API. Bad data, whether malicious or not, can cause many problems for APIs, from basic errors and bad user experience, to data leaks and downtime. The standard mitigation approach is to validate all user input, for which there are various solutions depending on the type of API: - -For REST APIs, use [schema validation]({{< ref "graphql/validation#schema-validation" >}}) to control acceptable input data values. - -For GraphQL APIs, use [GraphQL schema]({{< ref "graphql-proxy-only#managing-gql-schema" >}}) definitions to limit what data can be queried and mutated. Additionally, [complexity limiting]({{< ref "graphql/complexity-limiting" >}}) can be used to block resource-intensive queries. - -## Track Anomalies - -Use [log aggregation]({{< ref "log-data#integration-with-3rd-party-aggregated-log-and-error-tools" >}}) and [event triggers]({{< ref "basic-config-and-security/report-monitor-trigger-events" >}}) to push data generated by application logs and events into centralised monitoring and reporting systems. This real-time data stream can be used to highlight application issues and security-related events, such as authentication and authorization failures. - -### Understand System State - -Perform application performance monitoring by capturing gateway [instrumentation data]({{< ref "basic-config-and-security/report-monitor-trigger-events/instrumentation" >}}). This enables the current system state, such as requests per second and response time, to be monitored and alerted upon. - -### Manage Cross-Origin Resource Sharing - -Use [CORS filtering]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) to control the resources accessible by browser-based clients. This is a necessity for APIs that expect to be consumed by external websites. diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/configuration.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/configuration.md deleted file mode 100644 index f7822c68f1..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/configuration.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: "General Security Configuration" -date: 2023-09-13 -tags: ["API Security", "security configuration"] -description: "General security configuration" ---- - -Modern APIs are often backed by large technology stacks composed of numerous components and libraries. Each of these is a potential weak link in the security chain, so efforts must be made to ensure that security measures are implemented throughout. The API gateway plays a critical part in an overall security strategy, by utilizing its ability to process requests in a secure manner. - -### Secure Connections - -Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) where possible. Most importantly, on inbound connections to the gateway and outbound connection from the gateway to the upstream API and other services. TLS can also be used as a form of authentication, using [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). - -### Limit Functionality - -Use [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) to specify which paths, methods and schemas are accessible, whilst blocking all others. - -### Mitigate Server-Side Request Forgery - -Restrict any URL-based input data to specific schemas, hosts and paths by using [schema validation]({{< ref "graphql/validation#schema-validation" >}}). When data is fetched server-side, it should be validated and not returned to the client in raw format. - -### Protect Secrets - -Prevent sensitive data, such as usernames, passwords, license keys and other secrets, from being stored as plain text in application configuration files. Use [key value secret storage]({{< ref "tyk-configuration-reference/kv-store" >}}) to dynamically load sensitive data from a secure secret manager. - -### Sanitise Responses - -Modify or remove sensitive data from responses by using [transforms]({{< ref "advanced-configuration/transform-traffic" >}}) to alter the [response headers]({{< ref "advanced-configuration/transform-traffic/response-headers" >}}) and [body]({{< ref "advanced-configuration/transform-traffic/response-body" >}}). diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/governance.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/governance.md deleted file mode 100644 index f6ec0e6f30..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/governance.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: "Governance" -date: 2023-09-04 -tags: ["API Security", "governance"] -description: "Management and governance of APIs" ---- - -APIs need to be managed and governed just like any other resource, otherwise organizations risk losing track of their API estate and becoming unaware of potentially vulnerable APIs running within their infrastructure. This risk is magnified as the number of teams, environments and APIs increases. Use API management as part of overarching business processes to control how APIs are accessed, managed and deployed. - -**Restrict Version Availability**: Enforce the expiry of [API versions]({{< ref "getting-started/key-concepts/versioning" >}}) that are planned for deprecation, by setting a sunset date, beyond which they will not be accessible. - -**Enforce Key Expiry**: In many situations it’s best to issue API keys that have a short, finite lifetime, especially when serving anonymous, external consumers. Set [expiry dates]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) for API keys, or use ephemeral credentials with complementary authentication techniques that support key renewal, such as [OAuth 2.0 refresh tokens]({{< ref "/api-management/authentication-authorization#use-refresh-token-grant" >}}) and [dynamic client registration]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration" >}}). Then, should an API key fall into the wrong hands, there’s a chance that it has already expired. - -**Use Standardized Specifications**: Use the [OpenAPI Specification](https://en.wikipedia.org/wiki/OpenAPI_Specification) standard to design APIs. These specification documents act as a source of truth that can generate [API configuration]({{< ref "getting-started/using-oas-definitions/import-an-oas-api" >}}) and [portal documentation]({{< ref "tyk-apis/tyk-portal-api/portal-documentation#create-documentation" >}}). - -**Understand API Usage**: Use [API analytics]({{< ref "tyk-dashboard-analytics" >}}) to report on usage. This captured data generates useful, actionable insights across a variety of metrics, such as API popularity, performance and trends. - -**Control API Distribution**: Use [sharding]({{< ref "advanced-configuration/manage-multiple-environments#api-sharding" >}}) to control availability of APIs across multi-gateway, multi-environment deployments. This ensures that specific APIs are only available through specific gateways, which helps to prevent undesirable situations, such as internal APIs being published to externally accessible gateways, or test API configurations reaching the production environment. \ No newline at end of file diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/overview.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/overview.md deleted file mode 100644 index bc85d2044b..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/overview.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "API security best practices using API management" -date: 2020-09-01 -description: "API security best practices" ---- - -Implementing best-practice API security requires a holistic approach that covers many different topics. It’s recommended to start by reading the [OWASP API Security Top 10](https://owasp.org/API-Security/editions/2023/en/0x00-header/), which is a great resource for API security practitioners that provides clear explanations of the various threats and solutions. - -Two of the most prevalent topics are [authentication]({{< ref "authentication" >}}) and [authorization]({{< ref "authorisation" >}}), which occupy four of the top five positions. These are critical elements of API security, which verify the identity of API clients and control what they’re able to do. Alongside these are a number of other beneficial topics that are also within the remit of API management, all of which will be covered in this section. These include: - -- [Governance]({{< ref "governance" >}}) -- [Configuration]({{< ref "configuration" >}}) -- [Resource Consumption]({{< ref "resource-consumption" >}}) - diff --git a/tyk-docs/content/apim-best-practice/api-security-best-practice/resource-consumption.md b/tyk-docs/content/apim-best-practice/api-security-best-practice/resource-consumption.md deleted file mode 100644 index d40daeae68..0000000000 --- a/tyk-docs/content/apim-best-practice/api-security-best-practice/resource-consumption.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: "Resource consumption" -date: 2023-09-04 -tags: ["API Security", "Resource consumption"] -description: "Protecting resources against excessive consumption" ---- - -Excessive resource consumption poses a risk to APIs. As the number of concurrent requests handled by a server increases, so too does its consumption of CPU, RAM and storage resources. Should any of these become depleted, then the quality of service offered by applications running on the server will rapidly decline, and may even lead to their complete failure. - -This issue can be caused by both legitimate consumers and malicious attackers, but they are different situations that require different solutions. For legitimate consumers, solutions should be focused on controlling API utilization through the gateway, to keep usage within agreed or desired limits. But malicious attackers require a different approach, as denial of service attacks must be blocked as far as possible from the core API infrastructure. - -**Restrict Request Flows**: Use [rate limits]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) and [quotas]({{< ref "basic-config-and-security/control-limit-traffic/request-quotas" >}}) to prevent excessive API usage. Rate limits are best used for short term control, in the range of seconds. Whereas quotas are more suited to longer terms, in the range of days, weeks or beyond. [Throttling]({{< ref "basic-config-and-security/control-limit-traffic/request-throttling" >}}) can also be used as a type of enhanced rate limiter that queues and retries requests on the clients behalf, rather than immediately rejecting them. - -**Block Excessively Large Requests**: Place reasonable [limitations on payload sizes]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}) to prevent oversized requests from reaching upstream servers, thereby avoiding the unnecessary consumption of resources. - -**Avoid Unnecessary Resource Usage**: Appropriate use of [caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) can reduce server resource consumption by simply returning cached responses instead of generating new ones. The extent to which caching can be used depends on the purpose of the endpoint, as it’s generally unsuitable for requests that modify data or responses that frequently change. Caching can be applied to [particular requests]({{< ref "basic-config-and-security/reduce-latency/caching/advanced-cache" >}}) or enabled for an [entire API]({{< ref "basic-config-and-security/reduce-latency/caching/global-cache" >}}), and can also be [controlled by the upstream API]({{< ref "basic-config-and-security/reduce-latency/caching/upstream-controlled-cache" >}}) or [invalidated programmatically]({{< ref "frequently-asked-questions/clear-api-cache" >}}). - -**Limit Complex Long-Running Tasks**: Use [GraphQL complexity limiting]({{< ref "graphql/complexity-limiting" >}}) to prevent convoluted queries from being processed. Alternatively, [timeouts]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) can be used to terminate long-running requests that exceed a given time limit. - -**Protect Failing Services**: Defend struggling endpoints by using a [circuit breaker]({{< ref "planning-for-production/ensure-high-availability/circuit-breakers" >}}). This feature protects endpoints by detecting error responses, then blocking requests for a short duration to allow them to recover. The same principle can be applied in a wider sense by using [uptime tests]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/uptime-tests" >}}), though this works on a host level instead, by removing failed hosts from the gateway load balancer. - -**Enforce Network-Level Security**: Problematic clients can be prevented from accessing the API by [blocking their address]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting" >}}). Conversely, for APIs with a known set of clients, [allow lists]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting" >}}) can be used to create a list of allowed addresses, thereby implicitly blocking every other address from the API. - -**Mitigate DoS Attacks**: Increase the chance of maintaining API availability during a denial of service attack by using [specialist mitigation services](https://www.cloudflare.com). These have the infrastructure capacity needed to handle [large scale distributed attacks](https://www.cloudflare.com/en-gb/learning/ddos/what-is-a-ddos-attack), with the purpose of preventing attacks from reaching the API infrastructure, thereby enabling the API to continue operating normally. \ No newline at end of file diff --git a/tyk-docs/content/apim-best-practice/overview.md b/tyk-docs/content/apim-best-practice/overview.md deleted file mode 100644 index d7dab39fcf..0000000000 --- a/tyk-docs/content/apim-best-practice/overview.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "API Management Best Practice" -description: "Explains best practices for API management including security and operations" -tags: ["API Management best practice"] ---- - -In today's digital landscape, the efficient and secure exchange of data and functionality between applications is crucial for business growth. API Management serves as the backbone of digital ecosystems, enhancing security and operational efficiency to secure digital assets and streamline operations. - -### Security: Safeguarding Your Digital Assets - -APIs are the gateways that allow information to flow between applications, partners and customers. While APIs offer unparalleled opportunities, they also bring security concerns. API Management offers crucial security measures to protect businesses: - -- Authentication and Authorization -- Encryption -- Rate Limiting -- API Key Management - -### Operations: Streamlining API Creation and Deployment - -API Management isn't just about security; it also streamlines the creation and deployment of APIs, ensuring they operate seamlessly: - -- Portals to to simplify API creation, documentation and management -- Version Control -- Scalability -- Monitoring and Analytics -- Documentation - -In conclusion, API Management is the cornerstone of modern business success, enhancing both security and operational efficiency. By securing digital assets and streamlining the processes of creating and deploying APIs, API Management paves the way for innovation, growth and seamless connectivity in the digital era. Embracing API Management is not just a strategic decision; it's an imperative one for businesses looking to thrive in today's interconnected world. - -The aim of this is to evolve with content that targets best practices for API management, targeting security and operations. diff --git a/tyk-docs/content/basic-config-and-security.md b/tyk-docs/content/basic-config-and-security.md index c10054050f..75aea9d637 100644 --- a/tyk-docs/content/basic-config-and-security.md +++ b/tyk-docs/content/basic-config-and-security.md @@ -11,7 +11,7 @@ weight: 40 This section covers methods for configuring and applying security methods to Tyk. the following subjects are covered: -- [Security]({{< ref "basic-config-and-security/security" >}}). This section includes how to apply security to your Tyk components, your APIs, and security policies. +- [Security]({{< ref "api-management/security-best-practices#securing-apis-with-tyk" >}}). This section includes how to apply security to your Tyk components, your APIs, and security policies. - [Control and limit traffic]({{< ref "basic-config-and-security/control-limit-traffic" >}}). This section shows you how to apply quotas, rate limits (throttling) and size limits to your APIs. - [Reduce latency]({{< ref "basic-config-and-security/reduce-latency" >}}). This section describes methods for reducing latency in your Tyk installation. - [Log traffic]({{< ref "product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic" >}}). This section describes how to control the capture of traffic logs for the transactions (API requests and responses) handled by your Tyk Gateways. diff --git a/tyk-docs/content/basic-config-and-security/security.md b/tyk-docs/content/basic-config-and-security/security.md deleted file mode 100755 index 95686850a2..0000000000 --- a/tyk-docs/content/basic-config-and-security/security.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -date: 2017-03-23T14:29:56Z -title: How to secure your APIs in Tyk -tags: ["Security", "Configuration", "SSL", "Certificates", "Authentication", "Authorization", "API security", "API Gateway Security"] -description: "Security in Tyk. Securing your APIs is one of the primary uses of Tyk. Out of the box the Gateway offers functionality for securing your APIs & the Gateway itself." -weight: 1 -menu: - main: - parent: "Basic Configuration and Security" -aliases: - - /security/ ---- - -## Introduction - -Securing your APIs is one of the primary uses of Tyk API management solution. Out of the box, the Gateway offers a lot of functionality for securing your APIs and the Gateway itself. - -This section outlines all of the security configurations and components that are available to you when securing your Tyk stack. - -## Concepts - -This section outlines some of the key security concepts that Tyk uses and that you should be familiar with before setting up and using a Tyk stack to secure your API. - -### Key Hashing - -See [Key Hashing]({{< ref "basic-config-and-security/security/key-hashing" >}}) for details on how Tyk obfuscates keys in Redis. - -### TLS and SSL - -Tyk supports TLS connections and Mutual TLS. All TLS connections also support HTTP/2. Tyk also supports Let's Encrypt. See [TLS and SSL]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) for more details. - -### Trusted Certificates - -As part of using Mutual TLS, you can create a list of [trusted certificates]({{< ref "/api-management/authentication-authorization#how-does-mutual-tls-work" >}}). - -### Certificate Pinning - -Introduced in Tyk Gateway 2.6.0, [certificate pinning]({{< ref "security/certificate-pinning" >}}) is a feature which allows you to allow only specified public keys used to generate certificates, so you will be protected in case an upstream certificate is compromised. - -### API Security - -Tyk supports various ways to secure your APIs, including: - -* Bearer Tokens -* HMAC -* JSON Web Tokens (JWT) -* Multi Chained Authentication -* OAuth 2.0 -* OpenID Connect - -See [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details. - -### Security Policies - -A Tyk security policy incorporates several security options that can be applied to an API key. These include [Partioned Policies]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies.md" >}}) and securing by [Method and Path]({{< ref "security/security-policies/secure-apis-method-path" >}}). - -See [Security Policies]({{< ref "basic-config-and-security/security/security-policies" >}}) for more details. diff --git a/tyk-docs/content/basic-config-and-security/security/owasp-top-ten.md b/tyk-docs/content/basic-config-and-security/security/owasp-top-ten.md deleted file mode 100644 index a4b57bf8b3..0000000000 --- a/tyk-docs/content/basic-config-and-security/security/owasp-top-ten.md +++ /dev/null @@ -1,127 +0,0 @@ ---- -date: 2017-03-23T16:58:50Z -title: Tyk and OWASP Top Ten Threats -tags: ["OWASP", "Security", "Top Ten"] -description: "How Tyk guards agains the OWASP top ten threats" -menu: - main: - parent: "Security" -weight: 9 ---- - -The Open Web Application Security Project (OWASP) provides a top ten threat awareness document compiled by security experts. For more details on the OWASP project visit [https://www.owasp.org](https://www.owasp.org). Below are the top ten threats and how Tyk guards against them. For further details please visit our [blog](https://tyk.io/blog/res-owasp-api-security-intro/) - -## 1 - Broken Object Level Authorization (BOLA) - -Broken Object Level Authorization (BOLA) can occur due to a lack of access control to API resources. This vulnerability allows attackers to manipulate or bypass authorization mechanisms, typically by tampering with resource identifiers to gain unauthorized access to specific resources or data. BOLA is a critical security concern as it can lead to data breaches and unauthorized actions within a system. - -It is the responsibility of the API to handle this form of attack since it can access and understand the data needed to make authorization decisions on individual objects within the application database. - -## 2 - Broken Authentication - -Authentication is a vital aspect of API security. Failure to do so, as noted by OWASP, leads to *Broken Authentication* posing a significant risk to both API providers and data. - -Tyk provides the following features and authentication mechanisms: -- Prioritize secure methods, like [mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}), over [basic authentication]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}) wherever feasible. -- API owners can integrate external Identity Providers (IdPs) supporting methods like [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}), [OAuth 2.0]({{< ref "/api-management/authentication-authorization#use-authorization-code-grant" >}}) or [JSON Web Tokens]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). -- [Single Sign-On]({{< ref "advanced-configuration/integrate/sso" >}}) can be used for a centralized and trusted authentication source. API operators can choose from common authentication methods such as OAuth 2.0, LDAP, and SAML. -- [Dynamic Client Registration]({{< ref "tyk-developer-portal/tyk-portal-classic/dynamic-client-registration#oauth-20-dynamic-client-registration-protocol-dcr" >}}), enables third-party authorization servers to issue client credentials via the Tyk Developer Portal. This streamlines Identity Management, eliminating the need to manage credentials across multiple systems. -- Tyk's default authentication setup disallows credentials in URLs, reducing the risk of inadvertent exposure through backend logs. -- Tyk Gateway can be configured to enforce a [minimum TLS version]({{< ref "basic-config-and-security/security/tls-and-ssl#values-for-tls-versions" >}}), enhancing security by blocking outdated and insecure TLS versions. - -## 3 - Broken Object Property Level Authorization (BOPLA) - -REST APIs provide endpoints that return all properties of an object in the reponse, some of which could contain sensitive data. Conversely, GraphQL API requests allow the clients to specify which properties of an object should be retrieved. - -From a REST API perspespective, it is the responsibility of the API to ensure that the correct data is retrieved. The Gateway can provide additional security measures as follows: -- [Body transformation plugins]({{< ref "advanced-configuration/transform-traffic/request-method-transform" >}}) can be used to remove sensitive data from the response if the API is unable to do so itself. -- [JSON Schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) to validate that an incoming data payload meets a defined schema. Payloads that do not adhere to the schema are rejected. - -For GraphQL APIs, the gateway can be used to define the GraphQL schemas, limiting which properties of an object are queryable. Furthermore, access can be controlled to specific properties by configuring [field-based permissions]({{< ref "graphql/field-based-permissions" >}}). Subsequently, the visiblity of a schema's properties can be controlled for different consumers of the GraphQL API. - - -## 4 - Unrestricted Resource Consumption - -APIs can become overwhelmed if the resources upon which they rely are fully consumed. In such situations, an API can no longer operate, and will no longer be able to service requests, or potentially even be unable to complete those currently in progress. - -As an APIM product, Tyk Gateway can be configured to use the following out-of-the-box functionality when handling API traffic for legitimate users: - -- [Circuit breaker]({{< ref "planning-for-production/ensure-high-availability/circuit-breakers" >}}) -- [Payload size limiter]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}) -- [Rate limiter / throttling]({{< ref "getting-started/key-concepts/rate-limiting" >}}) -- [Caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) -- [Enforced timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) -- [IP restriction]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting#ip-blocklist-middleware" >}}) -- [GraphQL query complexity limiting]({{< ref "graphql/complexity-limiting" >}}) - -For Denial of Service (DoS) attacks it is recommended to use specialist 3rd party services to prevent DoS attacks from reaching your infrastructure. - -## 5 - Broken Function Level Authorization (BFLA) - -To prevent Broken Functional Level Authorization (BFLA), requests to REST API endpoints must be authorized correctly. This involves validating client permissions against the requested resources. Requests from clients with insufficient permissions must be rejected. - -Tyk offers several measures to assist with protection from BFLA threats: - -- *Establish path-based access rights*: [Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) are predefined sets of rules which grant access to particular APIs. These can include [path-based permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}), which restrict access to particular paths and methods within an API. Clients can be assigned one or more policies which the Gateway will validate when it receives a request. -- *Access Control*: Tyk has plugins that control access to API endpoints. They are known as [allowlist]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) and [blocklist]({{< ref "product-stack/tyk-gateway/middleware/block-list-tyk-oas#configuring-the-block-list-in-the-api-designer" >}}) and can be configured via the Endpoint Designer of an API Definition. Both plugins grant and deny access to API paths and methods, but do so in different ways, which makes them mutually exclusive. When the allowlist plugin is used, only the marked paths and methods are allowed, all other paths and methods are blocked. This can be perceived as *deny by default* since it provides the least privileges. The reverse is true for the blocklist plugin, only the paths and methods marked as blocklist are blocked, all other paths and methods are allowed. It is recommended to use the *allowlist* approach, since it is the most restrictive, only allowing marked endpoint paths and paths. -- *CORS*: This [functionality]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) allows the Tyk Gateway to limit API access to particular browser-based consumers. - -## 6 - Unrestricted Access To Sensitive Business Flows - -This involves attackers understanding an API's business model, identifying sensitive business processes and automating unauthorized access to these processes. This can disrupt business operations by preventing legitimate users from making purchases for example. Attackers manually locate target resources and work to bypass any existing mitigation measures. - -These business flows are application specific, being unique to the API's backend systems. Subsequently, the API owner is responsible for addressing the security issues posed by this threat. Furthermore, to discover points of exploitation and test IT security breaches, pentesting is recommended. - -The APIM can be used to protect sensitive endpoints using authentication and authorization. Tyk recommends considering splitting Admin APIs from client facing APIs. This allows authentication and authorization checks to be defined and managed by different governance models, thus establishing clear role models. - -Furthermore, the APIM can validate authentication and authorization by scope to ensure that the client has the correct credentials before the upstream API processes the request. - -## 7 - Server Side Request Forgery (SSRF) - -Server Side Request Forgery (SSRF) is a security vulnerability in web applications where an attacker can manipulate a server to make unauthorized requests to internal or external resources, potentially leading to data leaks or remote code execution. This can allow an attacker to probe or attack other parts of the application's infrastructure, potentially compromising sensitive information and systems. - -This is application specific and is largely the responsibility of the API. However, Tyk Gateway can assist with this form of attack through [JSON schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) for incoming payloads. For example, a schema could contain a regular expression to reject localhost URLs. These URLs could be used by an attacker to perform port scanning for example. - -## 8 - Security Misconfiguration - -Tyk offers several mechanisms to help protect an API from Security Misconfiguration exploits: - -- Use [response header manipulation]({{< ref "advanced-configuration/transform-traffic/response-headers" >}}) to remove or modify API sensitive information. -- Use [response body manipulation]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) to remove or modify parts containing sensitive information. -- [TLS]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) to ensure that clients use the right service and encrypt traffic. -- [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) with both the clients and API to ensure that callers with explicitly allowed client certificates can connect to the endpoints. -- [Error Templates]({{< ref "advanced-configuration/error-templates" >}}) can be used to return a response body based on status code and content type. This can help minimize the implementation details returned to the client. -- [CORS functionality]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) allows the Tyk Gateway to limit API access to particular browser-based consumers. -- [Policy Path-Based Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) and the [allowlist]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) plugin can be used to prevent clients from accessing API endpoints using non-authorized HTTP methods. For example, blocking the use of the DELETE method on an endpoint which should only accept GET requests. -- [Environment variables]({{< ref "tyk-environment-variables" >}}) can help standardize configuration across containerised deployments. -- For GraphQL APIs: - - [Schema Introspection]({{< ref "graphql/introspection" >}}) ensures that the Tyk Dashboard automatically uses the schema of the upstream GraphQL API and can keep it synchronised if it changes. - - [GraphQL Schema Validation]({{< ref "graphql/validation#schema-validation" >}}) prevents invalid schemas from being saved. This catches errors such as duplicate type names and usage of unknown types. -- Third-party [Secret Storage]({{< ref "tyk-configuration-reference/kv-store" >}}) to centralise configuration of sensitive data such as passwords. This data can then be dynamically referenced by Tyk configuration files, rather than being hard coded. -- Users can can write their own [custom plugins]({{< ref "plugins" >}}) in a variety of languages, either directly or through gRPC calls, to implement their requirements. - -The Ops team should also take reponsibility for monitoring the APIs for errors and patching accordingly. Regular [Penetration Tests](https://en.wikipedia.org/wiki/Penetration_test) should be scheduled to ensure the security of published services. Tyk, through our Professional Services or Partners, can assist in the process. - -## 9 - Improper Inventory Management - -Tyk offers the following features to support improper inventory management: - -- [Versioning]({{< ref "getting-started/key-concepts/versioning" >}}) allows newer versions of APIs to coexist with the older versions, facilitating deprecation and sunsetting. -- [Sunsetting]({{< ref "product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning#sunsetting-api-versions" >}}) allows versions to be configured with an Expiry Time, ensuring that a version is not accessible after the expiry date. -- [Key expiry]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) ensures that access to an API is short lived, with a per key configurable Time to Live (TTL) for which a token remains valid before it expires. The implementation of key expiry, with a configurable Time To Live (TTL), mitigates the impact of compromised tokens by narrowing the window of vulnerability. Setting a TTL reduces the time frame during which a compromised token could be exploited, enhancing overall security. -- Tyk Developer Portal catalogs APIs and facilitates granting access to them. Integrated with a CMDB it can help keep documentation updated. -- [Tyk Analytics]({{< ref "tyk-dashboard-analytics" >}}) can help identify the stagnant APIs and used stale APIs. -- [Tyk Pump]({{< ref "tyk-pump" >}}) can ship metrics needed for analytics into Tyk Dashboard and other systems. -- Third-party [Secret Storage]({{< ref "tyk-configuration-reference/kv-store" >}}) can be used to centralise and protect sensitive configuration data such as passwords, rather than exposing them as plain text in Tyk configuration files. - -In addition, it is best practice to consider any definition of done to include corresponding documentation updates. - -## 10 - Unsafe Consumption Of APIs - -Attackers may identify and target the third party APIs/services used by an API. This can lead to leaked sensitive information, denial of service, injection attacks etc. - -It is the responsibility of the API to provide protection against these attacks. However, if the organization uses the Gateway as a forwarding proxy to third party APIs, then the following features could be used: - -- [JSON Schema validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-classic" >}}) to validate that an incoming data payload meets a defined schema. Payloads that do not adhere to the schema are rejected. -- [TLS]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) to ensure that clients use the right service and encrypt traffic. -- [Versioning]({{< ref "getting-started/key-concepts/versioning" >}}) allows newer versions of third party APIs to coexist with the older versions, facilitating deprecation and sunsetting. diff --git a/tyk-docs/content/plan-your-api-integration.md b/tyk-docs/content/plan-your-api-integration.md index 7f80aa89be..3730849d1d 100644 --- a/tyk-docs/content/plan-your-api-integration.md +++ b/tyk-docs/content/plan-your-api-integration.md @@ -44,7 +44,7 @@ With your goals in mind, you’ll now design the API: - **Define Endpoints and Methods**: Identify the actions your API should allow (e.g., GET for retrieving data, POST for adding data). - **Specify Data Models**: Define the format of data exchanged. For instance, will product data include details like price, description, and availability? -**Security Consideration:** Plan how users will [authenticate]({{< ref "apim-best-practice/api-security-best-practice/authentication/#implement-appropriate-authentication" >}}). Will they use [tokens]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) or [OAuth]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) (for user-specific access)? Tyk offers tools to implement any of these methods effectively. +**Security Consideration:** Plan how users will [authenticate]({{< ref "api-management/security-best-practices#authentication" >}}). Will they use [tokens]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) or [OAuth]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) (for user-specific access)? Tyk offers tools to implement any of these methods effectively. #### **Step 3: Document the API** diff --git a/tyk-docs/content/shared/portal-developer-analytics.md b/tyk-docs/content/shared/portal-developer-analytics.md index eb63fab3f2..ac440cf346 100644 --- a/tyk-docs/content/shared/portal-developer-analytics.md +++ b/tyk-docs/content/shared/portal-developer-analytics.md @@ -35,4 +35,4 @@ curl "https://admin.cloud.tyk.io/api/activity/keys/aggregate/add2b342,5f1d9603,/ ],"pages":0} ``` -In example above `add2b342,5f1d9603`, is 2 users keys. Note that this example shows [hashed key values as described here]({{< ref "basic-config-and-security/security#key-hashing" >}}). Key hashing is turned on for the Cloud, but for Multi-Cloud and Self-Managed installations you can also turn it off. Hashed keys mean that the API administrator does not have access to real user keys, but they can still use the hashed values for showing analytics. \ No newline at end of file +In example above `add2b342,5f1d9603`, is 2 users keys. Note that this example shows [hashed key values as described here]({{< ref "basic-config-and-security/security/key-hashing#introduction" >}}). Key hashing is turned on for the Cloud, but for Multi-Cloud and Self-Managed installations you can also turn it off. Hashed keys mean that the API administrator does not have access to real user keys, but they can still use the hashed values for showing analytics. \ No newline at end of file diff --git a/tyk-docs/content/tyk-cloud/environments-&-deployments/managing-apis.md b/tyk-docs/content/tyk-cloud/environments-&-deployments/managing-apis.md index b4d4c34ae5..66c8db08ba 100644 --- a/tyk-docs/content/tyk-cloud/environments-&-deployments/managing-apis.md +++ b/tyk-docs/content/tyk-cloud/environments-&-deployments/managing-apis.md @@ -20,7 +20,7 @@ From there you have access to the full scope of Tyk API management functionality * [Adding APIs]({{< ref "getting-started/create-api" >}}) to Tyk, including REST and GraphQL APIs * Applying Quotas and Rate limits via [Security Policies]({{< ref "getting-started/create-security-policy" >}}) and [Keys]({{< ref "getting-started/create-api-key" >}}) -* [Securing]({{< ref "basic-config-and-security/security" >}}) your APIs +* [Securing]({{< ref "api-management/security-best-practices#securing-apis-with-tyk" >}}) your APIs * Viewing granular [Analytics]({{< ref "tyk-dashboard-analytics" >}}) for your Tyk managed APIs * [Transform traffic]({{< ref "advanced-configuration/transform-traffic" >}}) with the Tyk API Designer * Add integration options such as [SSO]({{< ref "advanced-configuration/integrate/sso" >}}) and [3rd Party IdentityProviders]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) diff --git a/tyk-docs/data/alias.json b/tyk-docs/data/alias.json index 607978d539..6f49a3c13c 100644 --- a/tyk-docs/data/alias.json +++ b/tyk-docs/data/alias.json @@ -1,4 +1,15 @@ { + "security/": "#overview", + "apim-best-practice/overview": "#overview", + "apim-best-practice/api-security-best-practice/overview": "#overview", + "apim-best-practice/api-security-best-practice/authentication": "#authentication", + "apim-best-practice/api-security-best-practice/authorisation": "#authorization", + "apim-best-practice/api-security-best-practice/authorisation-levels": "#managing-authorization-levels", + "apim-best-practice/api-security-best-practice/resource-consumption": "#resource-consumption", + "apim-best-practice/api-security-best-practice/configuration": "#configuration-best-practices", + "apim-best-practice/api-security-best-practice/governance": "#governing-apis-effectively", + "basic-config-and-security/security": "#securing-apis-with-tyk", + "basic-config-and-security/security/owasp-top-tne": "#mitigating-the-top-10-owasp-threats", "advanced-configuration/integrate/api-auth-mode/json-web-tokens": "#use-json-web-tokens-jwt", "advanced-configuration/integrate/api-auth-mode/oidc-auth0-example": "#redirect-the-user-to-a-login-page", "advanced-configuration/integrate/api-auth-mode/open-id-connect": "#use-openid-connect", diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index a0665e19a4..58b2b07175 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -1137,6 +1137,10 @@ menu: category: Directory show: False menu: + - title: "Security Best Practices" + category: Page + show: True + path: /api-management/security-best-practices - title: "Product Stack" path: /tyk-stack category: Label @@ -1294,10 +1298,6 @@ menu: path: /advanced-configuration/manage-multiple-environments/with-tyk-on-premises category: Page show: True - - title: "How to secure your APIs in Tyk" - path: /basic-config-and-security/security - category: Page - show: True - title: "Request Middleware Chain" path: /concepts/middleware-execution-order category: Page @@ -1374,10 +1374,6 @@ menu: path: /basic-config-and-security/security/key-level-security category: Page show: True - - title: "Tyk and OWASP Top Ten Threats" - path: /basic-config-and-security/security/owasp-top-ten - category: Page - show: True - title: "TLS and SSL" path: /basic-config-and-security/security/tls-and-ssl category: Page @@ -4770,68 +4766,6 @@ menu: path: /tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal category: Page show: True - - title: "APIM Best Practice" - path: /apim-best-practice/overview - category: Label - show: True - menu: - - title: "Overview" - path: /apim-best-practice/overview - category: Page - show: True - - title: "API Security Best Practice" - category: Directory - show: True - menu: - - title: "API Security Overview" - path: /apim-best-practice/api-security-best-practice/overview - category: Page - show: True - - title: "Authentication" - path: /apim-best-practice/api-security-best-practice/authentication - category: Page - show: True - - title: "Authorisation" - path: /apim-best-practice/api-security-best-practice/authorisation - category: Page - show: True - - title: "Authorisation Levels" - path: /apim-best-practice/api-security-best-practice/authorisation-levels - category: Page - show: True - - title: "Resource Consumption" - path: /apim-best-practice/api-security-best-practice/resource-consumption - category: Page - show: True - - title: "Configuration" - path: /apim-best-practice/api-security-best-practice/configuration - category: Page - show: True - - title: "Governance" - path: /apim-best-practice/api-security-best-practice/governance - category: Page - show: True - - title: "API Lifecycle Best Practice" - category: Page - show: False - - title: "API Platform Architectures" - category: Page - show: False - - title: "Sector Specific Guides" - category: Page - show: False - - title: "API Observability" - category: Page - show: False - - title: "API Products" - category: Page - show: False - - title: "APIs as integration" - category: Page - show: False - - title: "Creating a PoC" - category: Page - show: False - title: "Orphan" path: /orphan category: Label From 7ee773312a6a555996e30b47b0ff2e2aefb2ef37 Mon Sep 17 00:00:00 2001 From: Leonid Bugaev Date: Tue, 3 Dec 2024 15:12:47 +0300 Subject: [PATCH 11/39] Update page availability in each docs version (#5774) Generate and update file to show when a url was added to docs Co-authored-by: yurisasuke --- tyk-docs/data/page_available_since.json | 781 ++++++++++++++++++------ 1 file changed, 580 insertions(+), 201 deletions(-) diff --git a/tyk-docs/data/page_available_since.json b/tyk-docs/data/page_available_since.json index 11e668fee5..5a78258ed0 100644 --- a/tyk-docs/data/page_available_since.json +++ b/tyk-docs/data/page_available_since.json @@ -231,7 +231,7 @@ "all_versions_are_similar_to_path": true }, "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -245,10 +245,10 @@ "/docs/3.2/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", "/docs/3.1/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", "/docs/3-lts/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/openid-connect/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/advanced-configuration/integrate/api-auth-mode/oidc-auth0-example/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -262,10 +262,10 @@ "/docs/3.2/": "/advanced-configuration/integrate/api-auth-mode/oidc-auth0-example/", "/docs/3.1/": "/advanced-configuration/integrate/api-auth-mode/oidc-auth0-example/", "/docs/3-lts/": "/advanced-configuration/integrate/api-auth-mode/oidc-auth0-example/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/openid-connect/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/advanced-configuration/integrate/api-auth-mode/open-id-connect/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -279,7 +279,7 @@ "/docs/3.2/": "/advanced-configuration/integrate/api-auth-mode/open-id-connect/", "/docs/3.1/": "/advanced-configuration/integrate/api-auth-mode/open-id-connect/", "/docs/3-lts/": "/advanced-configuration/integrate/api-auth-mode/open-id-connect/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/openid-connect/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/advanced-configuration/integrate/sso/": { "all_versions_are_similar_to_path": true @@ -374,7 +374,7 @@ "all_versions_are_similar_to_path": true }, "/advanced-configuration/manage-multiple-environments/tyk-sync/": { - "/docs/": "/product-stack/tyk-sync/overview/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", "/docs/5.3/": "/tyk-sync/", @@ -388,7 +388,7 @@ "/docs/3.2/": "/tyk-sync/", "/docs/3.1/": "/tyk-sync/", "/docs/3-lts/": "/tyk-sync/", - "/docs/nightly/": "/product-stack/tyk-sync/overview/" + "/docs/nightly/": "/api-management/automations/" }, "/advanced-configuration/manage-multiple-environments/with-tyk-cloud-classic/": { "all_versions_are_similar_to_path": true @@ -816,6 +816,40 @@ "/docs/5.3/": "/api-management/async-apis/use-cases/", "/docs/nightly/": "/api-management/async-apis/use-cases/" }, + "/api-management/authentication-authorization/": { + "/docs/": "/api-management/authentication-authorization/", + "/docs/nightly/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/" + }, + "/api-management/automations/": { + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/", + "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/", + "/docs/5.4/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/5.3/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/5.2/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/5.1/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/5.0/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/4.3/": "/tyk-stack/tyk-operator/migration/", + "/docs/4.2/": "/tyk-stack/tyk-operator/migration/", + "/docs/4.1/": "/tyk-stack/tyk-operator/migration/", + "/docs/4.0/": "/tyk-stack/tyk-operator/migration/", + "/docs/3.2/": "/tyk-sync/", + "/docs/3.1/": "/tyk-sync/", + "/docs/3-lts/": "/tyk-sync/" + }, "/api-management/manage-apis/api-operations/api-observability/": { "/docs/": "/api-management/manage-apis/api-operations/api-observability/", "/docs/5.5/": "/api-management/manage-apis/api-operations/api-observability/", @@ -845,6 +879,26 @@ "/api-management/oss/gateway-api/": { "all_versions_are_similar_to_path": true }, + "/api-management/security-best-practices/": { + "/docs/nightly/": "/api-management/security-best-practices/", + "/docs/5.0/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/4.3/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/4.2/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/4.1/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/4.0/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/3.2/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/3.1/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/3-lts/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", + "/docs/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.5/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.4/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.3/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.2/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.1/": "/apim-best-practice/api-security-best-practice/governance/" + }, + "/api-management/upstream-authentication/": { + "/docs/nightly/": "/api-management/upstream-authentication/" + }, "/apim-best-practice/api-security-best-practice/authentication/": { "/docs/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/authentication/", @@ -852,7 +906,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/authentication/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/authentication/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/authorisation-levels/": { "/docs/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", @@ -861,7 +915,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/authorisation-levels/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/authorisation/": { "/docs/": "/apim-best-practice/api-security-best-practice/authorisation/", @@ -870,7 +924,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authorisation/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/authorisation/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/authorisation/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/authorisation/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/configuration/": { "/docs/": "/apim-best-practice/api-security-best-practice/configuration/", @@ -879,7 +933,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/configuration/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/configuration/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/configuration/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/configuration/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/governance/": { "/docs/": "/apim-best-practice/api-security-best-practice/governance/", @@ -888,7 +942,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/governance/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/governance/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/governance/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/overview/": { "/docs/": "/apim-best-practice/api-security-best-practice/overview/", @@ -897,7 +951,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/overview/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/overview/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/overview/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/overview/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/api-security-best-practice/resource-consumption/": { "/docs/": "/apim-best-practice/api-security-best-practice/resource-consumption/", @@ -906,7 +960,7 @@ "/docs/5.3/": "/apim-best-practice/api-security-best-practice/resource-consumption/", "/docs/5.2/": "/apim-best-practice/api-security-best-practice/resource-consumption/", "/docs/5.1/": "/apim-best-practice/api-security-best-practice/resource-consumption/", - "/docs/nightly/": "/apim-best-practice/api-security-best-practice/resource-consumption/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim-best-practice/overview/": { "/docs/": "/apim-best-practice/overview/", @@ -915,7 +969,7 @@ "/docs/5.3/": "/apim-best-practice/overview/", "/docs/5.2/": "/apim-best-practice/overview/", "/docs/5.1/": "/apim-best-practice/overview/", - "/docs/nightly/": "/apim-best-practice/overview/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/apim/": { "all_versions_are_similar_to_path": true @@ -1036,10 +1090,24 @@ "all_versions_are_similar_to_path": true }, "/basic-config-and-security/security/": { - "all_versions_are_similar_to_path": true + "/docs/": "/basic-config-and-security/security/", + "/docs/5.5/": "/basic-config-and-security/security/", + "/docs/5.4/": "/basic-config-and-security/security/", + "/docs/5.3/": "/basic-config-and-security/security/", + "/docs/5.2/": "/basic-config-and-security/security/", + "/docs/5.1/": "/basic-config-and-security/security/", + "/docs/5.0/": "/basic-config-and-security/security/", + "/docs/4.3/": "/basic-config-and-security/security/", + "/docs/4.2/": "/basic-config-and-security/security/", + "/docs/4.1/": "/basic-config-and-security/security/", + "/docs/4.0/": "/basic-config-and-security/security/", + "/docs/3.2/": "/basic-config-and-security/security/", + "/docs/3.1/": "/basic-config-and-security/security/", + "/docs/3-lts/": "/basic-config-and-security/security/", + "/docs/nightly/": "/api-management/security-best-practices/" }, "/basic-config-and-security/security/authentication-&-authorization/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1053,10 +1121,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1070,10 +1138,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1087,10 +1155,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1104,10 +1172,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1121,10 +1189,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication--authorization/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1132,7 +1200,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/", + "/docs/nightly/": "/api-management/authentication-authorization/", "/docs/4.2/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/4.1/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/4.0/": "/basic-config-and-security/security/authentication-&-authorization/", @@ -1141,7 +1209,7 @@ "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/" }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1149,7 +1217,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", + "/docs/nightly/": "/api-management/authentication-authorization/", "/docs/4.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/4.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/4.0/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", @@ -1158,7 +1226,7 @@ "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/" }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1166,7 +1234,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", + "/docs/nightly/": "/api-management/authentication-authorization/", "/docs/4.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/4.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/4.0/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", @@ -1175,7 +1243,7 @@ "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/" }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1183,7 +1251,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", + "/docs/nightly/": "/api-management/authentication-authorization/", "/docs/4.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", "/docs/4.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", "/docs/4.0/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/", @@ -1192,7 +1260,7 @@ "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/" }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1200,7 +1268,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", + "/docs/nightly/": "/api-management/authentication-authorization/", "/docs/4.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/4.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/4.0/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", @@ -1209,7 +1277,7 @@ "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/" }, "/basic-config-and-security/security/authentication-authorization/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1220,13 +1288,41 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/basic-auth/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/bearer-tokens/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/": { "/docs/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", @@ -1240,16 +1336,58 @@ "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/" }, "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/hmac-signatures/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", @@ -1259,29 +1397,71 @@ "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/multiple-auth/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth-2-0/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/auth-code-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1292,10 +1472,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/client-credentials-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1306,10 +1486,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/refresh-token-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1317,10 +1497,10 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/username-password-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1331,10 +1511,10 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/3.1/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/oauth2.0/auth-code-grant/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1342,19 +1522,61 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/open-keyless/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/openid-connect/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/physical-token-expiry/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", @@ -1368,10 +1590,24 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/certificate-pinning/": { "/docs/": "/security/certificate-pinning/", @@ -1438,19 +1674,89 @@ "all_versions_are_similar_to_path": true }, "/basic-config-and-security/security/mutual-tls/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", + "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", + "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", + "/docs/5.2/": "/basic-config-and-security/security/mutual-tls/", + "/docs/5.1/": "/basic-config-and-security/security/mutual-tls/", + "/docs/5.0/": "/basic-config-and-security/security/mutual-tls/", + "/docs/4.3/": "/basic-config-and-security/security/mutual-tls/", + "/docs/4.2/": "/basic-config-and-security/security/mutual-tls/", + "/docs/4.1/": "/basic-config-and-security/security/mutual-tls/", + "/docs/4.0/": "/basic-config-and-security/security/mutual-tls/", + "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/", + "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/", + "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/mutual-tls/client-mtls/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/5.2/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/5.1/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/5.0/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/4.3/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/4.2/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/4.1/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/4.0/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/client-mtls/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/mutual-tls/concepts/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/5.2/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/5.1/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/5.0/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/4.3/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/4.2/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/4.1/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/4.0/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/concepts/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/mutual-tls/upstream-mtls/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/5.2/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/5.1/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/5.0/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/4.3/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/4.2/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/4.1/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/4.0/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/owasp-top-ten/": { - "all_versions_are_similar_to_path": true + "/docs/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.5/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.4/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.3/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.2/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.1/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.0/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/4.3/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/4.2/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/4.1/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/4.0/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/3.2/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/3.1/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/3-lts/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/nightly/": "/api-management/security-best-practices/" }, "/basic-config-and-security/security/password-policy/": { "all_versions_are_similar_to_path": true @@ -1485,7 +1791,7 @@ "all_versions_are_similar_to_path": true }, "/basic-config-and-security/security/tls-and-ssl/mutual-tls/": { - "/docs/": "/basic-config-and-security/security/mutual-tls/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", @@ -1499,10 +1805,10 @@ "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/", "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/", "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/", - "/docs/nightly/": "/basic-config-and-security/security/mutual-tls/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/your-apis/oauth2.0/revoke-oauth-tokens/": { - "/docs/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.4/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", @@ -1510,10 +1816,24 @@ "/docs/5.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.0/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/4.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", - "/docs/nightly/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/authentication-authorization/", + "/docs/5.5/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.4/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.0/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.0/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3-lts/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/compose-apis/virtual-endpoints/": { "/docs/": "/advanced-configuration/compose-apis/virtual-endpoints/", @@ -2145,6 +2465,10 @@ "/docs/3.1/": "/frequently-asked-questions/long-term-support-releases/", "/docs/3-lts/": "/frequently-asked-questions/long-term-support-releases/" }, + "/developer-support/release-notes/cloud/": { + "/docs/": "/developer-support/release-notes/cloud/", + "/docs/nightly/": "/developer-support/release-notes/cloud/" + }, "/developer-support/special-releases-and-features/early-access-features/": { "/docs/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.5/": "/developer-support/special-releases-and-features/early-access-features/", @@ -2680,6 +3004,14 @@ "/getting-started/": { "all_versions_are_similar_to_path": true }, + "/getting-started/configure-first-api/": { + "/docs/": "/getting-started/configure-first-api/", + "/docs/nightly/": "/getting-started/configure-first-api/" + }, + "/getting-started/create-account/": { + "/docs/": "/getting-started/create-account/", + "/docs/nightly/": "/getting-started/create-account/" + }, "/getting-started/create-api-key/": { "all_versions_are_similar_to_path": true }, @@ -3949,6 +4281,10 @@ "/docs/4.0/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", "/docs/nightly/": "/getting-started/using-oas-definitions/versioning-an-oas-api/" }, + "/getting-started/using-tyk-dashboard/": { + "/docs/": "/getting-started/using-tyk-dashboard/", + "/docs/nightly/": "/getting-started/using-tyk-dashboard/" + }, "/getting-started/with-tyk-on-premises/installation/on-aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", @@ -4255,6 +4591,10 @@ "/docs/5.1/": "/orphan/", "/docs/nightly/": "/orphan/" }, + "/plan-your-api-integration/": { + "/docs/": "/plan-your-api-integration/", + "/docs/nightly/": "/plan-your-api-integration/" + }, "/planning-for-production/": { "all_versions_are_similar_to_path": true }, @@ -5841,7 +6181,7 @@ "/docs/5.2/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.1/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", - "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal/", + "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", "/docs/4.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", "/docs/4.2/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", "/docs/4.1/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", @@ -5855,7 +6195,7 @@ "/docs/5.2/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.1/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", - "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-with-mysql/" + "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-with-postgresql/" }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", @@ -6029,6 +6369,10 @@ "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/" }, + "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/": { + "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/", + "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/" + }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", @@ -7105,18 +7449,22 @@ "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.6/", "/docs/nightly/": "/product-stack/tyk-gateway/release-notes/version-5.6/" }, + "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/": { + "/docs/": "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/", + "/docs/nightly/": "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/" + }, "/product-stack/tyk-operator/advanced-configurations/api-categories/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/api-categories/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/api-categories/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/api-versioning/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/api-versioning/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/api-versioning/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/client-authentication/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/client-authentication/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/client-authentication/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/client-authentication/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/custom-plugins/": { "/docs/": "/product-stack/tyk-operator/advanced-configurations/custom-plugins/", @@ -7129,118 +7477,118 @@ "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/graphql-federation/" }, "/product-stack/tyk-operator/advanced-configurations/internal-looping/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/internal-looping/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/internal-looping/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/internal-looping/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/management-of-api/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/tls-certificate/": { - "/docs/": "/product-stack/tyk-operator/advanced-configurations/tls-certificate/", - "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/tls-certificate/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/create-an-api-overview/": { - "/docs/": "/product-stack/tyk-operator/getting-started/create-an-api-overview/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/create-an-api-overview/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/create-an-oas-api/": { - "/docs/": "/product-stack/tyk-operator/getting-started/create-an-oas-api/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/create-an-oas-api/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/example-tyk-oas-api/": { - "/docs/": "/product-stack/tyk-operator/getting-started/example-tyk-oas-api/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/example-tyk-oas-api/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-graphql/": { - "/docs/": "/product-stack/tyk-operator/getting-started/quick-start-graphql/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-graphql/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/quick-start-graphql/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-http/": { - "/docs/": "/product-stack/tyk-operator/getting-started/quick-start-http/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-http/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/quick-start-http/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-tcp/": { - "/docs/": "/product-stack/tyk-operator/getting-started/quick-start-tcp/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-tcp/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/quick-start-tcp/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-udg/": { - "/docs/": "/product-stack/tyk-operator/getting-started/quick-start-udg/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-udg/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/quick-start-udg/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/secure-an-api-overview/": { - "/docs/": "/product-stack/tyk-operator/getting-started/secure-an-api-overview/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/secure-an-api-overview/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/secure-an-oas-api/": { - "/docs/": "/product-stack/tyk-operator/getting-started/secure-an-oas-api/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/secure-an-oas-api/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/security-policy-example/": { - "/docs/": "/product-stack/tyk-operator/getting-started/security-policy-example/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/security-policy-example/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/": { - "/docs/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/", "/docs/5.4/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/": { - "/docs/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/", "/docs/5.4/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/", - "/docs/nightly/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/custom-resources/": { - "/docs/": "/product-stack/tyk-operator/key-concepts/custom-resources/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/custom-resources/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/custom-resources/", - "/docs/nightly/": "/product-stack/tyk-operator/key-concepts/custom-resources/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/key-concepts/": { - "/docs/": "/tyk-operator/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", - "/docs/nightly/": "/tyk-operator/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/operator-context/": { - "/docs/": "/product-stack/tyk-operator/key-concepts/operator-context/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/operator-context/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/operator-context/", - "/docs/nightly/": "/product-stack/tyk-operator/key-concepts/operator-context/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/operator-user/": { - "/docs/": "/product-stack/tyk-operator/key-concepts/operator-user/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/operator-user/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/operator-user/", - "/docs/nightly/": "/product-stack/tyk-operator/key-concepts/operator-user/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/api-definition/": { - "/docs/": "/product-stack/tyk-operator/reference/api-definition/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/api-definition/", - "/docs/nightly/": "/product-stack/tyk-operator/reference/api-definition/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/security-policy/": { - "/docs/": "/product-stack/tyk-operator/reference/security-policy/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/security-policy/", - "/docs/nightly/": "/product-stack/tyk-operator/reference/security-policy/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/tyk-oas-api-definition/": { - "/docs/": "/product-stack/tyk-operator/reference/tyk-oas-api-definition/", - "/docs/nightly/": "/product-stack/tyk-operator/reference/tyk-oas-api-definition/" + "/docs/": "/api-management/automations/", + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/version-compatibility/": { - "/docs/": "/product-stack/tyk-operator/reference/version-compatibility/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/version-compatibility/", "/docs/5.4/": "/product-stack/tyk-operator/reference/version-compatibility/", - "/docs/nightly/": "/product-stack/tyk-operator/reference/version-compatibility/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/release-notes/operator-0.16/": { "/docs/": "/product-stack/tyk-operator/release-notes/operator-0.16/", @@ -7275,35 +7623,27 @@ "/docs/nightly/": "/product-stack/tyk-operator/release-notes/overview/" }, "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/": { - "/docs/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/", - "/docs/nightly/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/": { - "/docs/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.4/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.3/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.2/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.1/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", - "/docs/nightly/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/tyk-ingress-controller/": { - "/docs/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.4/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.3/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.2/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.1/": "/product-stack/tyk-operator/tyk-ingress-controller/", - "/docs/nightly/": "/product-stack/tyk-operator/tyk-ingress-controller/", - "/docs/5.0/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/4.3/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/4.2/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/4.1/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/4.0/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/3.2/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/3.1/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/3-lts/": "/tyk-oss/ce-kubernetes-ingress/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/": { "/docs/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", @@ -8143,6 +8483,9 @@ "/docs/5.3/": "/product-stack/tyk-streaming/overview/", "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, + "/product-stack/tyk-streaming/streams-configuration-using-ui/": { + "/docs/nightly/": "/product-stack/tyk-streaming/streams-configuration-using-ui/" + }, "/product-stack/tyk-streaming/troubleshooting/": { "/docs/": "/product-stack/tyk-streaming/troubleshooting/", "/docs/5.5/": "/product-stack/tyk-streaming/troubleshooting/", @@ -8151,46 +8494,46 @@ "/docs/nightly/": "/product-stack/tyk-streaming/troubleshooting/" }, "/product-stack/tyk-sync/commands/sync-dump/": { - "/docs/": "/product-stack/tyk-sync/commands/sync-dump/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-dump/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-dump/", - "/docs/nightly/": "/product-stack/tyk-sync/commands/sync-dump/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-examples/": { - "/docs/": "/product-stack/tyk-sync/commands/sync-examples/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-examples/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-examples/", - "/docs/nightly/": "/product-stack/tyk-sync/commands/sync-examples/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-publish/": { - "/docs/": "/product-stack/tyk-sync/commands/sync-publish/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-publish/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-publish/", - "/docs/nightly/": "/product-stack/tyk-sync/commands/sync-publish/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-sync/": { - "/docs/": "/product-stack/tyk-sync/commands/sync-sync/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-sync/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-sync/", - "/docs/nightly/": "/product-stack/tyk-sync/commands/sync-sync/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-update/": { - "/docs/": "/product-stack/tyk-sync/commands/sync-update/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-update/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-update/", - "/docs/nightly/": "/product-stack/tyk-sync/commands/sync-update/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/installing-tyk-sync/": { - "/docs/": "/product-stack/tyk-sync/installing-tyk-sync/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/installing-tyk-sync/", "/docs/5.4/": "/product-stack/tyk-sync/installing-tyk-sync/", - "/docs/nightly/": "/product-stack/tyk-sync/installing-tyk-sync/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/overview/": { - "/docs/": "/product-stack/tyk-sync/overview/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", - "/docs/nightly/": "/product-stack/tyk-sync/overview/", + "/docs/nightly/": "/api-management/automations/", "/docs/5.3/": "/tyk-sync/", "/docs/5.2/": "/tyk-sync/", "/docs/5.1/": "/tyk-sync/", @@ -8223,22 +8566,22 @@ "/docs/nightly/": "/product-stack/tyk-sync/release-notes/sync-2.0/" }, "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/": { - "/docs/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/", - "/docs/nightly/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/": { - "/docs/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/", - "/docs/nightly/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/" + "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/": { - "/docs/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/", - "/docs/nightly/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/" + "/docs/nightly/": "/api-management/automations/" }, "/python-custom-auth-plugin/api-middleware-test/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/api-test/", @@ -8308,6 +8651,10 @@ "/docs/3-lts/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", "/docs/nightly/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/" }, + "/quickstart-configure-first-api/": { + "/docs/": "/getting-started/configure-first-api/", + "/docs/nightly/": "/getting-started/configure-first-api/" + }, "/reference-docs/user-roles/": { "/docs/": "/basic-config-and-security/security/dashboard/user-roles/", "/docs/5.5/": "/basic-config-and-security/security/dashboard/user-roles/", @@ -8708,7 +9055,7 @@ "/docs/5.1/": "/basic-config-and-security/security/", "/docs/5.0/": "/basic-config-and-security/security/", "/docs/4.3/": "/basic-config-and-security/security/", - "/docs/nightly/": "/basic-config-and-security/security/" + "/docs/nightly/": "/api-management/security-best-practices/" }, "/security/certificate-pinning/": { "all_versions_are_similar_to_path": true @@ -8790,7 +9137,7 @@ "/docs/nightly/": "/basic-config-and-security/security/tls-and-ssl/" }, "/security/tls-and-ssl/mutual-tls/": { - "/docs/": "/basic-config-and-security/security/mutual-tls/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", @@ -8804,10 +9151,10 @@ "/docs/3.2/": "/basic-config-and-security/security/mutual-tls/", "/docs/3.1/": "/basic-config-and-security/security/mutual-tls/", "/docs/3-lts/": "/basic-config-and-security/security/mutual-tls/", - "/docs/nightly/": "/basic-config-and-security/security/mutual-tls/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/security/your-apis/": { - "/docs/": "/basic-config-and-security/security/authentication--authorization/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -8815,10 +9162,10 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.0/": "/basic-config-and-security/security/authentication--authorization/", "/docs/4.3/": "/basic-config-and-security/security/authentication--authorization/", - "/docs/nightly/": "/basic-config-and-security/security/authentication--authorization/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/security/your-apis/bearer-tokens/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", @@ -8826,10 +9173,10 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/security/your-apis/json-web-tokens/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", @@ -8837,10 +9184,10 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/security/your-apis/oauth-2-0/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", @@ -8848,10 +9195,10 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/security/your-apis/openid-connect/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -8859,7 +9206,7 @@ "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/openid-connect/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/transform-traffic/endpoint-designer/": { "/docs/": "/advanced-configuration/transform-traffic/", @@ -9391,7 +9738,7 @@ "all_versions_are_similar_to_path": true }, "/tyk-apis/tyk-gateway-api/api-definition-objects/jwt/docs/basic-config-and-security/security/authentication-authorization/json-web-tokens/": { - "/docs/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", + "/docs/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", @@ -9405,7 +9752,7 @@ "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/nightly/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/" + "/docs/nightly/": "/api-management/authentication-authorization/" }, "/tyk-apis/tyk-gateway-api/api-definition-objects/other-root-objects/": { "all_versions_are_similar_to_path": true @@ -10643,6 +10990,10 @@ "/docs/3-lts/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", "/docs/nightly/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/" }, + "/tyk-components/": { + "/docs/": "/tyk-components/", + "/docs/nightly/": "/tyk-components/" + }, "/tyk-configuration-reference/": { "/docs/": "/tyk-oss-gateway/configuration/", "/docs/5.5/": "/tyk-oss-gateway/configuration/", @@ -11408,6 +11759,9 @@ "/docs/3-lts/": "/tyk-stack/tyk-developer-portal/portal-oauth-clients/", "/docs/nightly/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/" }, + "/tyk-developer-portal/streams/": { + "/docs/nightly/": "/tyk-developer-portal/tyk-portal-classic/streams/" + }, "/tyk-developer-portal/tutorials/": { "/docs/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", @@ -11826,6 +12180,9 @@ "/docs/3.1/": "/tyk-stack/tyk-developer-portal/portal-oauth-clients/", "/docs/3-lts/": "/tyk-stack/tyk-developer-portal/portal-oauth-clients/" }, + "/tyk-developer-portal/tyk-portal-classic/streams/": { + "/docs/nightly/": "/tyk-developer-portal/tyk-portal-classic/streams/" + }, "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", @@ -12146,7 +12503,7 @@ "all_versions_are_similar_to_path": true }, "/tyk-operator/": { - "/docs/": "/tyk-operator/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", "/docs/5.3/": "/tyk-operator/", @@ -12157,7 +12514,7 @@ "/docs/4.2/": "/tyk-operator/", "/docs/4.1/": "/tyk-operator/", "/docs/4.0/": "/tyk-operator/", - "/docs/nightly/": "/tyk-operator/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-oss-gateway/": { "all_versions_are_similar_to_path": true @@ -12223,7 +12580,7 @@ "all_versions_are_similar_to_path": true }, "/tyk-oss/ce-kubernetes-ingress/": { - "/docs/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/": "/tyk-on-prem/kubernetes-ingress/", "/docs/5.5/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/5.4/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/5.3/": "/tyk-oss/ce-kubernetes-ingress/", @@ -12237,7 +12594,7 @@ "/docs/3.2/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/3.1/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/3-lts/": "/tyk-oss/ce-kubernetes-ingress/", - "/docs/nightly/": "/product-stack/tyk-operator/tyk-ingress-controller/" + "/docs/nightly/": "/tyk-on-prem/kubernetes-ingress/" }, "/tyk-oss/ce-kubernetes/": { "all_versions_are_similar_to_path": true @@ -12279,6 +12636,10 @@ "/docs/3-lts/": "/tyk-oss/ce-debian-ubuntu/", "/docs/nightly/": "/tyk-oss/ce-debian-ubuntu/" }, + "/tyk-overview/": { + "/docs/": "/tyk-overview/", + "/docs/nightly/": "/tyk-overview/" + }, "/tyk-portal-api/": { "all_versions_are_similar_to_path": true }, @@ -13010,7 +13371,7 @@ "/docs/nightly/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/" }, "/tyk-stack/tyk-operator/access-an-api/": { - "/docs/": "/tyk-stack/tyk-operator/access-an-api/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/access-an-api/", @@ -13021,10 +13382,10 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/4.1/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/4.0/": "/tyk-stack/tyk-operator/access-an-api/", - "/docs/nightly/": "/tyk-stack/tyk-operator/access-an-api/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/create-an-api/": { - "/docs/": "/tyk-stack/tyk-operator/create-an-api/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/create-an-api/", @@ -13035,10 +13396,10 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/4.1/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/4.0/": "/tyk-stack/tyk-operator/create-an-api/", - "/docs/nightly/": "/tyk-stack/tyk-operator/create-an-api/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/getting-started-tyk-operator/": { - "/docs/": "/tyk-operator/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", "/docs/5.3/": "/tyk-stack/tyk-operator/getting-started-tyk-operator/", @@ -13049,13 +13410,27 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/getting-started-tyk-operator/", "/docs/4.1/": "/tyk-stack/tyk-operator/getting-started-tyk-operator/", "/docs/4.0/": "/tyk-stack/tyk-operator/getting-started-tyk-operator/", - "/docs/nightly/": "/tyk-operator/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/installing-tyk-operator/": { - "all_versions_are_similar_to_path": true + "/docs/": "/api-management/automations/", + "/docs/5.5/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/5.4/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/5.3/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/5.2/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/5.1/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/5.0/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/4.3/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/4.2/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/4.1/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/4.0/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/3.2/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/3.1/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/3-lts/": "/tyk-stack/tyk-operator/installing-tyk-operator/", + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/migration/": { - "/docs/": "/tyk-stack/tyk-operator/migration/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/migration/", "/docs/5.4/": "/tyk-stack/tyk-operator/migration/", "/docs/5.3/": "/tyk-stack/tyk-operator/migration/", @@ -13066,10 +13441,10 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/migration/", "/docs/4.1/": "/tyk-stack/tyk-operator/migration/", "/docs/4.0/": "/tyk-stack/tyk-operator/migration/", - "/docs/nightly/": "/tyk-stack/tyk-operator/migration/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/publish-an-api/": { - "/docs/": "/tyk-stack/tyk-operator/publish-an-api/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/publish-an-api/", @@ -13080,10 +13455,10 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/4.1/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/4.0/": "/tyk-stack/tyk-operator/publish-an-api/", - "/docs/nightly/": "/tyk-stack/tyk-operator/publish-an-api/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/secure-an-api/": { - "/docs/": "/tyk-stack/tyk-operator/secure-an-api/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/secure-an-api/", @@ -13094,17 +13469,17 @@ "/docs/4.2/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/4.1/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/4.0/": "/tyk-stack/tyk-operator/secure-an-api/", - "/docs/nightly/": "/tyk-stack/tyk-operator/secure-an-api/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-operator/tyk-operator-reconciliation/": { - "/docs/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.4/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.3/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.2/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.1/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.0/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/nightly/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/" + "/docs/nightly/": "/api-management/automations/" }, "/tyk-stack/tyk-pump/other-data-stores/": { "all_versions_are_similar_to_path": true @@ -13186,7 +13561,7 @@ "all_versions_are_similar_to_path": true }, "/tyk-sync/": { - "/docs/": "/product-stack/tyk-sync/overview/", + "/docs/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", "/docs/5.3/": "/tyk-sync/", @@ -13200,7 +13575,7 @@ "/docs/3.2/": "/tyk-sync/", "/docs/3.1/": "/tyk-sync/", "/docs/3-lts/": "/tyk-sync/", - "/docs/nightly/": "/product-stack/tyk-sync/overview/" + "/docs/nightly/": "/api-management/automations/" }, "/universal-data-graph/": { "all_versions_are_similar_to_path": true @@ -13426,6 +13801,10 @@ "/docs/3-lts/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", "/docs/nightly/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/" }, + "/using-tyk-dashboard/": { + "/docs/": "/getting-started/using-tyk-dashboard/", + "/docs/nightly/": "/getting-started/using-tyk-dashboard/" + }, "/with-tyk-community-edition/tutorials/create-api-token/": { "/docs/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", From 268ac923c6d92834d92e68bf9833aba29adca66c Mon Sep 17 00:00:00 2001 From: Master Date: Tue, 3 Dec 2024 17:59:15 +0530 Subject: [PATCH 12/39] [DX-1732] Update python versions dropdown for 5.7 (#5702) Changed Script --- scripts/page_available_since.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/page_available_since.py b/scripts/page_available_since.py index d2ee835ade..6712559db3 100644 --- a/scripts/page_available_since.py +++ b/scripts/page_available_since.py @@ -4,7 +4,12 @@ versions = [ { "path": "/docs/", - "name": "5.6 - Latest", + "name": "5.7 - Latest", + "branch": "release-5.7" + }, + { + "path": "/docs/5.6", + "name": "5.6", "branch": "release-5.6" }, { From 2e192e94059ff31daeb85df1324f871590416f88 Mon Sep 17 00:00:00 2001 From: Master Date: Tue, 3 Dec 2024 18:00:16 +0530 Subject: [PATCH 13/39] [DX-1733] Updated stable updater (#5703) Updated stable updater --- .github/workflows/stable-updater.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stable-updater.yaml b/.github/workflows/stable-updater.yaml index 4f20e4e267..b18d3ca37f 100644 --- a/.github/workflows/stable-updater.yaml +++ b/.github/workflows/stable-updater.yaml @@ -2,12 +2,12 @@ name: Stable branch update on: push: branches: - - release-5.6 + - release-5.7 jobs: stable: runs-on: ubuntu-latest - if: github.ref == 'refs/heads/release-5.6' + if: github.ref == 'refs/heads/release-5.7' steps: - uses: actions/checkout@v3 with: From e27741c392c33daa53b761d345248236db919035 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Tue, 3 Dec 2024 12:33:00 +0000 Subject: [PATCH 14/39] update audit log storage (#5765) --- .../database-settings/mongodb-sizing.md | 32 +++++++++++++++++++ .../database-settings/postgresql.md | 32 +++++++++++++++++++ tyk-docs/static/js/calculator.js | 6 ++-- 3 files changed, 67 insertions(+), 3 deletions(-) diff --git a/tyk-docs/content/planning-for-production/database-settings/mongodb-sizing.md b/tyk-docs/content/planning-for-production/database-settings/mongodb-sizing.md index 80a9e8bc72..62973781f9 100644 --- a/tyk-docs/content/planning-for-production/database-settings/mongodb-sizing.md +++ b/tyk-docs/content/planning-for-production/database-settings/mongodb-sizing.md @@ -41,6 +41,38 @@ Request_logs_index ( 30% * (1GB * 7) ) + aggregated(3month * 30MB) ~= 2.1GB + 90 In addition to storing working data in memory, MongoDB also requires space for some internal data structures. In general multiplying the resulting number by 2x should be enough. In the above example, your MongoDB server should have around 4.4GB of available memory. +## Audit Log storage + +From Tyk Dashboard v5.7+, audit log can be configured to be stored in the database. If you choose to store the audit logs in database, you need to account for additional storage for audit logs in the database setup. The size of this table will depend on the number of operations recorded, with each record averaging 1350 to 1450 bytes. + +### Audit Log Considerations + +- **Data Generation**: The total size of the audit log table will depend on the number of API operations, administrative actions, and system events that are being logged. +- **Daily Estimate**: For example, logging 100,000 operations per day results in 135MB to 145MB of additional data daily. +- **Storage Growth**: Over time, this can significantly impact your storage requirements, especially in high-traffic environments or systems with comprehensive logging enabled. + +### Recommendations for Housekeeping the Audit Log Table + +1. **Implement Data Retention Policies:** + Define a clear retention period based on business and regulatory requirements, such as 30, 90, or 180 days. Remove older logs that exceed the retention policy to prevent excessive storage growth. + +2. **Archive Older Logs:** + For long-term storage or compliance purposes, move older logs to external systems such as a data lake, object storage (e.g., S3), or a data warehouse. + +3. **Monitor Growth Trends:** + Use monitoring tools to track the size and growth rate of the audit log table. Adjust retention policies or resources proactively based on observed trends. + +4. **Plan for Resource Scaling:** + Audit log storage can significantly impact overall database size, especially in high-traffic environments. Plan for storage and resource scaling based on daily log growth estimates. + +**Example Calculation:** + +- Daily Logs: 100,000 operations/day +- Average Record Size: 1400 bytes +- Storage Growth: 100,000 × 1400 bytes/day = 140MB/day + +For 90 days: 140MB × 90 = ~12.6GB + ## MongoDB Database Storage Calculator You can calculate your MongoDB storage requirements by entering your known values in the middle section of the calculator settings below: diff --git a/tyk-docs/content/planning-for-production/database-settings/postgresql.md b/tyk-docs/content/planning-for-production/database-settings/postgresql.md index 84219476f9..c1d08857b7 100644 --- a/tyk-docs/content/planning-for-production/database-settings/postgresql.md +++ b/tyk-docs/content/planning-for-production/database-settings/postgresql.md @@ -66,6 +66,38 @@ So for 1 million requests per day, it will generate 1KB * 1M request stats (1GB) Per month: 30GB request logs + 30MB aggregate logs +## Audit Log storage + +From Tyk Dashboard v5.7+, audit log can be configured to be stored in the database. If you choose to store the audit logs in database, you need to account for additional storage for audit logs in the database setup. The size of this table will depend on the number of operations recorded, with each record averaging 1350 to 1450 bytes. + +### Audit Log Considerations + +- **Data Generation**: The total size of the audit log table will depend on the number of API operations, administrative actions, and system events that are being logged. +- **Daily Estimate**: For example, logging 100,000 operations per day results in 135MB to 145MB of additional data daily. +- **Storage Growth**: Over time, this can significantly impact your storage requirements, especially in high-traffic environments or systems with comprehensive logging enabled. + +### Recommendations for Housekeeping the Audit Log Table + +1. **Implement Data Retention Policies:** + Define a clear retention period based on business and regulatory requirements, such as 30, 90, or 180 days. Remove older logs that exceed the retention policy to prevent excessive storage growth. + +2. **Archive Older Logs:** + For long-term storage or compliance purposes, move older logs to external systems such as a data lake, object storage (e.g., S3), or a data warehouse. + +3. **Monitor Growth Trends:** + Use monitoring tools to track the size and growth rate of the audit log table. Adjust retention policies or resources proactively based on observed trends. + +4. **Plan for Resource Scaling:** + Audit log storage can significantly impact overall database size, especially in high-traffic environments. Plan for storage and resource scaling based on daily log growth estimates. + +**Example Calculation:** + +- Daily Logs: 100,000 operations/day +- Average Record Size: 1400 bytes +- Storage Growth: 100,000 × 1400 bytes/day = 140MB/day + +For 90 days: 140MB × 90 = ~12.6GB + ## PostgreSQL Database Storage Calculator You can calculate your PostgreSQL storage requirements by entering your known values in the middle section of the calculator settings below: diff --git a/tyk-docs/static/js/calculator.js b/tyk-docs/static/js/calculator.js index 5733d5c505..068b610ef5 100644 --- a/tyk-docs/static/js/calculator.js +++ b/tyk-docs/static/js/calculator.js @@ -1,3 +1,3 @@ -/*! For license information please see main.28bfed68.js.LICENSE.txt */ -(function(){"use strict";var __webpack_modules__={555:function(__unused_webpack_module,__webpack_exports__,__webpack_require__){var _Users_zaidalbirawi_dev_TykTechnologies_tyk_dependencies_sizing_app_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(683),formik__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(705),_components_Calculator_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(727),react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(184),SUM="sum";__webpack_exports__.Z=function(_ref){var fields=_ref.fields,initialValues={};return Object.values(fields).map((function(e){return Object.values(e).map((function(e){return initialValues[e.name]=e.defaultValue||0}))})),(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(formik__WEBPACK_IMPORTED_MODULE_0__.J9,{initialValues:initialValues,onSubmit:function onSubmit(values,_ref2){var setFieldValue=_ref2.setFieldValue,sum=0,x;Object.values(fields.calculated_fields).map((function(_ref3){var name=_ref3.name,value=_ref3.value;x=eval(value),sum+=x,name.startsWith(SUM),setFieldValue(name,x)}))},component:function(e){return(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Calculator_js__WEBPACK_IMPORTED_MODULE_1__.Z,(0,_Users_zaidalbirawi_dev_TykTechnologies_tyk_dependencies_sizing_app_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__.Z)({fields:fields,onSubmit:!0},e))}})}},727:function(e,t,n){function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n-1};var V=function(e,t){var n=this.__data__,r=I(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};function B(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e-1&&e%1==0&&e<=9007199254740991},tt={};tt["[object Float32Array]"]=tt["[object Float64Array]"]=tt["[object Int8Array]"]=tt["[object Int16Array]"]=tt["[object Int32Array]"]=tt["[object Uint8Array]"]=tt["[object Uint8ClampedArray]"]=tt["[object Uint16Array]"]=tt["[object Uint32Array]"]=!0,tt["[object Arguments]"]=tt["[object Array]"]=tt["[object ArrayBuffer]"]=tt["[object Boolean]"]=tt["[object DataView]"]=tt["[object Date]"]=tt["[object Error]"]=tt["[object Function]"]=tt["[object Map]"]=tt["[object Number]"]=tt["[object Object]"]=tt["[object RegExp]"]=tt["[object Set]"]=tt["[object String]"]=tt["[object WeakMap]"]=!1;var nt=function(e){return T(e)&&et(e.length)&&!!tt[E(e)]};var rt=function(e){return function(t){return e(t)}},at="object"==typeof exports&&exports&&!exports.nodeType&&exports,lt=at&&"object"==typeof module&&module&&!module.nodeType&&module,ot=lt&<.exports===at&&d.process,it=function(){try{var e=lt&<.require&<.require("util").types;return e||ot&&ot.binding&&ot.binding("util")}catch(t){}}(),ut=it&&it.isTypedArray,ct=ut?rt(ut):nt,st=Object.prototype.hasOwnProperty;var ft=function(e,t){var n=He(e),r=!n&&We(e),a=!n&&!r&&Xe(e),l=!n&&!r&&!a&&ct(e),o=n||r||a||l,i=o?De(e.length,String):[],u=i.length;for(var c in e)!t&&!st.call(e,c)||o&&("length"==c||a&&("offset"==c||"parent"==c)||l&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Je(c,u))||i.push(c);return i},dt=Object.prototype;var pt=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||dt)},mt=x(Object.keys,Object),ht=Object.prototype.hasOwnProperty;var vt=function(e){if(!pt(e))return mt(e);var t=[];for(var n in Object(e))ht.call(e,n)&&"constructor"!=n&&t.push(n);return t};var yt=function(e){return null!=e&&et(e.length)&&!G(e)};var bt=function(e){return yt(e)?ft(e):vt(e)};var gt=function(e,t){return e&&Fe(t,bt(t),e)};var _t=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t},St=Object.prototype.hasOwnProperty;var wt=function(e){if(!K(e))return _t(e);var t=pt(e),n=[];for(var r in e)("constructor"!=r||!t&&St.call(e,r))&&n.push(r);return n};var kt=function(e){return yt(e)?ft(e,!0):wt(e)};var Et=function(e,t){return e&&Fe(t,kt(t),e)},xt="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ct=xt&&"object"==typeof module&&module&&!module.nodeType&&module,Tt=Ct&&Ct.exports===xt?m.Buffer:void 0,Pt=Tt?Tt.allocUnsafe:void 0;var Ot=function(e,t){if(t)return e.slice();var n=e.length,r=Pt?Pt(n):new e.constructor(n);return e.copy(r),r};var jt=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n=0||(a[n]=e[n]);return a}function Xn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var Zn=function(e){return Array.isArray(e)&&0===e.length},Jn=function(e){return"function"===typeof e},er=function(e){return null!==e&&"object"===typeof e},tr=function(e){return String(Math.floor(Number(e)))===e},nr=function(e){return"[object String]"===Object.prototype.toString.call(e)},rr=function(e){return 0===r.Children.count(e)},ar=function(e){return er(e)&&Jn(e.then)};function lr(e,t,n,r){void 0===r&&(r=0);for(var a=Wn(t);e&&r=0?[]:{}}}return(0===l?e:a)[o[l]]===n?e:(void 0===n?delete a[o[l]]:a[o[l]]=n,0===l&&void 0===n&&delete r[o[l]],r)}function ir(e,t,n,r){void 0===n&&(n=new WeakMap),void 0===r&&(r={});for(var a=0,l=Object.keys(e);a=n.length)break;l=n[a++]}else{if((a=n.next()).done)break;l=a.value}var o=l;lr(t,o.path)||(t=or(t,o.path,o.message))}}return t}(n)):t(n)}))}))}),[h.validationSchema]),T=(0,r.useCallback)((function(e,t){return new Promise((function(n){return n(S.current[e].validate(t))}))}),[]),P=(0,r.useCallback)((function(e){var t=Object.keys(S.current).filter((function(e){return Jn(S.current[e].validate)})),n=t.length>0?t.map((function(t){return T(t,lr(e,t))})):[Promise.resolve("DO_NOT_DELETE_YOU_WILL_BE_FIRED")];return Promise.all(n).then((function(e){return e.reduce((function(e,n,r){return"DO_NOT_DELETE_YOU_WILL_BE_FIRED"===n||n&&(e=or(e,t[r],n)),e}),{})}))}),[T]),O=(0,r.useCallback)((function(e){return Promise.all([P(e),h.validationSchema?C(e):{},h.validate?x(e):{}]).then((function(e){var t=e[0],n=e[1],r=e[2];return f.all([t,n,r],{arrayMerge:yr})}))}),[h.validate,h.validationSchema,P,x,C]),j=gr((function(e){return void 0===e&&(e=k.values),E({type:"SET_ISVALIDATING",payload:!0}),O(e).then((function(e){return _.current&&(E({type:"SET_ISVALIDATING",payload:!1}),E({type:"SET_ERRORS",payload:e})),e}))}));(0,r.useEffect)((function(){u&&!0===_.current&&l()(v.current,h.initialValues)&&j(v.current)}),[u,j]);var z=(0,r.useCallback)((function(e){var t=e&&e.values?e.values:v.current,n=e&&e.errors?e.errors:y.current?y.current:h.initialErrors||{},r=e&&e.touched?e.touched:b.current?b.current:h.initialTouched||{},a=e&&e.status?e.status:g.current?g.current:h.initialStatus;v.current=t,y.current=n,b.current=r,g.current=a;var l=function(){E({type:"RESET_FORM",payload:{isSubmitting:!!e&&!!e.isSubmitting,errors:n,touched:r,status:a,values:t,isValidating:!!e&&!!e.isValidating,submitCount:e&&e.submitCount&&"number"===typeof e.submitCount?e.submitCount:0}})};if(h.onReset){var o=h.onReset(k.values,Y);ar(o)?o.then(l):l()}else l()}),[h.initialErrors,h.initialStatus,h.initialTouched]);(0,r.useEffect)((function(){!0!==_.current||l()(v.current,h.initialValues)||(d&&(v.current=h.initialValues,z()),u&&j(v.current))}),[d,h.initialValues,z,u,j]),(0,r.useEffect)((function(){d&&!0===_.current&&!l()(y.current,h.initialErrors)&&(y.current=h.initialErrors||dr,E({type:"SET_ERRORS",payload:h.initialErrors||dr}))}),[d,h.initialErrors]),(0,r.useEffect)((function(){d&&!0===_.current&&!l()(b.current,h.initialTouched)&&(b.current=h.initialTouched||pr,E({type:"SET_TOUCHED",payload:h.initialTouched||pr}))}),[d,h.initialTouched]),(0,r.useEffect)((function(){d&&!0===_.current&&!l()(g.current,h.initialStatus)&&(g.current=h.initialStatus,E({type:"SET_STATUS",payload:h.initialStatus}))}),[d,h.initialStatus,h.initialTouched]);var R=gr((function(e){if(S.current[e]&&Jn(S.current[e].validate)){var t=lr(k.values,e),n=S.current[e].validate(t);return ar(n)?(E({type:"SET_ISVALIDATING",payload:!0}),n.then((function(e){return e})).then((function(t){E({type:"SET_FIELD_ERROR",payload:{field:e,value:t}}),E({type:"SET_ISVALIDATING",payload:!1})}))):(E({type:"SET_FIELD_ERROR",payload:{field:e,value:n}}),Promise.resolve(n))}return h.validationSchema?(E({type:"SET_ISVALIDATING",payload:!0}),C(k.values,e).then((function(e){return e})).then((function(t){E({type:"SET_FIELD_ERROR",payload:{field:e,value:t[e]}}),E({type:"SET_ISVALIDATING",payload:!1})}))):Promise.resolve()})),N=(0,r.useCallback)((function(e,t){var n=t.validate;S.current[e]={validate:n}}),[]),A=(0,r.useCallback)((function(e){delete S.current[e]}),[]),M=gr((function(e,t){return E({type:"SET_TOUCHED",payload:e}),(void 0===t?o:t)?j(k.values):Promise.resolve()})),I=(0,r.useCallback)((function(e){E({type:"SET_ERRORS",payload:e})}),[]),L=gr((function(e,t){var r=Jn(e)?e(k.values):e;return E({type:"SET_VALUES",payload:r}),(void 0===t?n:t)?j(r):Promise.resolve()})),F=(0,r.useCallback)((function(e,t){E({type:"SET_FIELD_ERROR",payload:{field:e,value:t}})}),[]),D=gr((function(e,t,r){return E({type:"SET_FIELD_VALUE",payload:{field:e,value:t}}),(void 0===r?n:r)?j(or(k.values,e,t)):Promise.resolve()})),U=(0,r.useCallback)((function(e,t){var n,r=t,a=e;if(!nr(e)){e.persist&&e.persist();var l=e.target?e.target:e.currentTarget,o=l.type,i=l.name,u=l.id,c=l.value,s=l.checked,f=(l.outerHTML,l.options),d=l.multiple;r=t||(i||u),a=/number|range/.test(o)?(n=parseFloat(c),isNaN(n)?"":n):/checkbox/.test(o)?function(e,t,n){if("boolean"===typeof e)return Boolean(t);var r=[],a=!1,l=-1;if(Array.isArray(e))r=e,a=(l=e.indexOf(n))>=0;else if(!n||"true"==n||"false"==n)return Boolean(t);if(t&&n&&!a)return r.concat(n);if(!a)return r;return r.slice(0,l).concat(r.slice(l+1))}(lr(k.values,r),s,c):f&&d?function(e){return Array.from(e).filter((function(e){return e.selected})).map((function(e){return e.value}))}(f):c}r&&D(r,a)}),[D,k.values]),V=gr((function(e){if(nr(e))return function(t){return U(t,e)};U(e)})),B=gr((function(e,t,n){return void 0===t&&(t=!0),E({type:"SET_FIELD_TOUCHED",payload:{field:e,value:t}}),(void 0===n?o:n)?j(k.values):Promise.resolve()})),$=(0,r.useCallback)((function(e,t){e.persist&&e.persist();var n=e.target,r=n.name,a=n.id,l=(n.outerHTML,t||(r||a));B(l,!0)}),[B]),q=gr((function(e){if(nr(e))return function(t){return $(t,e)};$(e)})),W=(0,r.useCallback)((function(e){Jn(e)?E({type:"SET_FORMIK_STATE",payload:e}):E({type:"SET_FORMIK_STATE",payload:function(){return e}})}),[]),H=(0,r.useCallback)((function(e){E({type:"SET_STATUS",payload:e})}),[]),Q=(0,r.useCallback)((function(e){E({type:"SET_ISSUBMITTING",payload:e})}),[]),K=gr((function(){return E({type:"SUBMIT_ATTEMPT"}),j().then((function(e){var t=e instanceof Error;if(!t&&0===Object.keys(e).length){var n;try{if(void 0===(n=X()))return}catch(r){throw r}return Promise.resolve(n).then((function(e){return _.current&&E({type:"SUBMIT_SUCCESS"}),e})).catch((function(e){if(_.current)throw E({type:"SUBMIT_FAILURE"}),e}))}if(_.current&&(E({type:"SUBMIT_FAILURE"}),t))throw e}))})),G=gr((function(e){e&&e.preventDefault&&Jn(e.preventDefault)&&e.preventDefault(),e&&e.stopPropagation&&Jn(e.stopPropagation)&&e.stopPropagation(),K().catch((function(e){console.warn("Warning: An unhandled error was caught from submitForm()",e)}))})),Y={resetForm:z,validateForm:j,validateField:R,setErrors:I,setFieldError:F,setFieldTouched:B,setFieldValue:D,setStatus:H,setSubmitting:Q,setTouched:M,setValues:L,setFormikState:W,submitForm:K},X=gr((function(){return p(k.values,Y)})),Z=gr((function(e){e&&e.preventDefault&&Jn(e.preventDefault)&&e.preventDefault(),e&&e.stopPropagation&&Jn(e.stopPropagation)&&e.stopPropagation(),z()})),J=(0,r.useCallback)((function(e){return{value:lr(k.values,e),error:lr(k.errors,e),touched:!!lr(k.touched,e),initialValue:lr(v.current,e),initialTouched:!!lr(b.current,e),initialError:lr(y.current,e)}}),[k.errors,k.touched,k.values]),ee=(0,r.useCallback)((function(e){return{setValue:function(t,n){return D(e,t,n)},setTouched:function(t,n){return B(e,t,n)},setError:function(t){return F(e,t)}}}),[D,B,F]),te=(0,r.useCallback)((function(e){var t=er(e),n=t?e.name:e,r=lr(k.values,n),a={name:n,value:r,onChange:V,onBlur:q};if(t){var l=e.type,o=e.value,i=e.as,u=e.multiple;"checkbox"===l?void 0===o?a.checked=!!r:(a.checked=!(!Array.isArray(r)||!~r.indexOf(o)),a.value=o):"radio"===l?(a.checked=r===o,a.value=o):"select"===i&&u&&(a.value=a.value||[],a.multiple=!0)}return a}),[q,V,k.values]),ne=(0,r.useMemo)((function(){return!l()(v.current,k.values)}),[v.current,k.values]),re=(0,r.useMemo)((function(){return"undefined"!==typeof c?ne?k.errors&&0===Object.keys(k.errors).length:!1!==c&&Jn(c)?c(h):c:k.errors&&0===Object.keys(k.errors).length}),[c,ne,k.errors,h]);return Kn({},k,{initialValues:v.current,initialErrors:y.current,initialTouched:b.current,initialStatus:g.current,handleBlur:q,handleChange:V,handleReset:Z,handleSubmit:G,resetForm:z,setErrors:I,setFormikState:W,setFieldTouched:B,setFieldValue:D,setFieldError:F,setStatus:H,setSubmitting:Q,setTouched:M,setValues:L,submitForm:K,validateForm:j,validateField:R,isValid:re,dirty:ne,unregisterField:A,registerField:N,getFieldProps:te,getFieldMeta:J,getFieldHelpers:ee,validateOnBlur:o,validateOnChange:n,validateOnMount:u})}function hr(e){var t=mr(e),n=e.component,a=e.children,l=e.render,o=e.innerRef;return(0,r.useImperativeHandle)(o,(function(){return t})),(0,r.createElement)(cr,{value:t},n?(0,r.createElement)(n,t):l?l(t):a?Jn(a)?a(t):rr(a)?null:r.Children.only(a):null)}function vr(e){var t=Array.isArray(e)?[]:{};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=String(n);!0===Array.isArray(e[r])?t[r]=e[r].map((function(e){return!0===Array.isArray(e)||N(e)?vr(e):""!==e?e:void 0})):N(e[r])?t[r]=vr(e[r]):t[r]=""!==e[r]?e[r]:void 0}return t}function yr(e,t,n){var r=e.slice();return t.forEach((function(t,a){if("undefined"===typeof r[a]){var l=!1!==n.clone&&n.isMergeableObject(t);r[a]=l?f(Array.isArray(t)?[]:{},t,n):t}else n.isMergeableObject(t)?r[a]=f(e[a],t,n):-1===e.indexOf(t)&&r.push(t)})),r}var br="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?r.useLayoutEffect:r.useEffect;function gr(e){var t=(0,r.useRef)(e);return br((function(){t.current=e})),(0,r.useCallback)((function(){for(var e=arguments.length,n=new Array(e),r=0;re?t:e}),0);return Array.from(Kn({},e,{length:t+1}))}return[]},Er=function(e){function t(t){var n;return(n=e.call(this,t)||this).updateArrayField=function(e,t,r){var a=n.props,l=a.name;(0,a.formik.setFormikState)((function(n){var a="function"===typeof r?r:e,o="function"===typeof t?t:e,i=or(n.values,l,e(lr(n.values,l))),u=r?a(lr(n.errors,l)):void 0,c=t?o(lr(n.touched,l)):void 0;return Zn(u)&&(u=void 0),Zn(c)&&(c=void 0),Kn({},n,{values:i,errors:r?or(n.errors,l,u):n.errors,touched:t?or(n.touched,l,c):n.touched})}))},n.push=function(e){return n.updateArrayField((function(t){return[].concat(kr(t),[Qn(e)])}),!1,!1)},n.handlePush=function(e){return function(){return n.push(e)}},n.swap=function(e,t){return n.updateArrayField((function(n){return function(e,t,n){var r=kr(e),a=r[t];return r[t]=r[n],r[n]=a,r}(n,e,t)}),!0,!0)},n.handleSwap=function(e,t){return function(){return n.swap(e,t)}},n.move=function(e,t){return n.updateArrayField((function(n){return function(e,t,n){var r=kr(e),a=r[t];return r.splice(t,1),r.splice(n,0,a),r}(n,e,t)}),!0,!0)},n.handleMove=function(e,t){return function(){return n.move(e,t)}},n.insert=function(e,t){return n.updateArrayField((function(n){return wr(n,e,t)}),(function(t){return wr(t,e,null)}),(function(t){return wr(t,e,null)}))},n.handleInsert=function(e,t){return function(){return n.insert(e,t)}},n.replace=function(e,t){return n.updateArrayField((function(n){return function(e,t,n){var r=kr(e);return r[t]=n,r}(n,e,t)}),!1,!1)},n.handleReplace=function(e,t){return function(){return n.replace(e,t)}},n.unshift=function(e){var t=-1;return n.updateArrayField((function(n){var r=n?[e].concat(n):[e];return t<0&&(t=r.length),r}),(function(e){var n=e?[null].concat(e):[null];return t<0&&(t=n.length),n}),(function(e){var n=e?[null].concat(e):[null];return t<0&&(t=n.length),n})),t},n.handleUnshift=function(e){return function(){return n.unshift(e)}},n.handleRemove=function(e){return function(){return n.remove(e)}},n.handlePop=function(){return function(){return n.pop()}},n.remove=n.remove.bind(Xn(n)),n.pop=n.pop.bind(Xn(n)),n}Gn(t,e);var n=t.prototype;return n.componentDidUpdate=function(e){this.props.validateOnChange&&this.props.formik.validateOnChange&&!l()(lr(e.formik.values,e.name),lr(this.props.formik.values,this.props.name))&&this.props.formik.validateForm(this.props.formik.values)},n.remove=function(e){var t;return this.updateArrayField((function(n){var r=n?kr(n):[];return t||(t=r[e]),Jn(r.splice)&&r.splice(e,1),r}),!0,!0),t},n.pop=function(){var e;return this.updateArrayField((function(t){var n=t;return e||(e=n&&n.pop&&n.pop()),n}),!0,!0),e},n.render=function(){var e={push:this.push,pop:this.pop,swap:this.swap,move:this.move,insert:this.insert,replace:this.replace,unshift:this.unshift,remove:this.remove,handlePush:this.handlePush,handlePop:this.handlePop,handleSwap:this.handleSwap,handleMove:this.handleMove,handleInsert:this.handleInsert,handleReplace:this.handleReplace,handleUnshift:this.handleUnshift,handleRemove:this.handleRemove},t=this.props,n=t.component,a=t.render,l=t.children,o=t.name,i=Kn({},e,{form:Yn(t.formik,["validate","validationSchema"]),name:o});return n?(0,r.createElement)(n,i):a?a(i):l?"function"===typeof l?l(i):rr(l)?null:r.Children.only(l):null},t}(r.Component);Er.defaultProps={validateOnChange:!0};r.Component,r.Component},110:function(e,t,n){var r=n(441),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},l={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},i={};function u(e){return r.isMemo(e)?o:i[e.$$typeof]||a}i[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},i[r.Memo]=o;var c=Object.defineProperty,s=Object.getOwnPropertyNames,f=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!==typeof n){if(m){var a=p(n);a&&a!==m&&e(t,a,r)}var o=s(n);f&&(o=o.concat(f(n)));for(var i=u(t),h=u(n),v=0;v
    @@ -96,7 +179,7 @@ management capabilities. While some API management platforms offer basic support for async APIs and event-driven architectures, Tyk Streams stands out by providing a comprehensive and flexible solution: -- **Extensive protocol support**: Tyk Streams supports a wide range of event brokers and protocols out of the box, including Kafka, MQTT, WebSocket, and more. +- **Extensive protocol support**: Tyk Streams supports event brokers and protocols out of the box, including Kafka, WebSockets, Server-Sent Events (SSE). - **Powerful mediation capabilities**: Tyk Streams allows you to transform and enrich event data, enabling protocol mediation and compatibility with diverse client requirements. - **Seamless integration**: Async APIs are managed alongside synchronous APIs within the Tyk platform, providing a unified developer portal, consistent security policies and centralised analytics. - **Flexibility and scalability**: Tyk Streams can be deployed in various architectures, from simple single-node setups to large-scale distributed deployments and can handle high-throughput event processing scenarios. diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 58b2b07175..37ee422e62 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -3887,22 +3887,10 @@ menu: path: /product-stack/tyk-streaming/configuration/inputs/overview category: Page show: True - - title: "Amqp_0_9" - path: /product-stack/tyk-streaming/configuration/inputs/amqp-0-9 - category: Page - show: True - - title: "Amqp_1" - path: /product-stack/tyk-streaming/configuration/inputs/amqp-1 - category: Page - show: True - title: "Broker" path: /product-stack/tyk-streaming/configuration/inputs/broker category: Page show: True - - title: "Generate" - path: /product-stack/tyk-streaming/configuration/inputs/generate - category: Page - show: True - title: "Http Client" path: /product-stack/tyk-streaming/configuration/inputs/http-client category: Page @@ -3915,26 +3903,6 @@ menu: path: /product-stack/tyk-streaming/configuration/inputs/kafka category: Page show: True - - title: "Kafka Franz" - path: /product-stack/tyk-streaming/configuration/inputs/kafka-franz - category: Page - show: True - - title: "MQTT" - path: /product-stack/tyk-streaming/configuration/inputs/mqtt - category: Page - show: True - - title: "Nats" - path: /product-stack/tyk-streaming/configuration/inputs/nats - category: Page - show: True - - title: "NSQ" - path: /product-stack/tyk-streaming/configuration/inputs/nsq - category: Page - show: True - - title: "Redis PubSub" - path: /product-stack/tyk-streaming/configuration/inputs/redis-pubsub - category: Page - show: True - title: "Outputs" category: Directory show: True @@ -3943,26 +3911,10 @@ menu: path: /product-stack/tyk-streaming/configuration/outputs/overview category: Page show: True - - title: "Amqp_0_9" - path: /product-stack/tyk-streaming/configuration/outputs/amqp-0-9 - category: Page - show: True - - title: "Amqp_1" - path: /product-stack/tyk-streaming/configuration/outputs/amqp-1 - category: Page - show: True - title: "Broker" path: /product-stack/tyk-streaming/configuration/outputs/broker category: Page show: True - - title: "Drop on" - path: /product-stack/tyk-streaming/configuration/outputs/drop_on - category: Page - show: True - - title: "Fallback" - path: /product-stack/tyk-streaming/configuration/outputs/fallback - category: Page - show: True - title: "Http Client" path: /product-stack/tyk-streaming/configuration/outputs/http-client category: Page @@ -3975,52 +3927,8 @@ menu: path: /product-stack/tyk-streaming/configuration/outputs/kafka category: Page show: True - - title: "Kafka Franz" - path: /product-stack/tyk-streaming/configuration/outputs/kafka-franz - category: Page - show: True - - title: "Nats" - path: /product-stack/tyk-streaming/configuration/outputs/nats - category: Page - show: True - - title: "NSQ" - path: /product-stack/tyk-streaming/configuration/outputs/nsq - category: Page - show: True - - title: "MQTT" - path: /product-stack/tyk-streaming/configuration/outputs/mqtt - category: Page - show: True - - title: "Redis PubSub" - path: /product-stack/tyk-streaming/configuration/outputs/redis-pubsub - category: Page - show: True - - title: "Reject" - path: /product-stack/tyk-streaming/configuration/outputs/reject - category: Page - show: True - - title: "Retry" - path: /product-stack/tyk-streaming/configuration/outputs/retry - category: Page - show: True - - title: "Sleep" - path: /product-stack/tyk-streaming/configuration/processors/sleep - category: Page - show: True - - title: "Stdout" - path: /product-stack/tyk-streaming/configuration/outputs/stdout - category: Page - show: True - - title: "Switch" - path: /product-stack/tyk-streaming/configuration/outputs/switch - category: Page - show: True - - title: "Sync Response" - path: /product-stack/tyk-streaming/configuration/outputs/sync-response - category: Page - show: True - title: "Processors" - category: "Directory" + category: Directory show: True menu: - title: "Overview" @@ -4031,154 +3939,6 @@ menu: path: /product-stack/tyk-streaming/configuration/processors/avro category: Page show: True - - title: "AWS Lambda" - path: /product-stack/tyk-streaming/configuration/processors/aws-lambda - category: Page - show: True - - title: "Bloblang" - path: /product-stack/tyk-streaming/configuration/processors/bloblang - category: Page - show: True - - title: "Branch" - path: /product-stack/tyk-streaming/configuration/processors/branch - category: Page - show: True - - title: "Bounds Check" - path: /product-stack/tyk-streaming/configuration/processors/bounds-check - category: Page - show: True - - title: "Cache" - path: /product-stack/tyk-streaming/configuration/processors/cache - category: Page - show: True - - title: "Cached" - path: /product-stack/tyk-streaming/configuration/processors/cached - category: Page - show: True - - title: "Catch" - path: /product-stack/tyk-streaming/configuration/processors/catch - category: Page - show: True - - title: "Dedupe" - path: /product-stack/tyk-streaming/configuration/processors/dedupe - category: Page - show: True - - title: "For Each" - path: /product-stack/tyk-streaming/configuration/processors/for-each - category: Page - show: True - - title: "Group By" - path: /product-stack/tyk-streaming/configuration/processors/group-by - category: Page - show: True - - title: "Group By Value" - path: /product-stack/tyk-streaming/configuration/processors/group-by-value - category: Page - show: True - - title: "Http" - path: /product-stack/tyk-streaming/configuration/processors/http - category: Page - show: True - - title: "Insert Part" - path: /product-stack/tyk-streaming/configuration/processors/insert-part - category: Page - show: True - - title: "JMESPath" - path: /product-stack/tyk-streaming/configuration/processors/jmes-path - category: Page - show: True - - title: "Jq" - path: /product-stack/tyk-streaming/configuration/processors/jq - category: Page - show: True - - title: "JSON Schema" - path: /product-stack/tyk-streaming/configuration/processors/json-schema - category: Page - show: True - - title: "Log" - path: /product-stack/tyk-streaming/configuration/processors/log - category: Page - show: True - - title: "Mapping" - path: /product-stack/tyk-streaming/configuration/processors/mapping - category: Page - show: True - - title: "Msgpack" - path: /product-stack/tyk-streaming/configuration/processors/msgpack - category: Page - show: True - - title: "Mutation" - path: /product-stack/tyk-streaming/configuration/processors/mutation - category: Page - show: True - - title: "Noop" - path: /product-stack/tyk-streaming/configuration/processors/noop - category: Page - show: True - - title: "Parallel" - path: /product-stack/tyk-streaming/configuration/processors/parallel - category: Page - show: True - - title: "Parse Log" - path: /product-stack/tyk-streaming/configuration/processors/parse-log - category: Page - show: True - - title: "Processors" - path: /product-stack/tyk-streaming/configuration/processors/processors - category: Page - show: True - - title: "Protobuf" - path: /product-stack/tyk-streaming/configuration/processors/protobuf - category: Page - show: True - - title: "Rate Limit" - path: /product-stack/tyk-streaming/configuration/processors/rate-limit - category: Page - show: True - - title: "Redis" - path: /product-stack/tyk-streaming/configuration/processors/redis - category: Page - show: True - - title: "Retry" - path: /product-stack/tyk-streaming/configuration/processors/retry - category: Page - show: True - - title: "Schema Registry Decode" - path: /product-stack/tyk-streaming/configuration/processors/schema-registry-decode - category: Page - show: True - - title: "Schema Registry Encode" - path: /product-stack/tyk-streaming/configuration/processors/schema-registry-encode - category: Page - show: True - - title: "Select Parts" - path: /product-stack/tyk-streaming/configuration/processors/select-parts - category: Page - show: True - - title: "Split" - path: /product-stack/tyk-streaming/configuration/processors/split - category: Page - show: True - - title: "Switch" - path: /product-stack/tyk-streaming/configuration/processors/switch - category: Page - show: True - - title: "Sync Response" - path: /product-stack/tyk-streaming/configuration/processors/sync-response - category: Page - show: True - - title: "Try" - path: /product-stack/tyk-streaming/configuration/processors/try - category: Page - show: True - - title: "While" - path: /product-stack/tyk-streaming/configuration/processors/while - catgeory: Page - show: True - - title: "Workflow" - path: /product-stack/tyk-streaming/configuration/processors/workflow - category: Page - show: True - title: "Scanners" category: Directory show: True @@ -4211,110 +3971,14 @@ menu: path: /product-stack/tyk-streaming/configuration/common-configuration/batching category: Page show: True - - title: "Error Handling" - path: /product-stack/tyk-streaming/configuration/common-configuration/error-handling - category: Page - show: True - title: "Field Paths" path: /product-stack/tyk-streaming/configuration/common-configuration/field-paths category: Page show: True - - title: "Interpolation" - path: /product-stack/tyk-streaming/configuration/common-configuration/interpolation - category: Page - show: True - title: "Processing Pipelines" path: /product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines category: Page show: True - - title: "Resources" - path: /product-stack/tyk-streaming/configuration/common-configuration/resources - category: Page - show: True - - title: "Windowed Processing" - path: /product-stack/tyk-streaming/configuration/common-configuration/windowed_processing - category: Page - show: True - - title: "Guides" - category: Directory - show: True - menu: - - title: "Bloblang" - category: Directory - show: True - menu: - - title: "Overview" - path: "/product-stack/tyk-streaming/guides/bloblang/overview" - category: Page - show: True - - title: "Advanced" - path: "/product-stack/tyk-streaming/guides/bloblang/advanced" - category: Page - show: True - - title: "Arithmetic" - path: "/product-stack/tyk-streaming/guides/bloblang/arithmetic" - category: Page - show: True - - title: "Functions" - path: "/product-stack/tyk-streaming/guides/bloblang/functions" - category: Page - show: True - - title: "Methods" - category: Directory - show: True - menu: - - title: "Overview" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/overview" - category: Page - show: True - - title: "General" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/general" - category: Page - show: True - - title: "Encoding and encryption" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption" - category: Page - show: True - - title: "GeoIP" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/geoip" - category: Page - show: True - - title: "JSON web tokens" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens" - category: Page - show: True - - title: "Number Manipulation" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/numbers" - category: Page - show: True - - title: "String Manipulation" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/strings" - category: Page - show: True - - title: "Objects and Arrays" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays" - category: Page - show: True - - title: "Regular expressions" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions" - category: Page - show: True - - title: "Parsing" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/parsing" - category: Page - show: True - - title: "Timestamp Manipulation" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps" - category: Page - show: True - - title: "Type Coercion" - path: "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion" - category: Page - show: True - - title: "Sync Response" - path: "/product-stack/tyk-streaming/guides/sync-responses" - category: Page - show: True - title: "Rate Limits" category: Directory show: true From 004109a73fa52c4a5a3093d6a2ba6ba9224224f9 Mon Sep 17 00:00:00 2001 From: Leonid Bugaev Date: Tue, 3 Dec 2024 15:39:05 +0300 Subject: [PATCH 17/39] [TT-13475] Update documentation for master (#5733) Import config/docs Co-authored-by: sredxny <4504205+sredxny@users.noreply.github.com> Co-authored-by: Master --- tyk-docs/assets/others/dashboard-swagger.yml | 705 ++++++++++++++++++- tyk-docs/assets/others/gateway-swagger.yml | 2 +- tyk-docs/content/shared/dashboard-config.md | 58 ++ tyk-docs/content/shared/x-tyk-gateway.md | 139 +++- 4 files changed, 880 insertions(+), 24 deletions(-) diff --git a/tyk-docs/assets/others/dashboard-swagger.yml b/tyk-docs/assets/others/dashboard-swagger.yml index c7448bf755..dce27bdedd 100644 --- a/tyk-docs/assets/others/dashboard-swagger.yml +++ b/tyk-docs/assets/others/dashboard-swagger.yml @@ -38,7 +38,7 @@ info: name: Mozilla Public License Version 2.0 url: https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md title: Tyk Dashboard API - version: 5.6.0 + version: 5.7.0 servers: - url: https://{tenant} variables: @@ -1885,6 +1885,427 @@ paths: summary: Create a Basic Auth User. tags: - Basic Authentication + /api/apis/streams: + post: + description: |- + Create a Streams API Definition in Tyk OAS API format. + Note that the response includes the newly created Tyk Streams API Definition containing the unique identifier for the API (`ID`). You can provide a value for `ID` in the request body, otherwise Tyk will automatically generate a value. + operationId: createStreamsApi + parameters: + - name: "Content-Type" + in: header + required: true + description: "Content type for streams endpoints should be `application/vnd.tyk.streams.oas`" + schema: + type: string + enum: ["application/vnd.tyk.streams.oas"] + requestBody: + content: + application/json: + examples: + StreamsAPIExample: + $ref: "#/components/examples/streamsExample" + schema: + allOf: + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json + - $ref: '#/components/schemas/XTykApiGateway' + - $ref: '#/components/schemas/XTykStreaming' + responses: + "200": + content: + application/json: + example: + ID: 4c1c0d8fc885401053ddac4e39ef676b + Message: API created + Meta: 665597e0b646b300011acb69 + Status: OK + schema: + $ref: '#/components/schemas/ApiResponse' + description: API created. + "400": + content: + application/json: + example: + Message: Couldn't read body. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Malformed data. + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Unauthorized + "403": + content: + application/json: + example: + Message: Your license does not support adding/ modifying streams API configuration. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Forbidden + "409": + content: + application/json: + example: + Message: Found API with the same ID. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Conflict + "500": + content: + application/json: + example: + Message: Error while creating API. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Internal server error. + summary: Create Streams API. + tags: + - Streams APIs + + /api/apis/streams/{apiId}: + delete: + description: Deleting a Streams API definition will remove the file from the file store. + The API definition will not be unloaded and a separate reload request will + need to be made to disable the API endpoint. + operationId: deleteStreamsApi + parameters: + - description: ID of the API you want to delete. + example: 4c1c0d8fc885401053ddac4e39ef676b + in: path + name: apiId + required: true + schema: + type: string + responses: + "200": + content: + application/json: + example: + Message: API deleted. + Meta: null + Status: OK + schema: + $ref: '#/components/schemas/ApiResponse' + description: Deleted successfully. + "400": + content: + application/json: + example: + Message: Could not delete the API. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Bad Request + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Unauthorized + "403": + content: + application/json: + example: + Message: 'access denied: You do not have permission to access /api/apis/streams/{apiId}' + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Forbidden + "404": + content: + application/json: + example: + Message: Could not retrieve API detail. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: API not found. + summary: Delete Streams API. + tags: + - Streams APIs + get: + description: Get a single Streams API definition. + operationId: getStreamsAPIDetails + parameters: + - description: ID of the API you want to fetch. + example: 4c1c0d8fc885401053ddac4e39ef676b + in: path + name: apiId + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + streamsAPIExample: + $ref: '#/components/examples/streamsExample' + schema: + allOf: + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json + - $ref: '#/components/schemas/XTykApiGateway' + - $ref: '#/components/schemas/XTykStreaming' + description: Fetched API. + "400": + content: + application/json: + example: + Message: Could not retrieve API detail. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Bad request or API not found. + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Unauthorized + "403": + content: + application/json: + example: + Message: 'access denied: You do not have permission to access /api/apis/streams/{apiId}' + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Forbidden + "500": + content: + application/json: + example: + Message: Failed to marshal data for API detail. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Internal server error. + summary: Get Streams API details. + tags: + - Streams APIs + patch: + description: Update a Tyk Streams API. You can use this endpoint to update the OAS + part of your Tyk Streams API definition. This endpoint allows you to configure + the Tyk OAS extension based on the query parameters provided (similar to import). + operationId: patchApiStreams + parameters: + - name: "Content-Type" + in: header + required: true + description: "Content type for streams endpoints should be `application/vnd.tyk.streams.oas`" + schema: + type: string + enum: [ "application/vnd.tyk.streams.oas" ] + - description: ID of the API you want to patch. + example: 4c1c0d8fc885401053ddac4e39ef676b + in: path + name: apiId + required: true + schema: + type: string + - $ref: '#/components/parameters/ListenPath' + - $ref: '#/components/parameters/CustomDomain' + - $ref: '#/components/parameters/AllowList' + - $ref: '#/components/parameters/ValidateRequest' + - $ref: '#/components/parameters/MockResponse' + - $ref: '#/components/parameters/Authentication' + requestBody: + content: + application/json: + examples: + PatchOASExample: + $ref: "#/components/examples/streamsExample" + schema: + oneOf: + - allOf: + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json + - $ref: '#/components/schemas/XTykApiGateway' + - $ref: '#/components/schemas/XTykStreaming' + multipart/form-data: + schema: + $ref: '#/components/schemas/FormDataFile' + description: The content of the file should be the OpenAPI document in JSON + format. + responses: + "200": + content: + application/json: + example: + Message: API updated + Meta: null + Status: OK + schema: + $ref: '#/components/schemas/ApiResponse' + description: Patched API. + "400": + content: + application/json: + example: + Message: Invalid `ID` value + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Malformed request. + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Unauthorized + "403": + content: + application/json: + example: + Message: Failed to update org object to DB. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Forbidden. + "404": + content: + application/json: + example: + Message: API not found. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: API not found. + summary: Patch a single Streams API by ID. + tags: + - Streams APIs + put: + description: Updating an API definition uses the same signature object as a + `POST`. It will first ensure that the API ID being updated is the same as + in the `PUT` object.
    Updating will completely replace the file descriptor + and will not change an API definition that has already been loaded. The hot-reload + endpoint will need to be called to push the new definition to live. + operationId: updateStreamsApi + parameters: + - name: "Content-Type" + in: header + required: true + description: "Content type for streams endpoints should be `application/vnd.tyk.streams.oas`" + schema: + type: string + enum: [ "application/vnd.tyk.streams.oas" ] + - description: ID of the API you want to update. + example: 4c1c0d8fc885401053ddac4e39ef676b + in: path + name: apiId + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + StreamsAPIExample: + $ref: "#/components/examples/streamsExample" + schema: + allOf: + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json + - $ref: '#/components/schemas/XTykApiGateway' + - $ref: '#/components/schemas/XTykStreaming' + responses: + "200": + content: + application/json: + example: + Message: API updated. + Meta: null + Status: OK + schema: + $ref: '#/components/schemas/ApiResponse' + description: Updated API. + "400": + content: + application/json: + example: + Message: The payload should contain x-tyk-api-gateway and/or x-tyk-streaming. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Malformed API data. + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Unauthorized + "403": + content: + application/json: + example: + Message: Found API with same url. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Forbidden + "404": + content: + application/json: + example: + Message: API definition does not exist + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: API not found. + "500": + content: + application/json: + example: + Message: Error while creating API. + Meta: null + Status: Error + schema: + $ref: '#/components/schemas/ApiResponse' + description: Internal server error. + summary: Update Streams API. + tags: + - Streams APIs + /api/apis/oas: post: description: |- @@ -1974,7 +2395,7 @@ paths: url: https://localhost:8080 schema: allOf: - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json - $ref: '#/components/schemas/XTykApiGateway' responses: "200": @@ -2130,7 +2551,7 @@ paths: $ref: '#/components/examples/oasExample' schema: allOf: - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json - $ref: '#/components/schemas/XTykApiGateway' description: Fetched API. headers: @@ -2262,7 +2683,7 @@ paths: oneOf: - $ref: '#/components/schemas/ApiImportByUrlPayload' - allOf: - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json - $ref: '#/components/schemas/XTykApiGateway' multipart/form-data: schema: @@ -2389,7 +2810,7 @@ paths: url: https://localhost:8080 schema: allOf: - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json - $ref: '#/components/schemas/XTykApiGateway' responses: "200": @@ -2888,7 +3309,7 @@ paths: schema: allOf: - $ref: '#/components/schemas/XTykApiGateway' - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json description: Success. "400": content: @@ -3018,7 +3439,7 @@ paths: schema: oneOf: - $ref: '#/components/schemas/ApiImportByUrlPayload' - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json multipart/form-data: schema: $ref: '#/components/schemas/FormDataFile' @@ -8578,6 +8999,144 @@ paths: summary: Search user with email. tags: - Users + /api/audit-logs: + get: + description: Retrieve audit logs from database + operationId: getAuditLogs + parameters: + - description: Use p query parameter to say which page you want returned. The size of the page is determined by the configuration option page_size of dashboard. + example: 1 + in: query + name: p + required: false + schema: + type: integer + - description: Filters audit logs to show only actions performed by the specified user. This parameter allows you to focus on the activity of a particular user across the system. + example: jhon@mail.com + in: query + name: user + required: false + schema: + type: string + - description: Filters audit logs based on the specific action performed by users. This parameter allows you to focus on particular types of activities within the system. + example: List APIs + in: query + name: action + required: false + schema: + type: string + - description: Filters audit logs based on the IP address from which the action originated. This parameter allows you to focus on activities from specific network locations or to investigate actions from particular IP addresses. + example: 127.0.0.1 + in: query + name: ip + required: false + schema: + type: string + - description: Filters audit logs based on the HTTP method used in the API request. This parameter allows you to focus on specific types of operations performed on the API. + example: POST + in: query + name: method + required: false + schema: + type: string + - description: Filters audit logs based on the HTTP status code returned by the API in response to the request. This parameter allows you to focus on specific outcomes of API interactions. + example: 200 + in: query + name: status + required: false + schema: + type: integer + - description: Filters audit logs based on the specific URL path of the API endpoint that was accessed. This parameter allows you to focus on actions performed on particular resources or sections of your API. + example: /api/apis + in: query + name: url + required: false + schema: + type: string + - description: Specifies the start date for the audit log search. If not provided, the search will include records from the earliest available date. Format DD-MM-YYY. + example: 01-01-1990 + in: query + name: from_date + required: false + schema: + type: string + - description: Specifies the end date for the audit log search. If not provided, the search will include records up to the current date and time. Format DD-MM-YYY. + example: 01-01-2030 + in: query + name: to_date + required: false + schema: + type: string + responses: + "200": + content: + application/json: + example: + pages: 1 + audit_logs: + - _id: 672a83e2b0418b224440ce29 + req_id: 0462e283-a55f-41ab-6482-60d2eeb1858c + org_id: 66cf7f8db0418b1fbe91852b + date: Tue, 05 Nov 2024 17:45:22 -03 + timestamp: 1730839522 + ip: 127.0.0.1 + user: jhon@mail.com + action: '' + method: GET + url: "/api/audit-logs" + status: 200 + - _id: 672a83e9b0418b224440ce2a + req_id: 1276517a-a57e-4b20-5cf5-a6d830fc399d + org_id: 66cf7f8db0418b1fbe91852b + date: Tue, 05 Nov 2024 17:45:29 -03 + timestamp: 1730839529 + ip: 127.0.0.1 + user: jhon@mail.com + action: '' + method: GET + url: "/api/audit-logs" + status: 200 + - _id: 672a83ecb0418b224440ce2b + req_id: 9c720384-2c93-4c38-7164-35b876fd56ef + org_id: 66cf7f8db0418b1fbe91852b + date: Tue, 05 Nov 2024 17:45:32 -03 + timestamp: 1730839532 + ip: 127.0.0.1 + user: jhon@mail.com + action: '' + method: GET + url: "/api/audit-logs" + status: 200 + schema: + $ref: '#/components/schemas/AuditLogs' + description: Audit Logs retrieved successfully + "400": + content: + application/json: + example: + Message: could not retrieve audit records + Meta: null + Status: Error + description: Bad Request + "401": + content: + application/json: + example: + Message: Not authorised + Meta: null + Status: Error + description: Unauthorized + "403": + content: + application/json: + example: + Message: 'access denied: You do not have permission to access /api/audit-logs' + Meta: null + Status: Error + description: Forbidden + summary: List audit logs + tags: + - AuditLogs components: examples: aggregateAnalytics: @@ -8769,6 +9328,79 @@ components: versions: Default: name: Default + streamsExample: + value: + components: + securitySchemes: + bearerAuth: + description: The API Access Credentials + scheme: bearer + type: http + info: + description: This is a sample Streams API. + title: Streams Sample + version: 1.0.0 + openapi: 3.0.3 + paths: + /api/sample/users: + get: + operationId: getUsersSample + responses: + "200": + content: + application/json: + schema: + items: + properties: + name: + type: string + type: object + type: array + description: fetched users + summary: Get users + tags: + - users + security: + - bearerAuth: [ ] + servers: + - url: https://localhost:8080 + x-tyk-api-gateway: + info: + name: user + state: + active: true + server: + listenPath: + strip: true + value: /user-test/ + upstream: + url: https://localhost:8080 + x-tyk-streaming: + streams: + stream1: + input: + kafka: + addressess: + - localhost:9093 + auto_replay_nacks: true + checkpoint_limit: 1024 + consumer_group: group1 + target_version: 3.3.0 + topics: + - instrument.json.AMZN + - instrument.json.GOOG + output: + broker: + outputs: + - stdout: + codec: lines + - http_server: + allowed_verbs: + - GET + path: "/one" + stream_path: "/sse" + ws_path: "/ws" + pattern: fan_out parameters: AccessType: description: Filter for internal or external API versions. @@ -9408,6 +10040,52 @@ components: org_id: type: string type: object + AuditLog: + properties: + _id: + example: 672a83e2b0418b224440ce29 + type: string + req_id: + example: 0462e283-a55f-41ab-6482-60d2eeb1858c + type: string + org_id: + example: 5e9d9544a1dcd60001d0ed20 + type: string + date: + example: Tue, 05 Nov 2024 17:45:22 -03 + type: string + timestamp: + example: 1730839522 + type: integer + ip: + example: 127.0.0.1 + type: string + user: + example: jhon@mail.com + type: string + action: + example: List APIS + type: string + method: + example: GET + type: string + url: + example: /api/apis + type: string + status: + example: 200 + type: integer + type: object + AuditLogs: + properties: + pages: + type: integer + audit_logs: + items: + $ref: '#/components/schemas/AuditLog' + nullable: true + type: array + type: object AuthConfig: properties: auth_header_name: @@ -10015,10 +10693,10 @@ components: DryRunRequest: properties: oas: - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json tyk_oas: allOf: - - $ref: https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json + - $ref: https://raw.githubusercontent.com/TykTechnologies/tyk/refs/heads/master/apidef/oas/schema/3.0.json - $ref: '#/components/schemas/XTykApiGateway' type: object EndPointMeta: @@ -12893,6 +13571,15 @@ components: x-tyk-api-gateway: $ref: '#/components/schemas/XTykAPIGateway' type: object + XTykStreaming: + properties: + x-tyk-streaming: + type: object + properties: + streams: + type: object + additionalProperties: true + #to be added securitySchemes: bearerAuth: description: The Tyk Dashboard API Access Credentials diff --git a/tyk-docs/assets/others/gateway-swagger.yml b/tyk-docs/assets/others/gateway-swagger.yml index a4a63660ff..9abac6f6ff 100644 --- a/tyk-docs/assets/others/gateway-swagger.yml +++ b/tyk-docs/assets/others/gateway-swagger.yml @@ -30,7 +30,7 @@ info: name: Mozilla Public License Version 2.0 url: https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md title: Tyk Gateway API - version: 5.6.0 + version: 5.7.0 servers: - url: https://{tenant} variables: diff --git a/tyk-docs/content/shared/dashboard-config.md b/tyk-docs/content/shared/dashboard-config.md index 5412601f74..8db3efc627 100644 --- a/tyk-docs/content/shared/dashboard-config.md +++ b/tyk-docs/content/shared/dashboard-config.md @@ -847,6 +847,36 @@ Type: `map[string]string`
    This section lists the current languages the Dashboard UI supports +### ui.trial +Trial section defines the information about the cloud trial period. + +### ui.trial.end_date +ENV: TYK_DB_UI_TRIAL_ENDDATE
    +Type: `int64`
    + +EndDate contains the timestamp of end date of the trial in unix UTC timestamp. + +### ui.trial.hubspot_form +HubspotForm contains the hubspot form details. + +### ui.trial.hubspot_form.region +ENV: TYK_DB_UI_TRIAL_HUBSPOTFORM_REGION
    +Type: `string`
    + +The region of the account where the form was created. + +### ui.trial.hubspot_form.portal_id +ENV: TYK_DB_UI_TRIAL_HUBSPOTFORM_PORTALID
    +Type: `string`
    + +The ID of the HubSpot account that the form was created in. + +### ui.trial.hubspot_form.form_id +ENV: TYK_DB_UI_TRIAL_HUBSPOTFORM_FORMID
    +Type: `string`
    + +The form's ID, which is used to retrieve the form definition. + ### ui.hide_help ENV: TYK_DB_UI_HIDEHELP
    Type: `bool`
    @@ -865,6 +895,9 @@ Type: `bool`
    Do not allow license management screen +### ui.labs +Feature flags for the UI + ### ui.dev ENV: TYK_DB_UI_DEV
    Type: `bool`
    @@ -1049,6 +1082,19 @@ Type: `bool`
    Enables detailed records in the audit log. Set to false by default. If set to `true` then audit log records will contain the http-request (without body) and full http-response including the body` +### audit.store_type +ENV: TYK_DB_AUDIT_STORETYPE
    +Type: `string`
    + +StoreType defines the method used to store audit logs. +Possible values are: + - "db": Store logs in a database. + - "file": Store logs in a file. + - "no_op": Disable logging (no operation). + +This field allows you to configure how audit logs are persisted. +The default value is "file". + ### enable_multi_org_users ENV: TYK_DB_ENABLEMULTIORGUSERS
    Type: `bool`
    @@ -1142,3 +1188,15 @@ Type: `bool`
    ValidateSchemaDefaults enables validation of values provided in `default` fields against the declared schemas in the OpenAPI Document. Defaults to false. +### streaming +Holds Tyk Streaming configuration + +### labs +Experimental and beta features configuration settings + +### disable_telemetry +ENV: TYK_DB_DISABLETELEMETRY
    +Type: `bool`
    + +Enable or disable sending telemetry data such as analytics, API configurations, etc. + diff --git a/tyk-docs/content/shared/x-tyk-gateway.md b/tyk-docs/content/shared/x-tyk-gateway.md index 0e4cc470f1..422f02ce51 100644 --- a/tyk-docs/content/shared/x-tyk-gateway.md +++ b/tyk-docs/content/shared/x-tyk-gateway.md @@ -75,6 +75,9 @@ CertificatePinning contains the configuration related to certificate pinning. **Field: `rateLimit` ([RateLimit](#ratelimit))** RateLimit contains the configuration related to API level rate limit. +**Field: `authentication` ([UpstreamAuth](#upstreamauth))** +Authentication contains the configuration related to upstream authentication. + ### **Server** Server contains the configuration that sets Tyk up to receive requests from the client applications. @@ -377,6 +380,19 @@ be considered as 0s/empty. Tyk classic API definition: `global_rate_limit.per`. +### **UpstreamAuth** + +UpstreamAuth holds the configurations related to upstream API authentication. + +**Field: `enabled` (`boolean`)** +Enabled enables upstream API authentication. + +**Field: `basicAuth` ([UpstreamBasicAuth](#upstreambasicauth))** +BasicAuth holds the basic authentication configuration for upstream API authentication. + +**Field: `oauth` ([UpstreamOAuth](#upstreamoauth))** +OAuth contains the configuration for OAuth2 Client Credentials flow. + ### **ListenPath** ListenPath is the base path on Tyk to which requests for this API @@ -636,6 +652,38 @@ Type defined as array of `PinnedPublicKey` values, see [PinnedPublicKey](#pinned ReadableDuration is an alias maintained to be used in imports. +### **UpstreamBasicAuth** + +UpstreamBasicAuth holds upstream basic authentication configuration. + +**Field: `enabled` (`boolean`)** +Enabled enables upstream basic authentication. + +**Field: `header` ([AuthSource](#authsource))** +Header contains configurations for the header value. + +**Field: `username` (`string`)** +Username is the username to be used for upstream basic authentication. + +**Field: `password` (`string`)** +Password is the password to be used for upstream basic authentication. + +### **UpstreamOAuth** + +UpstreamOAuth holds the configuration for OAuth2 Client Credentials flow. + +**Field: `enabled` (`boolean`)** +Enabled activates upstream OAuth2 authentication. + +**Field: `allowedAuthorizeTypes` (`[]string`)** +AllowedAuthorizeTypes specifies the allowed authorization types for upstream OAuth2 authentication. + +**Field: `clientCredentials` ([ClientCredentials](#clientcredentials))** +ClientCredentials holds the configuration for OAuth2 Client Credentials flow. + +**Field: `password` ([PasswordAuthentication](#passwordauthentication))** +PasswordAuthentication holds the configuration for upstream OAauth password authentication flow. + ### **HMAC** HMAC holds the configuration for the HMAC authentication mode. @@ -669,6 +717,9 @@ Tyk classic API definition: `hmac_allowed_clock_skew`. ### **OIDC** OIDC contains configuration for the OIDC authentication mode. +OIDC support will be deprecated starting from 5.7.0. +To avoid any disruptions, we recommend that you use JSON Web Token (JWT) instead, +as explained in https://tyk.io/docs/basic-config-and-security/security/authentication-authorization/openid-connect/. **Field: `enabled` (`boolean`)** Enabled activates the OIDC authentication mode. @@ -981,6 +1032,60 @@ Domain contains the domain name. **Field: `publicKeys` (`[]string`)** PublicKeys contains a list of the public keys pinned to the domain name. +### **AuthSource** + +AuthSource defines an authentication source. + +**Field: `enabled` (`boolean`)** +Enabled activates the auth source. + +Tyk classic API definition: `auth_configs[X].use_param/use_cookie`. + +**Field: `name` (`string`)** +Name is the name of the auth source. + +Tyk classic API definition: `auth_configs[X].param_name/cookie_name`. + +### **ClientCredentials** + +ClientCredentials holds the configuration for OAuth2 Client Credentials flow. + +**Field: `header` ([AuthSource](#authsource))** +Header holds the configuration for the custom header to be used for OAuth authentication. + +**Field: `tokenUrl` (`string`)** +TokenURL is the resource server's token endpoint +URL. This is a constant specific to each server. + +**Field: `scopes` (`[]string`)** +Scopes specifies optional requested permissions. + +**Field: `extraMetadata` (`[]string`)** +ExtraMetadata holds the keys that we want to extract from the token and pass to the upstream. + +### **PasswordAuthentication** + +PasswordAuthentication holds the configuration for upstream OAuth2 password authentication flow. + +**Field: `header` ([AuthSource](#authsource))** +Header holds the configuration for the custom header to be used for OAuth authentication. + +**Field: `username` (`string`)** +Username is the username to be used for upstream OAuth2 password authentication. + +**Field: `password` (`string`)** +Password is the password to be used for upstream OAuth2 password authentication. + +**Field: `tokenUrl` (`string`)** +TokenURL is the resource server's token endpoint +URL. This is a constant specific to each server. + +**Field: `scopes` (`[]string`)** +Scopes specifies optional requested permissions. + +**Field: `extraMetadata` (`[]string`)** +ExtraMetadata holds the keys that we want to extract from the token and pass to the upstream. + ### **Provider** Provider defines an issuer to validate and the Client ID to Policy ID mappings. @@ -1248,20 +1353,6 @@ IgnoreCase is a boolean flag, If set to `true`, checks for requests allowance wi AllowanceType holds the valid allowance types values. -### **AuthSource** - -AuthSource defines an authentication source. - -**Field: `enabled` (`boolean`)** -Enabled activates the auth source. - -Tyk classic API definition: `auth_configs[X].use_param/use_cookie`. - -**Field: `name` (`string`)** -Name is the name of the auth source. - -Tyk classic API definition: `auth_configs[X].param_name/cookie_name`. - ### **AuthSources** AuthSources defines authentication source configuration: headers, cookies and query parameters. @@ -1357,6 +1448,16 @@ HalfOpenStateEnabled , if enabled, allows some requests to pass through the circ Tyk classic API definition: `version_data.versions..extended_paths.circuit_breakers[*].disable_half_open_state`. +### **ClientAuthData** + +ClientAuthData holds the client ID and secret for OAuth2 authentication. + +**Field: `clientId` (`string`)** +ClientID is the application's ID. + +**Field: `clientSecret` (`string`)** +ClientSecret is the application's secret. + ### **EndpointPostPlugin** EndpointPostPlugin contains endpoint level post plugin configuration. @@ -1393,6 +1494,9 @@ Value is the configured timeout in seconds. ### **ExternalOAuth** ExternalOAuth holds configuration for an external OAuth provider. +ExternalOAuth support will be deprecated starting from 5.7.0. +To avoid any disruptions, we recommend that you use JSON Web Token (JWT) instead, +as explained in https://tyk.io/docs/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/. **Field: `enabled` (`boolean`)** Enabled activates external oauth functionality. @@ -2008,3 +2112,10 @@ ProxyOnError proxies if virtual endpoint errors out. **Field: `requireSession` (`boolean`)** RequireSession if enabled passes session to virtual endpoint. +### **XTykStreaming** + +XTykStreaming represents the structure for Tyk streaming configurations. + +**Field: `streams` (`any`)** +Streams contains the configurations related to Tyk Streams. + From 1d1dec8f9408ddeeb05247804526976c4668799e Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Tue, 3 Dec 2024 12:42:37 +0000 Subject: [PATCH 18/39] MDCB 2.7.2 RN (#5718) --- .../release-notes/version-2.7.md | 71 ++++++++++++++++++- 1 file changed, 70 insertions(+), 1 deletion(-) diff --git a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md index d93216ab5d..2c1f8d0539 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md @@ -1,7 +1,7 @@ --- title: Tyk MDCB v2.7 Release Notes description: "Tyk Multi Data-Center Bridge v2.7 release notes" -tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.7", "2.7"] +tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.7", "2.7.0", "2.7.1", "2.7.2"] --- Licensed Protected Product @@ -11,6 +11,75 @@ Licensed Protected Product ## Support Lifetime Our minor releases are supported until our next minor comes out. +--- + +## 2.7.2 Release Notes + +### Release Date 03 December 2024 + +### Release Highlights + +#### Support Tyk 5.7 +Tyk MDCB 2.7.2 has been updated to support API configurations from Tyk 5.7.0. + +### Breaking Changes +This release has no breaking changes. + +### Dependencies {#dependencies-X.Y.Z} + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations +There are no deprecations in this release. + +### Upgrade instructions +For users currently on v2.7.1, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower minor), it is advisable to bypass version 2.7.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +### Downloads +- [Docker image v2.7.2](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.2) + - ```bash + docker pull tykio/tyk-mdcb-docker:v2.7.2 + ``` + +### Changelog {#Changelog-v2.7.2} + +#### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.7 + +MDCB 2.7.2 supports Tyk API definitions up to Tyk Gateway v5.7.0. Please use MDCB 2.7.2+ with Tyk Gateway v5.7.0+. +
      +
    • +
    + +#### Security Fixes +
      + +
    • +
      + Fixed the following CVEs: + + - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) + - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) + - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) +
      +
    • +
    + +--- + ## 2.7.1 Release Notes ##### Release date 10 October 2024 From 498a477a14eb0616c2ac4dcaaf195ec973d9f127 Mon Sep 17 00:00:00 2001 From: Eopayemi <157506568+Eopayemi@users.noreply.github.com> Date: Tue, 3 Dec 2024 12:44:22 +0000 Subject: [PATCH 19/39] Add Deprecation Notice to 5.7.0 (#5734) --- .../ext-oauth-middleware.md | 12 +----------- .../tyk-charts/tyk-control-plane-chart.md | 2 +- .../product-stack/tyk-charts/tyk-stack-chart.md | 2 +- .../data-storage-configuration.md | 2 +- .../deploy/install-tyk-enterprise-portal.md | 4 ++-- .../install-portal-using-docker.md | 7 +++++++ .../install-portal-using-helm.md | 2 +- .../install-portal-using-rpm.md | 2 +- tyk-docs/content/tyk-dashboard/database-options.md | 8 +++++++- tyk-docs/content/tyk-pump/configuration.md | 4 ++-- 10 files changed, 24 insertions(+), 21 deletions(-) diff --git a/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md b/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md index f432d04d21..10f10cf2db 100644 --- a/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md +++ b/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md @@ -8,23 +8,13 @@ menu: parent: "OAuth 2.0" weight: 7 --- -{{< note success >}} -**Note** - -Tyk's dedicated External OAuth middleware will be deprecated from Tyk 5.7.0. Tyk's [JSON Web Token (JWT)]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) authentication method also allows you to integrate with a third party OAuth provider, so the dedicated middleware will be deprecated to reduce duplication and potential for misconfiguration. -{{< /note >}} {{< note success >}} **Note** -We've deprecated the External OAuth middleware in Tyk 5.7.0 to simplify configurations and avoid redundancy. For third-party OAuth integration, please switch to Tyk’s [JSON Web Tokens (JWT)]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. +We've deprecated Tyk's dedicated External OAuth middleware in Tyk 5.7.0 to simplify configurations and avoid redundancy. For third-party OAuth integration, please switch to Tyk’s [JSON Web Tokens (JWT)]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. {{< /note >}} -{{< note success >}} -**Note** - -We've deprecated the External OAuth middleware in Tyk 5.7.0 to simplify configurations and avoid redundancy. For third-party OAuth integration, please switch to Tyk’s [JSON Web Tokens (JWT)](https://tyk.io/docs/basic-config-and-security/security/authentication-authorization/json-web-tokens/#about-jwts), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. -{{< /note >}} ## Introduction diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index 3a48d1aacf..c37127a750 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -799,7 +799,7 @@ tyk-dev-portal: {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} By default, Tyk Developer Portal use `sqlite3` to store portal metadata. If you want to use a different SQL Database, please modify the section below. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index 09a510638f..4279060b18 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -822,7 +822,7 @@ tyk-dev-portal: {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} By default, Tyk Developer Portal use `sqlite3` to store portal metadata. If you want to use other SQL Database, please modify the section below. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration.md b/tyk-docs/content/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration.md index 6a143e9690..1e32bafb58 100644 --- a/tyk-docs/content/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration.md +++ b/tyk-docs/content/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration.md @@ -167,7 +167,7 @@ Aggregated analytics corresponds to data that is used for the display of charts {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} Storage of aggregated analytics data has been tested with PostgreSQL and SqlLite databases. The following environment variables can be used to manage this configuration: diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal.md index 89a4a1cf0d..77e559eaa9 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal.md @@ -72,8 +72,8 @@ In terms of admin functionality, the only limitation will be the inability to ap {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} -Yes, since 1.4.0 version of the Enterprise Developer Portal, it supports SQL databases (MariaDB, SQLite, MySQL, and PostgreSQL) for storing the portal's CMS assets. +The Enterprise Developer Portal supports SQL databases (MariaDB, MySQL, and PostgreSQL) for storing the portal's CMS assets. During the bootstrap process, the portal will create the appropriate tables in the main database. The only thing required to enable SQL storage for the portal's assets is to specify the `db` [storage type]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_storage" >}}) either via a config file or an environment variable. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md index f317d1fe4d..6884803a56 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md @@ -225,6 +225,13 @@ docker volume rm tyk-portal-mysql-data SQLite is useful for quick deployment and testing, however we don't recommend using it in production. {{< /warning >}} +{{< note success >}} +**Note** + +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. +{{< /note >}} + + ### Prepare an environment variables file and data volumes #### Create a volume for the portal's database To start with, you need to create a single volume for sqlite: diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm.md index af16a95447..234820a16d 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm.md @@ -45,7 +45,7 @@ Where `TYK_ORG` and `TYK_AUTH` are the Tyk Dashboard Organization ID and the Tyk {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} You must set the following values in the `values.yaml` or with `--set {field-name}={field-value}` with the helm upgrade command: diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm.md index 72d546947e..eec52330d4 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm.md @@ -52,7 +52,7 @@ sudo rpm -i portal-1.7.0-1.x86_64.rpm {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} Before starting the portal service, you need to configure the portal. Once the rpm package has been installed, the portal configuration file will be located in `/opt/portal/portal.conf`. diff --git a/tyk-docs/content/tyk-dashboard/database-options.md b/tyk-docs/content/tyk-dashboard/database-options.md index 04bd69c6ca..b12ae955aa 100644 --- a/tyk-docs/content/tyk-dashboard/database-options.md +++ b/tyk-docs/content/tyk-dashboard/database-options.md @@ -43,8 +43,14 @@ All data stored in SQL platforms will be identical to our existing MongoDB suppo ## Which platform should you use? +{{< note success >}} +**Note** + +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. +{{< /note >}} + We recommend the following: -* For PoC installations, you can use any of the following platforms (SQLite, PostgreSQL or MongoDB). +* For PoC installations, you can use PostgreSQL or MongoDB. * For production installations, we **only** support MongoDB or PostgreSQL diff --git a/tyk-docs/content/tyk-pump/configuration.md b/tyk-docs/content/tyk-pump/configuration.md index 47f2e50079..9f416aba83 100755 --- a/tyk-docs/content/tyk-pump/configuration.md +++ b/tyk-docs/content/tyk-pump/configuration.md @@ -31,10 +31,10 @@ The Tyk Dashboard uses the `mongo-pump-aggregate` collection to display analytic {{< note success >}} **Note** -SQLite support will be deprecated from Tyk 5.7.0. To avoid disrupution, please transition to PostgreSQL, MongoDB or one of the listed compatible alternatives. +Tyk no longer supports SQLite as of Tyk 5.7.0. To avoid disruption, please transition to [PostgreSQL]({{< ref"planning-for-production/database-settings/postgresql#introduction" >}}), [MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}), or one of the listed compatible alternatives. {{< /note >}} -In v4.0 of the Tyk Dashboard, we have added support for the following SQL platforms: +In v4.0 of the Tyk Dashboard, we added support for the following SQL platforms: - PostgreSQL - SQLite From ed45efde79d68b84139bd5d8d5325b4322c5b791 Mon Sep 17 00:00:00 2001 From: Sharad Regoti Date: Tue, 3 Dec 2024 19:20:56 +0530 Subject: [PATCH 20/39] Fixed page availablilty --- scripts/page_available_since.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/page_available_since.py b/scripts/page_available_since.py index 6712559db3..8d8a2710bd 100644 --- a/scripts/page_available_since.py +++ b/scripts/page_available_since.py @@ -8,7 +8,7 @@ "branch": "release-5.7" }, { - "path": "/docs/5.6", + "path": "/docs/5.6/", "name": "5.6", "branch": "release-5.6" }, From ab6cf4c218cd73e368cb4e1cb150ce83c2429be8 Mon Sep 17 00:00:00 2001 From: Leonid Bugaev Date: Tue, 3 Dec 2024 16:59:23 +0300 Subject: [PATCH 21/39] Update page availability in each docs version (#5783) Generate and update file to show when a url was added to docs Co-authored-by: sharadregoti --- tyk-docs/data/page_available_since.json | 1322 ++++++++++++++++++++--- 1 file changed, 1195 insertions(+), 127 deletions(-) diff --git a/tyk-docs/data/page_available_since.json b/tyk-docs/data/page_available_since.json index 5a78258ed0..10e5e36bb4 100644 --- a/tyk-docs/data/page_available_since.json +++ b/tyk-docs/data/page_available_since.json @@ -2,7 +2,12 @@ "versions": [ { "path": "/docs/", - "name": "5.6 - Latest", + "name": "5.7 - Latest", + "branch": "release-5.7" + }, + { + "path": "/docs/5.6/", + "name": "5.6", "branch": "release-5.6" }, { @@ -94,6 +99,7 @@ }, "/advanced-configuration/compose-apis/": { "/docs/": "/advanced-configuration/compose-apis/virtual-endpoints/", + "/docs/5.6/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.5/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.4/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.3/": "/advanced-configuration/compose-apis/virtual-endpoints/", @@ -114,6 +120,7 @@ }, "/advanced-configuration/compose-apis/sample-batch-funtion/": { "/docs/": "/advanced-configuration/compose-apis/demo-virtual-endpoint/", + "/docs/5.6/": "/advanced-configuration/compose-apis/demo-virtual-endpoint/", "/docs/5.5/": "/advanced-configuration/compose-apis/demo-virtual-endpoint/", "/docs/5.4/": "/advanced-configuration/compose-apis/demo-virtual-endpoint/", "/docs/5.3/": "/advanced-configuration/compose-apis/demo-virtual-endpoint/", @@ -134,6 +141,7 @@ }, "/advanced-configuration/distributed-tracing/jaeger/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", @@ -151,6 +159,7 @@ }, "/advanced-configuration/distributed-tracing/newrelic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", @@ -168,6 +177,7 @@ }, "/advanced-configuration/distributed-tracing/zipkin/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", @@ -212,6 +222,7 @@ }, "/advanced-configuration/integrate/3rd-party-identity-providers/tib-rest-api/": { "/docs/": "/tyk-identity-broker/tib-rest-api/", + "/docs/5.6/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.5/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.4/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.3/": "/tyk-identity-broker/tib-rest-api/", @@ -232,6 +243,7 @@ }, "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -249,6 +261,7 @@ }, "/advanced-configuration/integrate/api-auth-mode/oidc-auth0-example/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -266,6 +279,7 @@ }, "/advanced-configuration/integrate/api-auth-mode/open-id-connect/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -286,6 +300,7 @@ }, "/advanced-configuration/integrate/sso/dashboard-login-azure-sso/": { "/docs/": "/tyk-stack/tyk-manager/sso/dashboard-login-azure-sso/", + "/docs/5.6/": "/tyk-stack/tyk-manager/sso/dashboard-login-azure-sso/", "/docs/5.5/": "/tyk-stack/tyk-manager/sso/dashboard-login-azure-sso/", "/docs/5.4/": "/tyk-stack/tyk-manager/sso/dashboard-login-azure-sso/", "/docs/5.3/": "/tyk-stack/tyk-manager/sso/dashboard-login-azure-sso/", @@ -303,6 +318,7 @@ }, "/advanced-configuration/integrate/sso/dashboard-login-keycloak-sso/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", @@ -312,6 +328,7 @@ }, "/advanced-configuration/integrate/sso/dashboard-login-ldap-tib/": { "/docs/": "/advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/", + "/docs/5.6/": "/advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/", "/docs/5.5/": "/advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/", "/docs/5.4/": "/advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/", "/docs/5.3/": "/advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/", @@ -329,6 +346,7 @@ }, "/advanced-configuration/integrate/sso/dashboard-login-okta-tib/": { "/docs/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", + "/docs/5.6/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.5/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.4/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.3/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", @@ -346,6 +364,7 @@ }, "/advanced-configuration/log-data/": { "/docs/": "/log-data/", + "/docs/5.6/": "/log-data/", "/docs/5.5/": "/log-data/", "/docs/5.4/": "/log-data/", "/docs/5.3/": "/log-data/", @@ -375,6 +394,7 @@ }, "/advanced-configuration/manage-multiple-environments/tyk-sync/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", "/docs/5.3/": "/tyk-sync/", @@ -401,6 +421,7 @@ }, "/advanced-configuration/opentracing/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", @@ -421,6 +442,7 @@ }, "/advanced-configuration/sse-proxy/": { "/docs/": "/advanced-configuration/sse-proxy/", + "/docs/5.6/": "/advanced-configuration/sse-proxy/", "/docs/5.5/": "/advanced-configuration/sse-proxy/", "/docs/5.4/": "/advanced-configuration/sse-proxy/", "/docs/5.3/": "/advanced-configuration/sse-proxy/", @@ -444,6 +466,7 @@ }, "/advanced-configuration/transform-traffic/request-body/": { "/docs/": "/transform-traffic/request-body/", + "/docs/5.6/": "/transform-traffic/request-body/", "/docs/5.5/": "/transform-traffic/request-body/", "/docs/5.4/": "/transform-traffic/request-body/", "/docs/5.3/": "/transform-traffic/request-body/", @@ -461,6 +484,7 @@ }, "/advanced-configuration/transform-traffic/request-headers/": { "/docs/": "/transform-traffic/request-headers/", + "/docs/5.6/": "/transform-traffic/request-headers/", "/docs/5.5/": "/transform-traffic/request-headers/", "/docs/5.4/": "/transform-traffic/request-headers/", "/docs/5.3/": "/transform-traffic/request-headers/", @@ -490,6 +514,7 @@ }, "/advanced-configuration/transform-traffic/url-rewriting/": { "/docs/": "/transform-traffic/url-rewriting/", + "/docs/5.6/": "/transform-traffic/url-rewriting/", "/docs/5.5/": "/transform-traffic/url-rewriting/", "/docs/5.4/": "/transform-traffic/url-rewriting/", "/docs/5.3/": "/transform-traffic/url-rewriting/", @@ -507,6 +532,7 @@ }, "/advanced-configuration/transform-traffic/validate-json/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", @@ -527,6 +553,7 @@ }, "/analyse/": { "/docs/": "/tyk-dashboard-analytics/", + "/docs/5.6/": "/tyk-dashboard-analytics/", "/docs/5.5/": "/tyk-dashboard-analytics/", "/docs/5.4/": "/tyk-dashboard-analytics/", "/docs/5.3/": "/tyk-dashboard-analytics/", @@ -538,6 +565,7 @@ }, "/analyse/other-data-stores/": { "/docs/": "/tyk-stack/tyk-pump/other-data-stores/", + "/docs/5.6/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.5/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.4/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.3/": "/tyk-stack/tyk-pump/other-data-stores/", @@ -549,6 +577,7 @@ }, "/analyse/redis-mongodb-sizing/": { "/docs/": "/planning-for-production/database-settings/", + "/docs/5.6/": "/planning-for-production/database-settings/", "/docs/5.5/": "/planning-for-production/database-settings/", "/docs/5.4/": "/planning-for-production/database-settings/", "/docs/5.3/": "/planning-for-production/database-settings/", @@ -566,6 +595,7 @@ }, "/analytics-and-reporting/": { "/docs/": "/tyk-pump/", + "/docs/5.6/": "/tyk-pump/", "/docs/5.5/": "/tyk-pump/", "/docs/5.4/": "/tyk-pump/", "/docs/5.3/": "/tyk-pump/", @@ -583,6 +613,7 @@ }, "/analytics-and-reporting/capping-analytics-data-storage/": { "/docs/": "/tyk-stack/tyk-manager/analytics/capping-analytics-data-storage/", + "/docs/5.6/": "/tyk-stack/tyk-manager/analytics/capping-analytics-data-storage/", "/docs/5.5/": "/tyk-stack/tyk-manager/analytics/capping-analytics-data-storage/", "/docs/5.4/": "/tyk-stack/tyk-manager/analytics/capping-analytics-data-storage/", "/docs/5.3/": "/tyk-stack/tyk-manager/analytics/capping-analytics-data-storage/", @@ -600,6 +631,7 @@ }, "/analytics-and-reporting/error-overview/": { "/docs/": "/tyk-dashboard-analytics/error-overview/", + "/docs/5.6/": "/tyk-dashboard-analytics/error-overview/", "/docs/5.5/": "/tyk-dashboard-analytics/error-overview/", "/docs/5.4/": "/tyk-dashboard-analytics/error-overview/", "/docs/5.3/": "/tyk-dashboard-analytics/error-overview/", @@ -617,6 +649,7 @@ }, "/analytics-and-reporting/geographic-distribution/": { "/docs/": "/tyk-stack/tyk-manager/analytics/geographic-distribution/", + "/docs/5.6/": "/tyk-stack/tyk-manager/analytics/geographic-distribution/", "/docs/5.5/": "/tyk-stack/tyk-manager/analytics/geographic-distribution/", "/docs/5.4/": "/tyk-stack/tyk-manager/analytics/geographic-distribution/", "/docs/5.3/": "/tyk-stack/tyk-manager/analytics/geographic-distribution/", @@ -634,6 +667,7 @@ }, "/analytics-and-reporting/log-browser/": { "/docs/": "/tyk-stack/tyk-manager/analytics/log-browser/", + "/docs/5.6/": "/tyk-stack/tyk-manager/analytics/log-browser/", "/docs/5.5/": "/tyk-stack/tyk-manager/analytics/log-browser/", "/docs/5.4/": "/tyk-stack/tyk-manager/analytics/log-browser/", "/docs/5.3/": "/tyk-stack/tyk-manager/analytics/log-browser/", @@ -651,6 +685,7 @@ }, "/analytics-and-reporting/other-data-stores/": { "/docs/": "/tyk-stack/tyk-pump/other-data-stores/", + "/docs/5.6/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.5/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.4/": "/tyk-stack/tyk-pump/other-data-stores/", "/docs/5.3/": "/tyk-stack/tyk-pump/other-data-stores/", @@ -668,6 +703,7 @@ }, "/analytics-and-reporting/redis-mongodb-sizing/": { "/docs/": "/planning-for-production/database-settings/", + "/docs/5.6/": "/planning-for-production/database-settings/", "/docs/5.5/": "/planning-for-production/database-settings/", "/docs/5.4/": "/planning-for-production/database-settings/", "/docs/5.3/": "/planning-for-production/database-settings/", @@ -685,6 +721,7 @@ }, "/analytics-and-reporting/separated-analytics-storage/": { "/docs/": "/tyk-stack/tyk-pump/separated-analytics-storage/", + "/docs/5.6/": "/tyk-stack/tyk-pump/separated-analytics-storage/", "/docs/5.5/": "/tyk-stack/tyk-pump/separated-analytics-storage/", "/docs/5.4/": "/tyk-stack/tyk-pump/separated-analytics-storage/", "/docs/5.3/": "/tyk-stack/tyk-pump/separated-analytics-storage/", @@ -702,6 +739,7 @@ }, "/analytics-and-reporting/traffic-overview/": { "/docs/": "/tyk-dashboard-analytics/traffic-overview/", + "/docs/5.6/": "/tyk-dashboard-analytics/traffic-overview/", "/docs/5.5/": "/tyk-dashboard-analytics/traffic-overview/", "/docs/5.4/": "/tyk-dashboard-analytics/traffic-overview/", "/docs/5.3/": "/tyk-dashboard-analytics/traffic-overview/", @@ -719,6 +757,7 @@ }, "/analytics-and-reporting/traffic-per-api/": { "/docs/": "/tyk-dashboard-analytics/traffic-per-api/", + "/docs/5.6/": "/tyk-dashboard-analytics/traffic-per-api/", "/docs/5.5/": "/tyk-dashboard-analytics/traffic-per-api/", "/docs/5.4/": "/tyk-dashboard-analytics/traffic-per-api/", "/docs/5.3/": "/tyk-dashboard-analytics/traffic-per-api/", @@ -736,6 +775,7 @@ }, "/analytics-and-reporting/traffic-per-oauth-client/": { "/docs/": "/tyk-dashboard-analytics/traffic-per-oauth-client/", + "/docs/5.6/": "/tyk-dashboard-analytics/traffic-per-oauth-client/", "/docs/5.5/": "/tyk-dashboard-analytics/traffic-per-oauth-client/", "/docs/5.4/": "/tyk-dashboard-analytics/traffic-per-oauth-client/", "/docs/5.3/": "/tyk-dashboard-analytics/traffic-per-oauth-client/", @@ -753,6 +793,7 @@ }, "/analytics-and-reporting/traffic-per-token/": { "/docs/": "/tyk-dashboard-analytics/traffic-per-token/", + "/docs/5.6/": "/tyk-dashboard-analytics/traffic-per-token/", "/docs/5.5/": "/tyk-dashboard-analytics/traffic-per-token/", "/docs/5.4/": "/tyk-dashboard-analytics/traffic-per-token/", "/docs/5.3/": "/tyk-dashboard-analytics/traffic-per-token/", @@ -770,6 +811,7 @@ }, "/analytics-and-reporting/tyk-analytics-fields/": { "/docs/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", + "/docs/5.6/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.5/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.4/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.3/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", @@ -781,6 +823,7 @@ }, "/analytics-and-reporting/useful-debug-modes/": { "/docs/": "/tyk-stack/tyk-pump/useful-debug-modes/", + "/docs/5.6/": "/tyk-stack/tyk-pump/useful-debug-modes/", "/docs/5.5/": "/tyk-stack/tyk-pump/useful-debug-modes/", "/docs/5.4/": "/tyk-stack/tyk-pump/useful-debug-modes/", "/docs/5.3/": "/tyk-stack/tyk-pump/useful-debug-modes/", @@ -798,12 +841,14 @@ }, "/api-management/ai-management/overview/": { "/docs/": "/api-management/ai-management/overview/", + "/docs/5.6/": "/api-management/ai-management/overview/", "/docs/5.5/": "/api-management/ai-management/overview/", "/docs/5.4/": "/api-management/ai-management/overview/", "/docs/nightly/": "/api-management/ai-management/overview/" }, "/api-management/async-apis/advanced-use-cases/": { "/docs/": "/api-management/async-apis/advanced-use-cases/", + "/docs/5.6/": "/api-management/async-apis/advanced-use-cases/", "/docs/5.5/": "/api-management/async-apis/advanced-use-cases/", "/docs/5.4/": "/api-management/async-apis/advanced-use-cases/", "/docs/5.3/": "/api-management/async-apis/advanced-use-cases/", @@ -811,6 +856,7 @@ }, "/api-management/async-apis/use-cases/": { "/docs/": "/api-management/async-apis/use-cases/", + "/docs/5.6/": "/api-management/async-apis/use-cases/", "/docs/5.5/": "/api-management/async-apis/use-cases/", "/docs/5.4/": "/api-management/async-apis/use-cases/", "/docs/5.3/": "/api-management/async-apis/use-cases/", @@ -818,40 +864,43 @@ }, "/api-management/authentication-authorization/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/nightly/": "/api-management/authentication-authorization/", - "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/5.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/5.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/5.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/4.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/4.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/4.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/4.0/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/3.2/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/3.1/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", - "/docs/3-lts/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/" + "/docs/5.5/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.4/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/5.0/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/4.0/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3.2/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3.1/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", + "/docs/3-lts/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/" }, "/api-management/automations/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/", - "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/", - "/docs/5.4/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/5.3/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/5.2/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/5.1/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/5.0/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", - "/docs/4.3/": "/tyk-stack/tyk-operator/migration/", - "/docs/4.2/": "/tyk-stack/tyk-operator/migration/", - "/docs/4.1/": "/tyk-stack/tyk-operator/migration/", - "/docs/4.0/": "/tyk-stack/tyk-operator/migration/", + "/docs/5.5/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/5.4/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/5.3/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/5.2/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/5.1/": "/product-stack/tyk-operator/tyk-ingress-controller/", + "/docs/5.0/": "/tyk-stack/tyk-operator/publish-an-api/", + "/docs/4.3/": "/tyk-stack/tyk-operator/publish-an-api/", + "/docs/4.2/": "/tyk-stack/tyk-operator/publish-an-api/", + "/docs/4.1/": "/tyk-stack/tyk-operator/publish-an-api/", + "/docs/4.0/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/3.2/": "/tyk-sync/", "/docs/3.1/": "/tyk-sync/", "/docs/3-lts/": "/tyk-sync/" }, "/api-management/manage-apis/api-operations/api-observability/": { "/docs/": "/api-management/manage-apis/api-operations/api-observability/", + "/docs/5.6/": "/api-management/manage-apis/api-operations/api-observability/", "/docs/5.5/": "/api-management/manage-apis/api-operations/api-observability/", "/docs/5.4/": "/api-management/manage-apis/api-operations/api-observability/", "/docs/5.3/": "/api-management/manage-apis/api-operations/api-observability/", @@ -860,6 +909,7 @@ }, "/api-management/manage-apis/deploy-apis/deploy-apis-overview/": { "/docs/": "/api-management/manage-apis/deploy-apis/deploy-apis-overview/", + "/docs/5.6/": "/api-management/manage-apis/deploy-apis/deploy-apis-overview/", "/docs/5.5/": "/api-management/manage-apis/deploy-apis/deploy-apis-overview/", "/docs/5.4/": "/api-management/manage-apis/deploy-apis/deploy-apis-overview/", "/docs/5.3/": "/api-management/manage-apis/deploy-apis/deploy-apis-overview/", @@ -869,6 +919,7 @@ }, "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/": { "/docs/": "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/", + "/docs/5.6/": "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/", "/docs/5.5/": "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/", "/docs/5.4/": "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/", "/docs/5.3/": "/api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware/", @@ -881,26 +932,28 @@ }, "/api-management/security-best-practices/": { "/docs/nightly/": "/api-management/security-best-practices/", - "/docs/5.0/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/4.3/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/4.2/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/4.1/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/4.0/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/3.2/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/3.1/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/3-lts/": "/advanced-configuration/integrate/api-auth-mode/json-web-tokens/", - "/docs/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/5.5/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/5.4/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/5.3/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/5.2/": "/apim-best-practice/api-security-best-practice/governance/", - "/docs/5.1/": "/apim-best-practice/api-security-best-practice/governance/" + "/docs/": "/basic-config-and-security/security/", + "/docs/5.6/": "/basic-config-and-security/security/", + "/docs/5.5/": "/basic-config-and-security/security/", + "/docs/5.4/": "/basic-config-and-security/security/", + "/docs/5.3/": "/basic-config-and-security/security/", + "/docs/5.2/": "/basic-config-and-security/security/", + "/docs/5.1/": "/basic-config-and-security/security/", + "/docs/5.0/": "/basic-config-and-security/security/", + "/docs/4.3/": "/basic-config-and-security/security/", + "/docs/4.2/": "/basic-config-and-security/security/", + "/docs/4.1/": "/basic-config-and-security/security/", + "/docs/4.0/": "/basic-config-and-security/security/", + "/docs/3.2/": "/basic-config-and-security/security/", + "/docs/3.1/": "/basic-config-and-security/security/", + "/docs/3-lts/": "/basic-config-and-security/security/" }, "/api-management/upstream-authentication/": { "/docs/nightly/": "/api-management/upstream-authentication/" }, "/apim-best-practice/api-security-best-practice/authentication/": { "/docs/": "/apim-best-practice/api-security-best-practice/authentication/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/authentication/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authentication/", @@ -910,6 +963,7 @@ }, "/apim-best-practice/api-security-best-practice/authorisation-levels/": { "/docs/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authorisation-levels/", @@ -919,6 +973,7 @@ }, "/apim-best-practice/api-security-best-practice/authorisation/": { "/docs/": "/apim-best-practice/api-security-best-practice/authorisation/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/authorisation/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/authorisation/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/authorisation/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/authorisation/", @@ -928,6 +983,7 @@ }, "/apim-best-practice/api-security-best-practice/configuration/": { "/docs/": "/apim-best-practice/api-security-best-practice/configuration/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/configuration/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/configuration/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/configuration/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/configuration/", @@ -937,6 +993,7 @@ }, "/apim-best-practice/api-security-best-practice/governance/": { "/docs/": "/apim-best-practice/api-security-best-practice/governance/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/governance/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/governance/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/governance/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/governance/", @@ -946,6 +1003,7 @@ }, "/apim-best-practice/api-security-best-practice/overview/": { "/docs/": "/apim-best-practice/api-security-best-practice/overview/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/overview/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/overview/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/overview/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/overview/", @@ -955,6 +1013,7 @@ }, "/apim-best-practice/api-security-best-practice/resource-consumption/": { "/docs/": "/apim-best-practice/api-security-best-practice/resource-consumption/", + "/docs/5.6/": "/apim-best-practice/api-security-best-practice/resource-consumption/", "/docs/5.5/": "/apim-best-practice/api-security-best-practice/resource-consumption/", "/docs/5.4/": "/apim-best-practice/api-security-best-practice/resource-consumption/", "/docs/5.3/": "/apim-best-practice/api-security-best-practice/resource-consumption/", @@ -964,6 +1023,7 @@ }, "/apim-best-practice/overview/": { "/docs/": "/apim-best-practice/overview/", + "/docs/5.6/": "/apim-best-practice/overview/", "/docs/5.5/": "/apim-best-practice/overview/", "/docs/5.4/": "/apim-best-practice/overview/", "/docs/5.3/": "/apim-best-practice/overview/", @@ -979,6 +1039,7 @@ }, "/apim/open-source/getting-started/": { "/docs/": "/apim/open-source/", + "/docs/5.6/": "/apim/open-source/", "/docs/5.5/": "/apim/open-source/", "/docs/5.4/": "/apim/open-source/", "/docs/5.3/": "/apim/open-source/", @@ -1020,6 +1081,7 @@ }, "/basic-config-and-security/reduce-latency/caching/advanced-cache/": { "/docs/": "/basic-config-and-security/reduce-latency/caching/advanced-cache/", + "/docs/5.6/": "/basic-config-and-security/reduce-latency/caching/advanced-cache/", "/docs/5.5/": "/basic-config-and-security/reduce-latency/caching/advanced-cache/", "/docs/5.4/": "/basic-config-and-security/reduce-latency/caching/advanced-cache/", "/docs/5.3/": "/basic-config-and-security/reduce-latency/caching/advanced-cache/", @@ -1030,6 +1092,7 @@ }, "/basic-config-and-security/reduce-latency/caching/global-cache/": { "/docs/": "/basic-config-and-security/reduce-latency/caching/global-cache/", + "/docs/5.6/": "/basic-config-and-security/reduce-latency/caching/global-cache/", "/docs/5.5/": "/basic-config-and-security/reduce-latency/caching/global-cache/", "/docs/5.4/": "/basic-config-and-security/reduce-latency/caching/global-cache/", "/docs/5.3/": "/basic-config-and-security/reduce-latency/caching/global-cache/", @@ -1040,6 +1103,7 @@ }, "/basic-config-and-security/reduce-latency/caching/invalidate-cache/": { "/docs/": "/basic-config-and-security/reduce-latency/caching/invalidate-cache/", + "/docs/5.6/": "/basic-config-and-security/reduce-latency/caching/invalidate-cache/", "/docs/5.5/": "/basic-config-and-security/reduce-latency/caching/invalidate-cache/", "/docs/5.4/": "/basic-config-and-security/reduce-latency/caching/invalidate-cache/", "/docs/5.3/": "/basic-config-and-security/reduce-latency/caching/invalidate-cache/", @@ -1050,6 +1114,7 @@ }, "/basic-config-and-security/reduce-latency/caching/optimise-cache/": { "/docs/": "/basic-config-and-security/reduce-latency/caching/optimise-cache/", + "/docs/5.6/": "/basic-config-and-security/reduce-latency/caching/optimise-cache/", "/docs/5.5/": "/basic-config-and-security/reduce-latency/caching/optimise-cache/", "/docs/5.4/": "/basic-config-and-security/reduce-latency/caching/optimise-cache/", "/docs/5.3/": "/basic-config-and-security/reduce-latency/caching/optimise-cache/", @@ -1060,6 +1125,7 @@ }, "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/": { "/docs/": "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/", + "/docs/5.6/": "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/", "/docs/5.5/": "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/", "/docs/5.4/": "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/", "/docs/5.3/": "/basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/", @@ -1091,6 +1157,7 @@ }, "/basic-config-and-security/security/": { "/docs/": "/basic-config-and-security/security/", + "/docs/5.6/": "/basic-config-and-security/security/", "/docs/5.5/": "/basic-config-and-security/security/", "/docs/5.4/": "/basic-config-and-security/security/", "/docs/5.3/": "/basic-config-and-security/security/", @@ -1108,6 +1175,7 @@ }, "/basic-config-and-security/security/authentication-&-authorization/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1125,6 +1193,7 @@ }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1142,6 +1211,7 @@ }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1159,6 +1229,7 @@ }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1176,6 +1247,7 @@ }, "/basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1193,6 +1265,7 @@ }, "/basic-config-and-security/security/authentication--authorization/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1210,6 +1283,7 @@ }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1227,6 +1301,7 @@ }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1244,6 +1319,7 @@ }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1261,6 +1337,7 @@ }, "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1278,6 +1355,7 @@ }, "/basic-config-and-security/security/authentication-authorization/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -1292,6 +1370,7 @@ }, "/basic-config-and-security/security/authentication-authorization/basic-auth/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/basic-auth/", @@ -1309,6 +1388,7 @@ }, "/basic-config-and-security/security/authentication-authorization/bearer-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", @@ -1326,6 +1406,7 @@ }, "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/": { "/docs/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", + "/docs/5.6/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware/", @@ -1337,6 +1418,7 @@ }, "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/go-plugin-authentication/", @@ -1354,6 +1436,7 @@ }, "/basic-config-and-security/security/authentication-authorization/hmac-signatures/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/hmac-signatures/", @@ -1371,6 +1454,7 @@ }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", @@ -1388,6 +1472,7 @@ }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-auth0/", @@ -1401,6 +1486,7 @@ }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak/", @@ -1411,6 +1497,7 @@ }, "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token/", @@ -1428,6 +1515,7 @@ }, "/basic-config-and-security/security/authentication-authorization/multiple-auth/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/multiple-auth/", @@ -1445,6 +1533,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth-2-0/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", @@ -1462,6 +1551,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/auth-code-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1476,6 +1566,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/client-credentials-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant/", @@ -1490,6 +1581,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/refresh-token-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant/", @@ -1501,6 +1593,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth2-0/username-password-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant/", @@ -1515,6 +1608,7 @@ }, "/basic-config-and-security/security/authentication-authorization/oauth2.0/auth-code-grant/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant/", @@ -1526,6 +1620,7 @@ }, "/basic-config-and-security/security/authentication-authorization/open-keyless/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/open-keyless/", @@ -1543,6 +1638,7 @@ }, "/basic-config-and-security/security/authentication-authorization/openid-connect/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -1560,6 +1656,7 @@ }, "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", @@ -1577,6 +1674,7 @@ }, "/basic-config-and-security/security/authentication-authorization/physical-token-expiry/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/physical-key-expiry/", @@ -1594,6 +1692,7 @@ }, "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication/", @@ -1611,6 +1710,7 @@ }, "/basic-config-and-security/security/certificate-pinning/": { "/docs/": "/security/certificate-pinning/", + "/docs/5.6/": "/security/certificate-pinning/", "/docs/5.5/": "/security/certificate-pinning/", "/docs/5.4/": "/security/certificate-pinning/", "/docs/5.3/": "/security/certificate-pinning/", @@ -1640,6 +1740,7 @@ }, "/basic-config-and-security/security/dashboard/dashboard-api-security/": { "/docs/": "/basic-config-and-security/security/dashboard/dashboard-admin-api/", + "/docs/5.6/": "/basic-config-and-security/security/dashboard/dashboard-admin-api/", "/docs/5.5/": "/basic-config-and-security/security/dashboard/dashboard-admin-api/", "/docs/5.4/": "/basic-config-and-security/security/dashboard/dashboard-admin-api/", "/docs/5.3/": "/basic-config-and-security/security/dashboard/dashboard-admin-api/", @@ -1675,6 +1776,7 @@ }, "/basic-config-and-security/security/mutual-tls/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", @@ -1692,6 +1794,7 @@ }, "/basic-config-and-security/security/mutual-tls/client-mtls/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/client-mtls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/client-mtls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/client-mtls/", @@ -1709,6 +1812,7 @@ }, "/basic-config-and-security/security/mutual-tls/concepts/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/concepts/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/concepts/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/concepts/", @@ -1726,6 +1830,7 @@ }, "/basic-config-and-security/security/mutual-tls/upstream-mtls/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/upstream-mtls/", @@ -1743,6 +1848,7 @@ }, "/basic-config-and-security/security/owasp-top-ten/": { "/docs/": "/basic-config-and-security/security/owasp-top-ten/", + "/docs/5.6/": "/basic-config-and-security/security/owasp-top-ten/", "/docs/5.5/": "/basic-config-and-security/security/owasp-top-ten/", "/docs/5.4/": "/basic-config-and-security/security/owasp-top-ten/", "/docs/5.3/": "/basic-config-and-security/security/owasp-top-ten/", @@ -1772,6 +1878,7 @@ }, "/basic-config-and-security/security/security-policies/secure-apis-method-path/": { "/docs/": "/security/security-policies/secure-apis-method-path/", + "/docs/5.6/": "/security/security-policies/secure-apis-method-path/", "/docs/5.5/": "/security/security-policies/secure-apis-method-path/", "/docs/5.4/": "/security/security-policies/secure-apis-method-path/", "/docs/5.3/": "/security/security-policies/secure-apis-method-path/", @@ -1792,6 +1899,7 @@ }, "/basic-config-and-security/security/tls-and-ssl/mutual-tls/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", @@ -1809,6 +1917,7 @@ }, "/basic-config-and-security/security/your-apis/oauth2.0/revoke-oauth-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.4/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", @@ -1820,6 +1929,7 @@ }, "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.4/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", "/docs/5.3/": "/basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens/", @@ -1837,6 +1947,7 @@ }, "/compose-apis/virtual-endpoints/": { "/docs/": "/advanced-configuration/compose-apis/virtual-endpoints/", + "/docs/5.6/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.5/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.4/": "/advanced-configuration/compose-apis/virtual-endpoints/", "/docs/5.3/": "/advanced-configuration/compose-apis/virtual-endpoints/", @@ -1854,6 +1965,7 @@ }, "/concepts/api-catalogue/": { "/docs/": "/getting-started/key-concepts/api-catalogue/", + "/docs/5.6/": "/getting-started/key-concepts/api-catalogue/", "/docs/5.5/": "/getting-started/key-concepts/api-catalogue/", "/docs/5.4/": "/getting-started/key-concepts/api-catalogue/", "/docs/5.3/": "/getting-started/key-concepts/api-catalogue/", @@ -1865,6 +1977,7 @@ }, "/concepts/context-variables/": { "/docs/": "/context-variables/", + "/docs/5.6/": "/context-variables/", "/docs/5.5/": "/context-variables/", "/docs/5.4/": "/context-variables/", "/docs/5.3/": "/context-variables/", @@ -1882,6 +1995,7 @@ }, "/concepts/gateway-api/": { "/docs/": "/getting-started/key-concepts/gateway-api/", + "/docs/5.6/": "/getting-started/key-concepts/gateway-api/", "/docs/5.5/": "/getting-started/key-concepts/gateway-api/", "/docs/5.4/": "/getting-started/key-concepts/gateway-api/", "/docs/5.3/": "/getting-started/key-concepts/gateway-api/", @@ -1893,6 +2007,7 @@ }, "/concepts/graphql-proxy-only/": { "/docs/": "/graphql-proxy-only/", + "/docs/5.6/": "/graphql-proxy-only/", "/docs/5.5/": "/graphql-proxy-only/", "/docs/5.4/": "/graphql-proxy-only/", "/docs/5.3/": "/graphql-proxy-only/", @@ -1910,6 +2025,7 @@ }, "/concepts/session-meta-data/": { "/docs/": "/getting-started/key-concepts/what-is-a-session-object/", + "/docs/5.6/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.5/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.4/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.3/": "/getting-started/key-concepts/what-is-a-session-object/", @@ -1921,6 +2037,7 @@ }, "/concepts/tyk-components/dashboard/": { "/docs/": "/tyk-dashboard/", + "/docs/5.6/": "/tyk-dashboard/", "/docs/5.5/": "/tyk-dashboard/", "/docs/5.4/": "/tyk-dashboard/", "/docs/5.3/": "/tyk-dashboard/", @@ -1932,6 +2049,7 @@ }, "/concepts/tyk-components/developer-portal/": { "/docs/": "/tyk-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/", @@ -1943,6 +2061,7 @@ }, "/concepts/tyk-components/gateway/": { "/docs/": "/tyk-oss-gateway/", + "/docs/5.6/": "/tyk-oss-gateway/", "/docs/5.5/": "/tyk-oss-gateway/", "/docs/5.4/": "/tyk-oss-gateway/", "/docs/5.3/": "/tyk-oss-gateway/", @@ -1960,6 +2079,7 @@ }, "/concepts/tyk-components/identity-broker/": { "/docs/": "/tyk-identity-broker/", + "/docs/5.6/": "/tyk-identity-broker/", "/docs/5.5/": "/tyk-identity-broker/", "/docs/5.4/": "/tyk-identity-broker/", "/docs/5.3/": "/tyk-identity-broker/", @@ -1977,6 +2097,7 @@ }, "/concepts/tyk-components/identity-broker/rel=/": { "/docs/": "/tyk-identity-broker/", + "/docs/5.6/": "/tyk-identity-broker/", "/docs/5.5/": "/tyk-identity-broker/", "/docs/5.4/": "/tyk-identity-broker/", "/docs/5.3/": "/tyk-identity-broker/", @@ -1988,6 +2109,7 @@ }, "/concepts/tyk-components/pump/": { "/docs/": "/tyk-pump/", + "/docs/5.6/": "/tyk-pump/", "/docs/5.5/": "/tyk-pump/", "/docs/5.4/": "/tyk-pump/", "/docs/5.3/": "/tyk-pump/", @@ -1999,6 +2121,7 @@ }, "/concepts/what-is-a-session-object/": { "/docs/": "/getting-started/key-concepts/what-is-a-session-object/", + "/docs/5.6/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.5/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.4/": "/getting-started/key-concepts/what-is-a-session-object/", "/docs/5.3/": "/getting-started/key-concepts/what-is-a-session-object/", @@ -2008,6 +2131,7 @@ }, "/configure/dashboard-env-variables/": { "/docs/": "/tyk-dashboard/configuration/", + "/docs/5.6/": "/tyk-dashboard/configuration/", "/docs/5.5/": "/tyk-dashboard/configuration/", "/docs/5.4/": "/tyk-dashboard/configuration/", "/docs/5.3/": "/tyk-dashboard/configuration/", @@ -2019,6 +2143,7 @@ }, "/configure/environment-variables/": { "/docs/": "/tyk-environment-variables/", + "/docs/5.6/": "/tyk-environment-variables/", "/docs/5.5/": "/tyk-environment-variables/", "/docs/5.4/": "/tyk-environment-variables/", "/docs/5.3/": "/tyk-environment-variables/", @@ -2039,6 +2164,7 @@ }, "/configure/tyk-dashboard-configuration-options/": { "/docs/": "/tyk-dashboard/configuration/", + "/docs/5.6/": "/tyk-dashboard/configuration/", "/docs/5.5/": "/tyk-dashboard/configuration/", "/docs/5.4/": "/tyk-dashboard/configuration/", "/docs/5.3/": "/tyk-dashboard/configuration/", @@ -2056,6 +2182,7 @@ }, "/configure/tyk-gateway-configuration-options/": { "/docs/": "/tyk-oss-gateway/configuration/", + "/docs/5.6/": "/tyk-oss-gateway/configuration/", "/docs/5.5/": "/tyk-oss-gateway/configuration/", "/docs/5.4/": "/tyk-oss-gateway/configuration/", "/docs/5.3/": "/tyk-oss-gateway/configuration/", @@ -2073,6 +2200,7 @@ }, "/configure/tyk-pump-configuration/": { "/docs/": "/tyk-pump/configuration/", + "/docs/5.6/": "/tyk-pump/configuration/", "/docs/5.5/": "/tyk-pump/configuration/", "/docs/5.4/": "/tyk-pump/configuration/", "/docs/5.3/": "/tyk-pump/configuration/", @@ -2096,6 +2224,7 @@ }, "/control-limit-traffic/rate-limiting/": { "/docs/": "/basic-config-and-security/control-limit-traffic/rate-limiting/", + "/docs/5.6/": "/basic-config-and-security/control-limit-traffic/rate-limiting/", "/docs/5.5/": "/basic-config-and-security/control-limit-traffic/rate-limiting/", "/docs/5.4/": "/basic-config-and-security/control-limit-traffic/rate-limiting/", "/docs/5.3/": "/basic-config-and-security/control-limit-traffic/rate-limiting/", @@ -2107,6 +2236,7 @@ }, "/control-limit-traffic/request-quotas/": { "/docs/": "/basic-config-and-security/control-limit-traffic/request-quotas/", + "/docs/5.6/": "/basic-config-and-security/control-limit-traffic/request-quotas/", "/docs/5.5/": "/basic-config-and-security/control-limit-traffic/request-quotas/", "/docs/5.4/": "/basic-config-and-security/control-limit-traffic/request-quotas/", "/docs/5.3/": "/basic-config-and-security/control-limit-traffic/request-quotas/", @@ -2118,6 +2248,7 @@ }, "/customise-tyk/plugins/": { "/docs/": "/plugins/", + "/docs/5.6/": "/plugins/", "/docs/5.5/": "/plugins/", "/docs/5.4/": "/plugins/", "/docs/5.3/": "/plugins/", @@ -2135,6 +2266,7 @@ }, "/customise-tyk/plugins/golang-plugins/golang-plugins/": { "/docs/": "/plugins/supported-languages/golang/", + "/docs/5.6/": "/plugins/supported-languages/golang/", "/docs/5.5/": "/plugins/supported-languages/golang/", "/docs/5.4/": "/plugins/supported-languages/golang/", "/docs/5.3/": "/plugins/supported-languages/golang/", @@ -2152,6 +2284,7 @@ }, "/customise-tyk/plugins/javascript-middleware/": { "/docs/": "/plugins/supported-languages/javascript-middleware/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/", @@ -2163,6 +2296,7 @@ }, "/customise-tyk/plugins/javascript-middleware/javascript-api/": { "/docs/": "/plugins/supported-languages/javascript-middleware/javascript-api/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/javascript-api/", @@ -2174,6 +2308,7 @@ }, "/customise-tyk/plugins/javascript-middleware/middleware-execution-order/": { "/docs/": "/plugins/supported-languages/javascript-middleware/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/", @@ -2185,6 +2320,7 @@ }, "/customise-tyk/plugins/rich-plugins/grpc/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/", @@ -2196,6 +2332,7 @@ }, "/customise-tyk/plugins/rich-plugins/grpc/custom-auth-dot-net/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", @@ -2207,6 +2344,7 @@ }, "/customise-tyk/plugins/rich-plugins/id-extractor/": { "/docs/": "/plugins/plugin-types/auth-plugins/id-extractor/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/id-extractor/", @@ -2218,6 +2356,7 @@ }, "/customise-tyk/plugins/rich-plugins/python/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/python/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/python/", @@ -2229,6 +2368,7 @@ }, "/customise-tyk/plugins/rich-plugins/python/custom-auth-python-tutorial/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", @@ -2240,6 +2380,7 @@ }, "/customise-tyk/plugins/rich-plugins/python/tutorial-add-demo-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", @@ -2251,6 +2392,7 @@ }, "/customise-tyk/plugins/rich-plugins/rich-plugins-work/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/python/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/python/", @@ -2268,6 +2410,7 @@ }, "/debugging-series/": { "/docs/": "/debugging-series/debugging-series/", + "/docs/5.6/": "/debugging-series/debugging-series/", "/docs/5.5/": "/debugging-series/debugging-series/", "/docs/5.4/": "/debugging-series/debugging-series/", "/docs/5.3/": "/debugging-series/debugging-series/", @@ -2279,6 +2422,7 @@ }, "/debugging-series/debugging-series/": { "/docs/": "/debugging-series/debugging-series/", + "/docs/5.6/": "/debugging-series/debugging-series/", "/docs/5.5/": "/debugging-series/debugging-series/", "/docs/5.4/": "/debugging-series/debugging-series/", "/docs/5.3/": "/debugging-series/debugging-series/", @@ -2290,6 +2434,7 @@ }, "/debugging-series/mongodb-debugging/": { "/docs/": "/debugging-series/mongodb-debugging/", + "/docs/5.6/": "/debugging-series/mongodb-debugging/", "/docs/5.5/": "/debugging-series/mongodb-debugging/", "/docs/5.4/": "/debugging-series/mongodb-debugging/", "/docs/5.3/": "/debugging-series/mongodb-debugging/", @@ -2301,6 +2446,7 @@ }, "/deploy-tyk-premise-production/": { "/docs/": "/planning-for-production/", + "/docs/5.6/": "/planning-for-production/", "/docs/5.5/": "/planning-for-production/", "/docs/5.4/": "/planning-for-production/", "/docs/5.3/": "/planning-for-production/", @@ -2312,6 +2458,7 @@ }, "/deployment-and-operations/tyk-cloud-platform/quick-start/": { "/docs/": "/deployment-and-operations/tyk-cloud-platform/quick-start/", + "/docs/5.6/": "/deployment-and-operations/tyk-cloud-platform/quick-start/", "/docs/5.5/": "/deployment-and-operations/tyk-cloud-platform/quick-start/", "/docs/5.4/": "/deployment-and-operations/tyk-cloud-platform/quick-start/", "/docs/5.3/": "/deployment-and-operations/tyk-cloud-platform/quick-start/", @@ -2322,6 +2469,7 @@ }, "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/": { "/docs/": "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/", + "/docs/5.6/": "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/", "/docs/5.5/": "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/", "/docs/5.4/": "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/", "/docs/5.3/": "/deployment-and-operations/tyk-open-source-api-gateway/quick-start/", @@ -2331,6 +2479,7 @@ }, "/deployment-and-operations/tyk-open-source-api-gateway/setup-multiple-gateways/": { "/docs/": "/tyk-cloud/environments-deployments/hybrid-gateways/", + "/docs/5.6/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.5/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.4/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.3/": "/tyk-cloud/environments-deployments/hybrid-gateways/", @@ -2341,6 +2490,7 @@ }, "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/": { "/docs/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/", + "/docs/5.6/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/", "/docs/5.5/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/", "/docs/5.4/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/", "/docs/5.3/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/consul/", @@ -2348,6 +2498,7 @@ }, "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/": { "/docs/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/", + "/docs/5.6/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/", "/docs/5.5/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/", "/docs/5.4/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/", "/docs/5.3/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/deployment-to-production/key-value-storage/vault/", @@ -2355,6 +2506,7 @@ }, "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/": { "/docs/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/", + "/docs/5.6/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/", "/docs/5.5/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/", "/docs/5.4/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/", "/docs/5.3/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-mongodb/", @@ -2364,6 +2516,7 @@ }, "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/": { "/docs/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/", + "/docs/5.6/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/", "/docs/5.5/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/", "/docs/5.4/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/", "/docs/5.3/": "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack-postgresql/", @@ -2373,6 +2526,7 @@ }, "/deployment-and-operations/tyk-self-managed/deployment-lifecycle/installations/kubernetes/tyk-helm-tyk-stack/": { "/docs/": "/product-stack/tyk-charts/tyk-stack-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-stack-chart/", @@ -2382,6 +2536,7 @@ }, "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/": { "/docs/": "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/", + "/docs/5.6/": "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/", "/docs/5.5/": "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/", "/docs/5.4/": "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/", "/docs/5.3/": "/deployment-and-operations/tyk-self-managed/tyk-demos-and-pocs/overview/", @@ -2391,6 +2546,7 @@ }, "/developer-support/": { "/docs/": "/frequently-asked-questions/faq/", + "/docs/5.6/": "/frequently-asked-questions/faq/", "/docs/5.5/": "/frequently-asked-questions/faq/", "/docs/5.4/": "/frequently-asked-questions/faq/", "/docs/5.3/": "/frequently-asked-questions/faq/", @@ -2402,6 +2558,7 @@ }, "/developer-support/backups/backup-apis-and-policies/": { "/docs/": "/developer-support/backups/backup-apis-and-policies/", + "/docs/5.6/": "/developer-support/backups/backup-apis-and-policies/", "/docs/5.5/": "/developer-support/backups/backup-apis-and-policies/", "/docs/5.4/": "/developer-support/backups/backup-apis-and-policies/", "/docs/5.3/": "/developer-support/backups/backup-apis-and-policies/", @@ -2409,6 +2566,7 @@ }, "/developer-support/cloud-saas/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", @@ -2416,6 +2574,7 @@ }, "/developer-support/debugging-series/debugging-selfmanaged/": { "/docs/": "/developer-support/debugging-series/debugging-selfmanaged/", + "/docs/5.6/": "/developer-support/debugging-series/debugging-selfmanaged/", "/docs/5.5/": "/developer-support/debugging-series/debugging-selfmanaged/", "/docs/5.4/": "/developer-support/debugging-series/debugging-selfmanaged/", "/docs/5.3/": "/developer-support/debugging-series/debugging-selfmanaged/", @@ -2426,12 +2585,14 @@ }, "/developer-support/documentation-projects/inclusive-naming/": { "/docs/": "/developer-support/documentation-projects/inclusive-naming/", + "/docs/5.6/": "/developer-support/documentation-projects/inclusive-naming/", "/docs/5.5/": "/developer-support/documentation-projects/inclusive-naming/", "/docs/5.4/": "/developer-support/documentation-projects/inclusive-naming/", "/docs/nightly/": "/developer-support/documentation-projects/inclusive-naming/" }, "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/": { "/docs/": "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/", + "/docs/5.6/": "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/", "/docs/5.5/": "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/", "/docs/5.4/": "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/", "/docs/5.3/": "/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster/", @@ -2441,6 +2602,7 @@ }, "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/": { "/docs/": "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/", + "/docs/5.6/": "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/", "/docs/5.5/": "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/", "/docs/5.4/": "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/", "/docs/5.3/": "/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics/", @@ -2450,6 +2612,7 @@ }, "/developer-support/long-term-support-releases/": { "/docs/": "/developer-support/special-releases-and-features/long-term-support-releases/", + "/docs/5.6/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.5/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.4/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.3/": "/developer-support/special-releases-and-features/long-term-support-releases/", @@ -2467,10 +2630,12 @@ }, "/developer-support/release-notes/cloud/": { "/docs/": "/developer-support/release-notes/cloud/", + "/docs/5.6/": "/developer-support/release-notes/cloud/", "/docs/nightly/": "/developer-support/release-notes/cloud/" }, "/developer-support/special-releases-and-features/early-access-features/": { "/docs/": "/developer-support/special-releases-and-features/early-access-features/", + "/docs/5.6/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.5/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.4/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.3/": "/developer-support/special-releases-and-features/early-access-features/", @@ -2484,6 +2649,7 @@ }, "/developer-support/special-releases-and-features/fips-release/": { "/docs/": "/developer-support/special-releases-and-features/fips-release/", + "/docs/5.6/": "/developer-support/special-releases-and-features/fips-release/", "/docs/5.5/": "/developer-support/special-releases-and-features/fips-release/", "/docs/5.4/": "/developer-support/special-releases-and-features/fips-release/", "/docs/5.3/": "/developer-support/special-releases-and-features/fips-release/", @@ -2491,6 +2657,7 @@ }, "/developer-support/special-releases-and-features/lab-releases/": { "/docs/": "/developer-support/special-releases-and-features/lab-releases/", + "/docs/5.6/": "/developer-support/special-releases-and-features/lab-releases/", "/docs/5.5/": "/developer-support/special-releases-and-features/lab-releases/", "/docs/5.4/": "/developer-support/special-releases-and-features/lab-releases/", "/docs/5.3/": "/developer-support/special-releases-and-features/lab-releases/", @@ -2498,12 +2665,11 @@ }, "/developer-support/special-releases-and-features/long-term-support-releases/": { "/docs/": "/developer-support/special-releases-and-features/long-term-support-releases/", + "/docs/5.6/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.5/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.4/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.3/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/nightly/": "/developer-support/special-releases-and-features/long-term-support-releases/", - "/docs/5.2/": "/developer-support/long-term-support-releases/", - "/docs/5.1/": "/developer-support/long-term-support-releases/", "/docs/5.0/": "/frequently-asked-questions/long-term-support-releases/", "/docs/4.3/": "/frequently-asked-questions/long-term-support-releases/", "/docs/4.2/": "/frequently-asked-questions/long-term-support-releases/", @@ -2511,10 +2677,13 @@ "/docs/4.0/": "/frequently-asked-questions/long-term-support-releases/", "/docs/3.2/": "/frequently-asked-questions/long-term-support-releases/", "/docs/3.1/": "/frequently-asked-questions/long-term-support-releases/", - "/docs/3-lts/": "/frequently-asked-questions/long-term-support-releases/" + "/docs/3-lts/": "/frequently-asked-questions/long-term-support-releases/", + "/docs/5.2/": "/developer-support/long-term-support-releases/", + "/docs/5.1/": "/developer-support/long-term-support-releases/" }, "/developer-support/tyk-release-summary/overview/": { "/docs/": "/developer-support/tyk-release-summary/overview/", + "/docs/5.6/": "/developer-support/tyk-release-summary/overview/", "/docs/5.5/": "/developer-support/tyk-release-summary/overview/", "/docs/5.4/": "/developer-support/tyk-release-summary/overview/", "/docs/5.3/": "/developer-support/tyk-release-summary/overview/", @@ -2532,6 +2701,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas/", @@ -2539,6 +2709,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin/", @@ -2546,6 +2717,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid/", @@ -2553,6 +2725,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/open-source/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/open-source/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/open-source/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/open-source/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/open-source/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/open-source/", @@ -2560,6 +2733,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/docker/", @@ -2567,6 +2741,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/go-plugins/": { "/docs/": "/developer-support/upgrading-tyk/go-plugins/", + "/docs/5.6/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.5/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.4/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.3/": "/developer-support/upgrading-tyk/go-plugins/", @@ -2574,6 +2749,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/helm/", @@ -2581,6 +2757,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes/", @@ -2588,6 +2765,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb/", @@ -2595,6 +2773,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm/", @@ -2602,6 +2781,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/mdcb/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", @@ -2609,6 +2789,7 @@ }, "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/": { "/docs/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", + "/docs/5.6/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.5/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.4/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", "/docs/5.3/": "/developer-support/upgrading-tyk/deployment-model/self-managed/overview/", @@ -2616,6 +2797,7 @@ }, "/developer-support/upgrading-tyk/go-plugins/": { "/docs/": "/developer-support/upgrading-tyk/go-plugins/", + "/docs/5.6/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.5/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.4/": "/developer-support/upgrading-tyk/go-plugins/", "/docs/5.3/": "/developer-support/upgrading-tyk/go-plugins/", @@ -2623,6 +2805,7 @@ }, "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/": { "/docs/": "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/", + "/docs/5.6/": "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/", "/docs/5.5/": "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/", "/docs/5.4/": "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/", "/docs/5.3/": "/developer-support/upgrading-tyk/preparations/upgrade-guidelines/", @@ -2630,6 +2813,7 @@ }, "/developer-support/upgrading-tyk/preparations/upgrade-strategies/": { "/docs/": "/developer-support/upgrading-tyk/preparations/upgrade-strategies/", + "/docs/5.6/": "/developer-support/upgrading-tyk/preparations/upgrade-strategies/", "/docs/5.5/": "/developer-support/upgrading-tyk/preparations/upgrade-strategies/", "/docs/5.4/": "/developer-support/upgrading-tyk/preparations/upgrade-strategies/", "/docs/5.3/": "/developer-support/upgrading-tyk/preparations/upgrade-strategies/", @@ -2637,6 +2821,7 @@ }, "/ensure-high-availability/circuit-breakers/": { "/docs/": "/planning-for-production/ensure-high-availability/circuit-breakers/", + "/docs/5.6/": "/planning-for-production/ensure-high-availability/circuit-breakers/", "/docs/5.5/": "/planning-for-production/ensure-high-availability/circuit-breakers/", "/docs/5.4/": "/planning-for-production/ensure-high-availability/circuit-breakers/", "/docs/5.3/": "/planning-for-production/ensure-high-availability/circuit-breakers/", @@ -2648,6 +2833,7 @@ }, "/ensure-high-availability/load-balancing/": { "/docs/": "/planning-for-production/ensure-high-availability/load-balancing/", + "/docs/5.6/": "/planning-for-production/ensure-high-availability/load-balancing/", "/docs/5.5/": "/planning-for-production/ensure-high-availability/load-balancing/", "/docs/5.4/": "/planning-for-production/ensure-high-availability/load-balancing/", "/docs/5.3/": "/planning-for-production/ensure-high-availability/load-balancing/", @@ -2665,6 +2851,7 @@ }, "/error-response-codes/": { "/docs/": "/error-response-codes/", + "/docs/5.6/": "/error-response-codes/", "/docs/5.5/": "/error-response-codes/", "/docs/5.4/": "/error-response-codes/", "/docs/5.3/": "/error-response-codes/", @@ -2708,6 +2895,7 @@ }, "/frequently-asked-questions/custom-domain-for-portal-cloud-multi-cloud/": { "/docs/": "/tyk-cloud/using-custom-domains/", + "/docs/5.6/": "/tyk-cloud/using-custom-domains/", "/docs/5.5/": "/tyk-cloud/using-custom-domains/", "/docs/5.4/": "/tyk-cloud/using-custom-domains/", "/docs/5.3/": "/tyk-cloud/using-custom-domains/", @@ -2726,6 +2914,7 @@ }, "/frequently-asked-questions/datadog-logs-showup-as-errors/": { "/docs/": "/frequently-asked-questions/datadog-logs-showup-as-errors/", + "/docs/5.6/": "/frequently-asked-questions/datadog-logs-showup-as-errors/", "/docs/5.5/": "/frequently-asked-questions/datadog-logs-showup-as-errors/", "/docs/5.4/": "/frequently-asked-questions/datadog-logs-showup-as-errors/", "/docs/5.3/": "/frequently-asked-questions/datadog-logs-showup-as-errors/", @@ -2751,6 +2940,7 @@ }, "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/": { "/docs/": "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/", + "/docs/5.6/": "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/", "/docs/5.5/": "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/", "/docs/5.4/": "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/", "/docs/5.3/": "/frequently-asked-questions/how-to-backup-tyk-cloud-deployment/", @@ -2774,6 +2964,7 @@ }, "/frequently-asked-questions/long-term-support-releases/": { "/docs/": "/developer-support/special-releases-and-features/long-term-support-releases/", + "/docs/5.6/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.5/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.4/": "/developer-support/special-releases-and-features/long-term-support-releases/", "/docs/5.3/": "/developer-support/special-releases-and-features/long-term-support-releases/", @@ -2803,6 +2994,7 @@ }, "/frequently-asked-questions/sla-policies/": { "/docs/": "/frequently-asked-questions/sla-policies/", + "/docs/5.6/": "/frequently-asked-questions/sla-policies/", "/docs/5.5/": "/frequently-asked-questions/sla-policies/", "/docs/5.4/": "/frequently-asked-questions/sla-policies/", "/docs/5.3/": "/frequently-asked-questions/sla-policies/", @@ -2819,6 +3011,7 @@ }, "/frequently-asked-questions/using-early-access-features/": { "/docs/": "/developer-support/special-releases-and-features/early-access-features/", + "/docs/5.6/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.5/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.4/": "/developer-support/special-releases-and-features/early-access-features/", "/docs/5.3/": "/developer-support/special-releases-and-features/early-access-features/", @@ -2832,6 +3025,7 @@ }, "/get-started/with-tyk-cloud/tutorials/create-api-token/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -2843,6 +3037,7 @@ }, "/get-started/with-tyk-hybrid/": { "/docs/": "/tyk-cloud/", + "/docs/5.6/": "/tyk-cloud/", "/docs/5.5/": "/tyk-cloud/", "/docs/5.4/": "/tyk-cloud/", "/docs/5.3/": "/tyk-cloud/", @@ -2854,6 +3049,7 @@ }, "/get-started/with-tyk-multi-cloud/tutorials/create-api-token/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -2865,6 +3061,7 @@ }, "/get-started/with-tyk-multi-cloud/tutorials/create-api/": { "/docs/": "/getting-started/create-api/", + "/docs/5.6/": "/getting-started/create-api/", "/docs/5.5/": "/getting-started/create-api/", "/docs/5.4/": "/getting-started/create-api/", "/docs/5.3/": "/getting-started/create-api/", @@ -2876,6 +3073,7 @@ }, "/get-started/with-tyk-multi-cloud/tutorials/installation-on-aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", + "/docs/5.6/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", "/docs/5.4/": "/tyk-on-premises/installation/on-aws/", "/docs/5.3/": "/tyk-on-premises/installation/on-aws/", @@ -2887,6 +3085,7 @@ }, "/get-started/with-tyk-on-premise/": { "/docs/": "/tyk-on-premises/", + "/docs/5.6/": "/tyk-on-premises/", "/docs/5.5/": "/tyk-on-premises/", "/docs/5.4/": "/tyk-on-premises/", "/docs/5.3/": "/tyk-on-premises/", @@ -2898,6 +3097,7 @@ }, "/get-started/with-tyk-on-premise/installation/": { "/docs/": "/tyk-self-managed/install/", + "/docs/5.6/": "/tyk-self-managed/install/", "/docs/5.5/": "/tyk-self-managed/install/", "/docs/5.4/": "/tyk-self-managed/install/", "/docs/5.3/": "/tyk-self-managed/install/", @@ -2915,6 +3115,7 @@ }, "/get-started/with-tyk-on-premise/installation/docker/": { "/docs/": "/tyk-on-premises/docker/", + "/docs/5.6/": "/tyk-on-premises/docker/", "/docs/5.5/": "/tyk-on-premises/docker/", "/docs/5.4/": "/tyk-on-premises/docker/", "/docs/5.3/": "/tyk-on-premises/docker/", @@ -2926,6 +3127,7 @@ }, "/get-started/with-tyk-on-premise/installation/docker/docker-quickstart/": { "/docs/": "/tyk-on-premises/docker/", + "/docs/5.6/": "/tyk-on-premises/docker/", "/docs/5.5/": "/tyk-on-premises/docker/", "/docs/5.4/": "/tyk-on-premises/docker/", "/docs/5.3/": "/tyk-on-premises/docker/", @@ -2937,6 +3139,7 @@ }, "/get-started/with-tyk-on-premise/installation/on-aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", + "/docs/5.6/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", "/docs/5.4/": "/tyk-on-premises/installation/on-aws/", "/docs/5.3/": "/tyk-on-premises/installation/on-aws/", @@ -2948,6 +3151,7 @@ }, "/get-started/with-tyk-on-premise/installation/on-ubuntu/gateway/": { "/docs/": "/tyk-on-premises/debian-ubuntu/gateway/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/gateway/", @@ -2959,6 +3163,7 @@ }, "/get-started/with-tyk-on-premise/installation/redhat-rhel-centos/dashboard/": { "/docs/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", + "/docs/5.6/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.5/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.4/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.3/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", @@ -2970,6 +3175,7 @@ }, "/get-started/with-tyk-on-premise/tutorials/tyk-on-premise-pro/": { "/docs/": "/getting-started/", + "/docs/5.6/": "/getting-started/", "/docs/5.5/": "/getting-started/", "/docs/5.4/": "/getting-started/", "/docs/5.3/": "/getting-started/", @@ -2981,6 +3187,7 @@ }, "/get-started/with-tyk-on-premise/tutorials/tyk-on-premise-pro/create-api-token/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -2992,6 +3199,7 @@ }, "/get-started/with-tyk-on-premise/tutorials/tyk-on-premise-pro/create-api/": { "/docs/": "/getting-started/create-api/", + "/docs/5.6/": "/getting-started/create-api/", "/docs/5.5/": "/getting-started/create-api/", "/docs/5.4/": "/getting-started/create-api/", "/docs/5.3/": "/getting-started/create-api/", @@ -3006,10 +3214,12 @@ }, "/getting-started/configure-first-api/": { "/docs/": "/getting-started/configure-first-api/", + "/docs/5.6/": "/getting-started/configure-first-api/", "/docs/nightly/": "/getting-started/configure-first-api/" }, "/getting-started/create-account/": { "/docs/": "/getting-started/create-account/", + "/docs/5.6/": "/getting-started/create-account/", "/docs/nightly/": "/getting-started/create-account/" }, "/getting-started/create-api-key/": { @@ -3023,6 +3233,7 @@ }, "/getting-started/deployment-options/": { "/docs/": "/apim/", + "/docs/5.6/": "/apim/", "/docs/5.5/": "/apim/", "/docs/5.4/": "/apim/", "/docs/5.3/": "/apim/", @@ -3046,6 +3257,7 @@ }, "/getting-started/installation/tutorials/create-security-policy/": { "/docs/": "/getting-started/create-security-policy/", + "/docs/5.6/": "/getting-started/create-security-policy/", "/docs/5.5/": "/getting-started/create-security-policy/", "/docs/5.4/": "/getting-started/create-security-policy/", "/docs/5.3/": "/getting-started/create-security-policy/", @@ -3063,6 +3275,7 @@ }, "/getting-started/installation/tutorials/tutorials/": { "/docs/": "/getting-started/", + "/docs/5.6/": "/getting-started/", "/docs/5.5/": "/getting-started/", "/docs/5.4/": "/getting-started/", "/docs/5.3/": "/getting-started/", @@ -3080,6 +3293,7 @@ }, "/getting-started/installation/tyk-on-premises/on-ubuntu/": { "/docs/": "/tyk-on-premises/debian-ubuntu/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/", @@ -3097,6 +3311,7 @@ }, "/getting-started/installation/with-tyk-multi-cloud/create-an-account/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", @@ -3108,6 +3323,7 @@ }, "/getting-started/installation/with-tyk-multi-cloud/installation-on-aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", + "/docs/5.6/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", "/docs/5.4/": "/tyk-on-premises/installation/on-aws/", "/docs/5.3/": "/tyk-on-premises/installation/on-aws/", @@ -3119,6 +3335,7 @@ }, "/getting-started/installation/with-tyk-on-premises/": { "/docs/": "/tyk-self-managed/install/", + "/docs/5.6/": "/tyk-self-managed/install/", "/docs/5.5/": "/tyk-self-managed/install/", "/docs/5.4/": "/tyk-self-managed/install/", "/docs/5.3/": "/tyk-self-managed/install/", @@ -3136,6 +3353,7 @@ }, "/getting-started/installation/with-tyk-on-premises/bootstrapper-cli/": { "/docs/": "/tyk-on-premises/bootstrapper-cli/", + "/docs/5.6/": "/tyk-on-premises/bootstrapper-cli/", "/docs/5.5/": "/tyk-on-premises/bootstrapper-cli/", "/docs/5.4/": "/tyk-on-premises/bootstrapper-cli/", "/docs/5.3/": "/tyk-on-premises/bootstrapper-cli/", @@ -3153,6 +3371,7 @@ }, "/getting-started/installation/with-tyk-on-premises/debian-ubuntu/analytics-pump/": { "/docs/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", @@ -3170,6 +3389,7 @@ }, "/getting-started/installation/with-tyk-on-premises/debian-ubuntu/dashboard/": { "/docs/": "/tyk-on-premises/debian-ubuntu/dashboard/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/dashboard/", @@ -3187,6 +3407,7 @@ }, "/getting-started/installation/with-tyk-on-premises/debian-ubuntu/gateway/": { "/docs/": "/tyk-on-premises/debian-ubuntu/gateway/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/gateway/", @@ -3204,6 +3425,7 @@ }, "/getting-started/installation/with-tyk-on-premises/docker/": { "/docs/": "/tyk-on-premises/docker/", + "/docs/5.6/": "/tyk-on-premises/docker/", "/docs/5.5/": "/tyk-on-premises/docker/", "/docs/5.4/": "/tyk-on-premises/docker/", "/docs/5.3/": "/tyk-on-premises/docker/", @@ -3221,6 +3443,7 @@ }, "/getting-started/installation/with-tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/": { "/docs/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/", + "/docs/5.6/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/", "/docs/5.5/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/", "/docs/5.4/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/", "/docs/5.3/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-demo-windows/", @@ -3238,6 +3461,7 @@ }, "/getting-started/installation/with-tyk-on-premises/docker/docker-pro-demo/docker-pro-demo/": { "/docs/": "/tyk-on-premises/docker/docker-pro-demo/", + "/docs/5.6/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.5/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.4/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.3/": "/tyk-on-premises/docker/docker-pro-demo/", @@ -3252,6 +3476,7 @@ }, "/getting-started/installation/with-tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/": { "/docs/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/", + "/docs/5.6/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/", "/docs/5.5/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/", "/docs/5.4/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/", "/docs/5.3/": "/tyk-on-premises/docker/docker-pro-demo/docker-pro-wsl/", @@ -3269,6 +3494,7 @@ }, "/getting-started/installation/with-tyk-on-premises/install-tyk-google-cloud/": { "/docs/": "/tyk-on-premises/google-cloud/", + "/docs/5.6/": "/tyk-on-premises/google-cloud/", "/docs/5.5/": "/tyk-on-premises/google-cloud/", "/docs/5.4/": "/tyk-on-premises/google-cloud/", "/docs/5.3/": "/tyk-on-premises/google-cloud/", @@ -3278,6 +3504,7 @@ }, "/getting-started/installation/with-tyk-on-premises/install-tyk-microsoft-azure/": { "/docs/": "/tyk-on-premises/microsoft-azure/", + "/docs/5.6/": "/tyk-on-premises/microsoft-azure/", "/docs/5.5/": "/tyk-on-premises/microsoft-azure/", "/docs/5.4/": "/tyk-on-premises/microsoft-azure/", "/docs/5.3/": "/tyk-on-premises/microsoft-azure/", @@ -3295,6 +3522,7 @@ }, "/getting-started/installation/with-tyk-on-premises/kubernetes/": { "/docs/": "/tyk-on-premises/kubernetes/", + "/docs/5.6/": "/tyk-on-premises/kubernetes/", "/docs/5.5/": "/tyk-on-premises/kubernetes/", "/docs/5.4/": "/tyk-on-premises/kubernetes/", "/docs/5.3/": "/tyk-on-premises/kubernetes/", @@ -3312,6 +3540,7 @@ }, "/getting-started/installation/with-tyk-on-premises/kubernetes/k8s-docker-pro-wsl/": { "/docs/": "/tyk-on-prem/kubernetes-on-windows/", + "/docs/5.6/": "/tyk-on-prem/kubernetes-on-windows/", "/docs/5.5/": "/tyk-on-prem/kubernetes-on-windows/", "/docs/5.4/": "/tyk-on-prem/kubernetes-on-windows/", "/docs/5.3/": "/tyk-on-prem/kubernetes-on-windows/", @@ -3329,6 +3558,7 @@ }, "/getting-started/installation/with-tyk-on-premises/kubernetes/tyk-kubernetes-ingress-controller/": { "/docs/": "/tyk-on-prem/kubernetes-ingress/", + "/docs/5.6/": "/tyk-on-prem/kubernetes-ingress/", "/docs/5.5/": "/tyk-on-prem/kubernetes-ingress/", "/docs/5.4/": "/tyk-on-prem/kubernetes-ingress/", "/docs/5.3/": "/tyk-on-prem/kubernetes-ingress/", @@ -3346,6 +3576,7 @@ }, "/getting-started/installation/with-tyk-on-premises/on-ubuntu/": { "/docs/": "/tyk-on-premises/debian-ubuntu/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/", @@ -3363,6 +3594,7 @@ }, "/getting-started/installation/with-tyk-on-premises/on-ubuntu/analytics-pump/": { "/docs/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/analytics-pump/", @@ -3380,6 +3612,7 @@ }, "/getting-started/installation/with-tyk-on-premises/on-ubuntu/dashboard/": { "/docs/": "/tyk-on-premises/debian-ubuntu/dashboard/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/dashboard/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/dashboard/", @@ -3397,6 +3630,7 @@ }, "/getting-started/installation/with-tyk-on-premises/on-ubuntu/gateway/": { "/docs/": "/tyk-on-premises/debian-ubuntu/gateway/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/gateway/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/gateway/", @@ -3414,6 +3648,7 @@ }, "/getting-started/installation/with-tyk-on-premises/redhat-rhel-centos/": { "/docs/": "/tyk-on-premises/redhat-rhel-centos/", + "/docs/5.6/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.5/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.4/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.3/": "/tyk-on-premises/redhat-rhel-centos/", @@ -3431,6 +3666,7 @@ }, "/getting-started/installation/with-tyk-on-premises/redhat-rhel-centos/analytics-pump/": { "/docs/": "/tyk-on-prem/installation/redhat-rhel-centos/analytics-pump/", + "/docs/5.6/": "/tyk-on-prem/installation/redhat-rhel-centos/analytics-pump/", "/docs/5.5/": "/tyk-on-prem/installation/redhat-rhel-centos/analytics-pump/", "/docs/5.4/": "/tyk-on-prem/installation/redhat-rhel-centos/analytics-pump/", "/docs/5.3/": "/tyk-on-prem/installation/redhat-rhel-centos/analytics-pump/", @@ -3448,6 +3684,7 @@ }, "/getting-started/installation/with-tyk-on-premises/redhat-rhel-centos/dashboard/": { "/docs/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", + "/docs/5.6/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.5/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.4/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", "/docs/5.3/": "/tyk-on-prem/installation/redhat-rhel-centos/dashboard/", @@ -3465,6 +3702,7 @@ }, "/getting-started/installation/with-tyk-on-premises/redhat-rhel-centos/gateway/": { "/docs/": "/tyk-on-prem/installation/redhat-rhel-centos/gateway/", + "/docs/5.6/": "/tyk-on-prem/installation/redhat-rhel-centos/gateway/", "/docs/5.5/": "/tyk-on-prem/installation/redhat-rhel-centos/gateway/", "/docs/5.4/": "/tyk-on-prem/installation/redhat-rhel-centos/gateway/", "/docs/5.3/": "/tyk-on-prem/installation/redhat-rhel-centos/gateway/", @@ -3488,6 +3726,7 @@ }, "/getting-started/key-concepts/authentication/": { "/docs/": "/getting-started/key-concepts/authentication/", + "/docs/5.6/": "/getting-started/key-concepts/authentication/", "/docs/5.5/": "/getting-started/key-concepts/authentication/", "/docs/5.4/": "/getting-started/key-concepts/authentication/", "/docs/5.3/": "/getting-started/key-concepts/authentication/", @@ -3502,6 +3741,7 @@ }, "/getting-started/key-concepts/context-variables/": { "/docs/": "/context-variables/", + "/docs/5.6/": "/context-variables/", "/docs/5.5/": "/context-variables/", "/docs/5.4/": "/context-variables/", "/docs/5.3/": "/context-variables/", @@ -3519,6 +3759,7 @@ }, "/getting-started/key-concepts/creating-a-subgraph/": { "/docs/": "/getting-started/key-concepts/graphql-federation/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.5/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.4/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.3/": "/getting-started/key-concepts/graphql-federation/", @@ -3538,6 +3779,7 @@ }, "/getting-started/key-concepts/graphql-entities/": { "/docs/": "/getting-started/key-concepts/graphql-entities/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-entities/", "/docs/5.5/": "/getting-started/key-concepts/graphql-entities/", "/docs/5.4/": "/getting-started/key-concepts/graphql-entities/", "/docs/5.3/": "/getting-started/key-concepts/graphql-entities/", @@ -3548,6 +3790,7 @@ }, "/getting-started/key-concepts/graphql-federation/": { "/docs/": "/getting-started/key-concepts/graphql-federation/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.5/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.4/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.3/": "/getting-started/key-concepts/graphql-federation/", @@ -3562,6 +3805,7 @@ }, "/getting-started/key-concepts/graphql-overview/": { "/docs/": "/getting-started/key-concepts/graphql-federation/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.5/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.4/": "/getting-started/key-concepts/graphql-federation/", "/docs/5.3/": "/getting-started/key-concepts/graphql-federation/", @@ -3572,6 +3816,7 @@ }, "/getting-started/key-concepts/graphql-proxy-only/": { "/docs/": "/graphql-proxy-only/", + "/docs/5.6/": "/graphql-proxy-only/", "/docs/5.5/": "/graphql-proxy-only/", "/docs/5.4/": "/graphql-proxy-only/", "/docs/5.3/": "/graphql-proxy-only/", @@ -3586,6 +3831,7 @@ }, "/getting-started/key-concepts/graphql-subgraphs/": { "/docs/": "/getting-started/key-concepts/graphql-subgraphs/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-subgraphs/", "/docs/5.5/": "/getting-started/key-concepts/graphql-subgraphs/", "/docs/5.4/": "/getting-started/key-concepts/graphql-subgraphs/", "/docs/5.3/": "/getting-started/key-concepts/graphql-subgraphs/", @@ -3596,6 +3842,7 @@ }, "/getting-started/key-concepts/graphql-subscriptions/": { "/docs/": "/getting-started/key-concepts/graphql-subscriptions/", + "/docs/5.6/": "/getting-started/key-concepts/graphql-subscriptions/", "/docs/5.5/": "/getting-started/key-concepts/graphql-subscriptions/", "/docs/5.4/": "/getting-started/key-concepts/graphql-subscriptions/", "/docs/5.3/": "/getting-started/key-concepts/graphql-subscriptions/", @@ -3610,6 +3857,7 @@ }, "/getting-started/key-concepts/high-level-concepts/": { "/docs/": "/getting-started/key-concepts/high-level-concepts/", + "/docs/5.6/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.5/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.4/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.3/": "/getting-started/key-concepts/high-level-concepts/", @@ -3624,6 +3872,7 @@ }, "/getting-started/key-concepts/low-level-concepts/": { "/docs/": "/getting-started/key-concepts/openapi-specification/", + "/docs/5.6/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.5/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.4/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.3/": "/getting-started/key-concepts/openapi-specification/", @@ -3638,6 +3887,7 @@ }, "/getting-started/key-concepts/oas-api-definitions/": { "/docs/": "/getting-started/key-concepts/openapi-specification/", + "/docs/5.6/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.5/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.4/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.3/": "/getting-started/key-concepts/openapi-specification/", @@ -3650,6 +3900,7 @@ }, "/getting-started/key-concepts/oas-versioning/": { "/docs/": "/getting-started/key-concepts/oas-versioning/", + "/docs/5.6/": "/getting-started/key-concepts/oas-versioning/", "/docs/5.5/": "/getting-started/key-concepts/oas-versioning/", "/docs/5.4/": "/getting-started/key-concepts/oas-versioning/", "/docs/5.3/": "/getting-started/key-concepts/oas-versioning/", @@ -3664,6 +3915,7 @@ }, "/getting-started/key-concepts/openapi-specification/": { "/docs/": "/getting-started/key-concepts/openapi-specification/", + "/docs/5.6/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.5/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.4/": "/getting-started/key-concepts/openapi-specification/", "/docs/5.3/": "/getting-started/key-concepts/openapi-specification/", @@ -3678,6 +3930,7 @@ }, "/getting-started/key-concepts/paths/": { "/docs/": "/getting-started/key-concepts/paths/", + "/docs/5.6/": "/getting-started/key-concepts/paths/", "/docs/5.5/": "/getting-started/key-concepts/paths/", "/docs/5.4/": "/getting-started/key-concepts/paths/", "/docs/5.3/": "/getting-started/key-concepts/paths/", @@ -3695,6 +3948,7 @@ }, "/getting-started/key-concepts/rbac/": { "/docs/": "/tyk-dashboard/rbac/", + "/docs/5.6/": "/tyk-dashboard/rbac/", "/docs/5.5/": "/tyk-dashboard/rbac/", "/docs/5.4/": "/tyk-dashboard/rbac/", "/docs/5.3/": "/tyk-dashboard/rbac/", @@ -3712,6 +3966,7 @@ }, "/getting-started/key-concepts/request-validation/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", @@ -3726,6 +3981,7 @@ }, "/getting-started/key-concepts/servers/": { "/docs/": "/getting-started/key-concepts/servers/", + "/docs/5.6/": "/getting-started/key-concepts/servers/", "/docs/5.5/": "/getting-started/key-concepts/servers/", "/docs/5.4/": "/getting-started/key-concepts/servers/", "/docs/5.3/": "/getting-started/key-concepts/servers/", @@ -3743,6 +3999,7 @@ }, "/getting-started/key-concepts/tyk-components/identity-broker/": { "/docs/": "/tyk-identity-broker/", + "/docs/5.6/": "/tyk-identity-broker/", "/docs/5.5/": "/tyk-identity-broker/", "/docs/5.4/": "/tyk-identity-broker/", "/docs/5.3/": "/tyk-identity-broker/", @@ -3760,6 +4017,7 @@ }, "/getting-started/key-concepts/url-matching/": { "/docs/": "/getting-started/key-concepts/url-matching/", + "/docs/5.6/": "/getting-started/key-concepts/url-matching/", "/docs/5.5/": "/getting-started/key-concepts/url-matching/", "/docs/5.3/": "/getting-started/key-concepts/url-matching/", "/docs/nightly/": "/getting-started/key-concepts/url-matching/" @@ -3778,6 +4036,7 @@ }, "/getting-started/licencing/": { "/docs/": "/tyk-on-premises/licensing/", + "/docs/5.6/": "/tyk-on-premises/licensing/", "/docs/5.5/": "/tyk-on-premises/licensing/", "/docs/5.4/": "/tyk-on-premises/licensing/", "/docs/5.3/": "/tyk-on-premises/licensing/", @@ -3795,6 +4054,7 @@ }, "/getting-started/licensing/": { "/docs/": "/tyk-on-premises/licensing/", + "/docs/5.6/": "/tyk-on-premises/licensing/", "/docs/5.5/": "/tyk-on-premises/licensing/", "/docs/5.4/": "/tyk-on-premises/licensing/", "/docs/5.3/": "/tyk-on-premises/licensing/", @@ -3812,6 +4072,7 @@ }, "/getting-started/quick-start/": { "/docs/": "/getting-started/quick-start/", + "/docs/5.6/": "/getting-started/quick-start/", "/docs/5.5/": "/getting-started/quick-start/", "/docs/5.4/": "/getting-started/quick-start/", "/docs/5.3/": "/getting-started/quick-start/", @@ -3823,6 +4084,7 @@ }, "/getting-started/quick-start/tyk-demo/": { "/docs/": "/getting-started/quick-start/tyk-demo/", + "/docs/5.6/": "/getting-started/quick-start/tyk-demo/", "/docs/5.5/": "/getting-started/quick-start/tyk-demo/", "/docs/5.4/": "/getting-started/quick-start/tyk-demo/", "/docs/5.3/": "/getting-started/quick-start/tyk-demo/", @@ -3834,6 +4096,7 @@ }, "/getting-started/quick-start/tyk-k8s-demo/": { "/docs/": "/getting-started/quick-start/tyk-k8s-demo/", + "/docs/5.6/": "/getting-started/quick-start/tyk-k8s-demo/", "/docs/5.5/": "/getting-started/quick-start/tyk-k8s-demo/", "/docs/5.4/": "/getting-started/quick-start/tyk-k8s-demo/", "/docs/5.3/": "/getting-started/quick-start/tyk-k8s-demo/", @@ -3845,6 +4108,7 @@ }, "/getting-started/tutorials/": { "/docs/": "/getting-started/", + "/docs/5.6/": "/getting-started/", "/docs/5.5/": "/getting-started/", "/docs/5.4/": "/getting-started/", "/docs/5.3/": "/getting-started/", @@ -3862,6 +4126,7 @@ }, "/getting-started/tutorials/auth-user-for-api-access-github-oauth/": { "/docs/": "/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth/", + "/docs/5.6/": "/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth/", "/docs/5.5/": "/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth/", "/docs/5.4/": "/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth/", "/docs/5.3/": "/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth/", @@ -3879,6 +4144,7 @@ }, "/getting-started/tutorials/create-api-key/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -3896,6 +4162,7 @@ }, "/getting-started/tutorials/create-api/": { "/docs/": "/getting-started/create-api/", + "/docs/5.6/": "/getting-started/create-api/", "/docs/5.5/": "/getting-started/create-api/", "/docs/5.4/": "/getting-started/create-api/", "/docs/5.3/": "/getting-started/create-api/", @@ -3913,6 +4180,7 @@ }, "/getting-started/tutorials/create-portal-entry/": { "/docs/": "/getting-started/tutorials/publish-api/", + "/docs/5.6/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", "/docs/5.4/": "/getting-started/tutorials/publish-api/", "/docs/5.3/": "/getting-started/tutorials/publish-api/", @@ -3930,6 +4198,7 @@ }, "/getting-started/tutorials/create-security-policy/": { "/docs/": "/getting-started/create-security-policy/", + "/docs/5.6/": "/getting-started/create-security-policy/", "/docs/5.5/": "/getting-started/create-security-policy/", "/docs/5.4/": "/getting-started/create-security-policy/", "/docs/5.3/": "/getting-started/create-security-policy/", @@ -3947,6 +4216,7 @@ }, "/getting-started/tutorials/important-prerequisites/": { "/docs/": "/tyk-stack/tyk-gateway/important-prerequisites/", + "/docs/5.6/": "/tyk-stack/tyk-gateway/important-prerequisites/", "/docs/5.5/": "/tyk-stack/tyk-gateway/important-prerequisites/", "/docs/5.4/": "/tyk-stack/tyk-gateway/important-prerequisites/", "/docs/5.3/": "/tyk-stack/tyk-gateway/important-prerequisites/", @@ -3967,6 +4237,7 @@ }, "/getting-started/tyk-components/": { "/docs/": "/tyk-stack/", + "/docs/5.6/": "/tyk-stack/", "/docs/5.5/": "/tyk-stack/", "/docs/5.4/": "/tyk-stack/", "/docs/5.3/": "/tyk-stack/", @@ -3984,6 +4255,7 @@ }, "/getting-started/tyk-components/dashboard/": { "/docs/": "/tyk-dashboard/", + "/docs/5.6/": "/tyk-dashboard/", "/docs/5.5/": "/tyk-dashboard/", "/docs/5.4/": "/tyk-dashboard/", "/docs/5.3/": "/tyk-dashboard/", @@ -4001,6 +4273,7 @@ }, "/getting-started/tyk-components/developer-portal/": { "/docs/": "/tyk-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/", @@ -4018,6 +4291,7 @@ }, "/getting-started/tyk-components/gateway/": { "/docs/": "/tyk-oss-gateway/", + "/docs/5.6/": "/tyk-oss-gateway/", "/docs/5.5/": "/tyk-oss-gateway/", "/docs/5.4/": "/tyk-oss-gateway/", "/docs/5.3/": "/tyk-oss-gateway/", @@ -4035,6 +4309,7 @@ }, "/getting-started/tyk-components/identity-broker/": { "/docs/": "/tyk-identity-broker/", + "/docs/5.6/": "/tyk-identity-broker/", "/docs/5.5/": "/tyk-identity-broker/", "/docs/5.4/": "/tyk-identity-broker/", "/docs/5.3/": "/tyk-identity-broker/", @@ -4052,6 +4327,7 @@ }, "/getting-started/tyk-components/mdcb/": { "/docs/": "/tyk-multi-data-centre/", + "/docs/5.6/": "/tyk-multi-data-centre/", "/docs/5.5/": "/tyk-multi-data-centre/", "/docs/5.4/": "/tyk-multi-data-centre/", "/docs/5.3/": "/tyk-multi-data-centre/", @@ -4069,6 +4345,7 @@ }, "/getting-started/tyk-components/pump/": { "/docs/": "/tyk-pump/", + "/docs/5.6/": "/tyk-pump/", "/docs/5.5/": "/tyk-pump/", "/docs/5.4/": "/tyk-pump/", "/docs/5.3/": "/tyk-pump/", @@ -4086,6 +4363,7 @@ }, "/getting-started/tyk-components/tyk-identity-broker/getting-started/": { "/docs/": "/tyk-identity-broker/getting-started/", + "/docs/5.6/": "/tyk-identity-broker/getting-started/", "/docs/5.5/": "/tyk-identity-broker/getting-started/", "/docs/5.4/": "/tyk-identity-broker/getting-started/", "/docs/5.3/": "/tyk-identity-broker/getting-started/", @@ -4103,6 +4381,7 @@ }, "/getting-started/tyk-components/tyk-identity-broker/profiles/": { "/docs/": "/tyk-stack/tyk-identity-broker/about-profiles/", + "/docs/5.6/": "/tyk-stack/tyk-identity-broker/about-profiles/", "/docs/5.5/": "/tyk-stack/tyk-identity-broker/about-profiles/", "/docs/5.4/": "/tyk-stack/tyk-identity-broker/about-profiles/", "/docs/5.3/": "/tyk-stack/tyk-identity-broker/about-profiles/", @@ -4120,6 +4399,7 @@ }, "/getting-started/using-oas-definitions/": { "/docs/": "/getting-started/key-concepts/high-level-concepts/", + "/docs/5.6/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.5/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.4/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.3/": "/getting-started/key-concepts/high-level-concepts/", @@ -4134,6 +4414,7 @@ }, "/getting-started/using-oas-definitions/create-an-oas-api/": { "/docs/": "/getting-started/using-oas-definitions/create-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/create-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/create-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/create-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/create-an-oas-api/", @@ -4148,6 +4429,7 @@ }, "/getting-started/using-oas-definitions/export-an-oas-api/": { "/docs/": "/getting-started/using-oas-definitions/export-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/export-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/export-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/export-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/export-an-oas-api/", @@ -4162,6 +4444,7 @@ }, "/getting-started/using-oas-definitions/get-started-oas/": { "/docs/": "/getting-started/key-concepts/high-level-concepts/", + "/docs/5.6/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.5/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.4/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.3/": "/getting-started/key-concepts/high-level-concepts/", @@ -4176,6 +4459,7 @@ }, "/getting-started/using-oas-definitions/import-an-oas-api/": { "/docs/": "/getting-started/using-oas-definitions/import-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/import-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/import-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/import-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/import-an-oas-api/", @@ -4190,6 +4474,7 @@ }, "/getting-started/using-oas-definitions/mock-response/": { "/docs/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", @@ -4201,6 +4486,7 @@ }, "/getting-started/using-oas-definitions/moving-to-oas/": { "/docs/": "/getting-started/key-concepts/high-level-concepts/", + "/docs/5.6/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.5/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.4/": "/getting-started/key-concepts/high-level-concepts/", "/docs/5.3/": "/getting-started/key-concepts/high-level-concepts/", @@ -4213,6 +4499,7 @@ }, "/getting-started/using-oas-definitions/oas-glossary/": { "/docs/": "/getting-started/using-oas-definitions/oas-glossary/", + "/docs/5.6/": "/getting-started/using-oas-definitions/oas-glossary/", "/docs/5.5/": "/getting-started/using-oas-definitions/oas-glossary/", "/docs/5.4/": "/getting-started/using-oas-definitions/oas-glossary/", "/docs/5.3/": "/getting-started/using-oas-definitions/oas-glossary/", @@ -4227,6 +4514,7 @@ }, "/getting-started/using-oas-definitions/oas-reference/": { "/docs/": "/getting-started/using-oas-definitions/oas-reference/", + "/docs/5.6/": "/getting-started/using-oas-definitions/oas-reference/", "/docs/5.5/": "/getting-started/using-oas-definitions/oas-reference/", "/docs/5.4/": "/getting-started/using-oas-definitions/oas-reference/", "/docs/5.3/": "/getting-started/using-oas-definitions/oas-reference/", @@ -4241,6 +4529,7 @@ }, "/getting-started/using-oas-definitions/update-an-oas-api/": { "/docs/": "/getting-started/using-oas-definitions/update-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/update-an-oas-api/", @@ -4255,6 +4544,7 @@ }, "/getting-started/using-oas-definitions/update-api-with-oas/": { "/docs/": "/getting-started/using-oas-definitions/update-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/update-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/update-an-oas-api/", @@ -4269,6 +4559,7 @@ }, "/getting-started/using-oas-definitions/versioning-an-oas-api/": { "/docs/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", + "/docs/5.6/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", "/docs/5.5/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", "/docs/5.4/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", "/docs/5.3/": "/getting-started/using-oas-definitions/versioning-an-oas-api/", @@ -4283,10 +4574,12 @@ }, "/getting-started/using-tyk-dashboard/": { "/docs/": "/getting-started/using-tyk-dashboard/", + "/docs/5.6/": "/getting-started/using-tyk-dashboard/", "/docs/nightly/": "/getting-started/using-tyk-dashboard/" }, "/getting-started/with-tyk-on-premises/installation/on-aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", + "/docs/5.6/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", "/docs/5.4/": "/tyk-on-premises/installation/on-aws/", "/docs/5.3/": "/tyk-on-premises/installation/on-aws/", @@ -4304,6 +4597,7 @@ }, "/getting-started/with-tyk-on-premises/installation/on-aws/ec2/": { "/docs/": "/tyk-on-premises/on-aws/ec2/", + "/docs/5.6/": "/tyk-on-premises/on-aws/ec2/", "/docs/5.5/": "/tyk-on-premises/on-aws/ec2/", "/docs/5.4/": "/tyk-on-premises/on-aws/ec2/", "/docs/5.3/": "/tyk-on-premises/on-aws/ec2/", @@ -4321,6 +4615,7 @@ }, "/getting-started/with-tyk-on-premises/installation/on-heroku/": { "/docs/": "/tyk-on-premises/installation/on-heroku/", + "/docs/5.6/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.5/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.4/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.3/": "/tyk-on-premises/installation/on-heroku/", @@ -4338,6 +4633,7 @@ }, "/graphql-proxy-only/": { "/docs/": "/graphql-proxy-only/", + "/docs/5.6/": "/graphql-proxy-only/", "/docs/5.5/": "/graphql-proxy-only/", "/docs/5.4/": "/graphql-proxy-only/", "/docs/5.3/": "/graphql-proxy-only/", @@ -4358,6 +4654,7 @@ }, "/graphql/creating-gql-api/": { "/docs/": "/graphql/creating-gql-api/", + "/docs/5.6/": "/graphql/creating-gql-api/", "/docs/5.5/": "/graphql/creating-gql-api/", "/docs/5.4/": "/graphql/creating-gql-api/", "/docs/5.3/": "/graphql/creating-gql-api/", @@ -4371,6 +4668,7 @@ }, "/graphql/gql-headers/": { "/docs/": "/graphql/gql-headers/", + "/docs/5.6/": "/graphql/gql-headers/", "/docs/5.5/": "/graphql/gql-headers/", "/docs/5.4/": "/graphql/gql-headers/", "/docs/5.3/": "/graphql/gql-headers/", @@ -4387,6 +4685,7 @@ }, "/graphql/headers/": { "/docs/": "/graphql/gql-headers/", + "/docs/5.6/": "/graphql/gql-headers/", "/docs/5.5/": "/graphql/gql-headers/", "/docs/5.4/": "/graphql/gql-headers/", "/docs/5.3/": "/graphql/gql-headers/", @@ -4400,6 +4699,7 @@ }, "/graphql/introspection/introspection-queries/": { "/docs/": "/graphql/introspection/introspection-queries/", + "/docs/5.6/": "/graphql/introspection/introspection-queries/", "/docs/5.5/": "/graphql/introspection/introspection-queries/", "/docs/5.4/": "/graphql/introspection/introspection-queries/", "/docs/5.3/": "/graphql/introspection/introspection-queries/", @@ -4413,6 +4713,7 @@ }, "/graphql/migration/": { "/docs/": "/graphql/migration-guide/", + "/docs/5.6/": "/graphql/migration-guide/", "/docs/5.5/": "/graphql/migration-guide/", "/docs/5.4/": "/graphql/migration-guide/", "/docs/5.3/": "/graphql/migration-guide/", @@ -4430,6 +4731,7 @@ }, "/graphql/persist-query/": { "/docs/": "/graphql/persisted-queries/", + "/docs/5.6/": "/graphql/persisted-queries/", "/docs/5.5/": "/graphql/persisted-queries/", "/docs/5.4/": "/graphql/persisted-queries/", "/docs/5.3/": "/graphql/persisted-queries/", @@ -4441,6 +4743,7 @@ }, "/graphql/persisted-queries/": { "/docs/": "/graphql/persisted-queries/", + "/docs/5.6/": "/graphql/persisted-queries/", "/docs/5.5/": "/graphql/persisted-queries/", "/docs/5.4/": "/graphql/persisted-queries/", "/docs/5.3/": "/graphql/persisted-queries/", @@ -4452,6 +4755,7 @@ }, "/graphql/sync-schema/": { "/docs/": "/graphql/syncing-schema/", + "/docs/5.6/": "/graphql/syncing-schema/", "/docs/5.5/": "/graphql/syncing-schema/", "/docs/5.4/": "/graphql/syncing-schema/", "/docs/5.3/": "/graphql/syncing-schema/", @@ -4475,6 +4779,7 @@ }, "/graphql/websockets/": { "/docs/": "/graphql/graphql-websockets/", + "/docs/5.6/": "/graphql/graphql-websockets/", "/docs/5.5/": "/graphql/graphql-websockets/", "/docs/5.4/": "/graphql/graphql-websockets/", "/docs/5.3/": "/graphql/graphql-websockets/", @@ -4492,6 +4797,7 @@ }, "/integrate/3rd-party-identity-providers/": { "/docs/": "/advanced-configuration/integrate/3rd-party-identity-providers/", + "/docs/5.6/": "/advanced-configuration/integrate/3rd-party-identity-providers/", "/docs/5.5/": "/advanced-configuration/integrate/3rd-party-identity-providers/", "/docs/5.4/": "/advanced-configuration/integrate/3rd-party-identity-providers/", "/docs/5.3/": "/advanced-configuration/integrate/3rd-party-identity-providers/", @@ -4503,6 +4809,7 @@ }, "/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib/": { "/docs/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", + "/docs/5.6/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.5/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.4/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.3/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", @@ -4514,6 +4821,7 @@ }, "/integrate/3rd-party-identity-providers/openldap/": { "/docs/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", + "/docs/5.6/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.5/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.4/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", "/docs/5.3/": "/advanced-configuration/integrate/3rd-party-identity-providers/ldap/", @@ -4525,6 +4833,7 @@ }, "/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/": { "/docs/": "/advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/", + "/docs/5.6/": "/advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/", "/docs/5.5/": "/advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/", "/docs/5.4/": "/advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/", "/docs/5.3/": "/advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus/", @@ -4536,6 +4845,7 @@ }, "/integrate/3rd-party-identity-providers/tib-rest-api/": { "/docs/": "/tyk-identity-broker/tib-rest-api/", + "/docs/5.6/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.5/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.4/": "/tyk-identity-broker/tib-rest-api/", "/docs/5.3/": "/tyk-identity-broker/tib-rest-api/", @@ -4553,6 +4863,7 @@ }, "/integrate/sso/dashboard-login-okta-tib/": { "/docs/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", + "/docs/5.6/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.5/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.4/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", "/docs/5.3/": "/tyk-stack/tyk-manager/sso/dashboard-login-okta-tib/", @@ -4573,6 +4884,7 @@ }, "/manage-multiple-environments/": { "/docs/": "/advanced-configuration/manage-multiple-environments/", + "/docs/5.6/": "/advanced-configuration/manage-multiple-environments/", "/docs/5.5/": "/advanced-configuration/manage-multiple-environments/", "/docs/5.4/": "/advanced-configuration/manage-multiple-environments/", "/docs/5.3/": "/advanced-configuration/manage-multiple-environments/", @@ -4584,6 +4896,7 @@ }, "/orphan/": { "/docs/": "/orphan/", + "/docs/5.6/": "/orphan/", "/docs/5.5/": "/orphan/", "/docs/5.4/": "/orphan/", "/docs/5.3/": "/orphan/", @@ -4593,6 +4906,7 @@ }, "/plan-your-api-integration/": { "/docs/": "/plan-your-api-integration/", + "/docs/5.6/": "/plan-your-api-integration/", "/docs/nightly/": "/plan-your-api-integration/" }, "/planning-for-production/": { @@ -4603,6 +4917,7 @@ }, "/planning-for-production/database-settings/": { "/docs/": "/planning-for-production/database-settings/", + "/docs/5.6/": "/planning-for-production/database-settings/", "/docs/5.5/": "/planning-for-production/database-settings/", "/docs/5.4/": "/planning-for-production/database-settings/", "/docs/5.3/": "/planning-for-production/database-settings/", @@ -4614,12 +4929,13 @@ "/docs/4.1/": "/planning-for-production/database-settings/", "/docs/4.0/": "/planning-for-production/database-settings/", "/docs/nightly/": "/planning-for-production/database-settings/", - "/docs/3.2/": "/planning-for-production/redis-mongodb-sizing/", - "/docs/3.1/": "/planning-for-production/redis-mongodb-sizing/", - "/docs/3-lts/": "/planning-for-production/redis-mongodb-sizing/" + "/docs/3.2/": "/planning-for-production/redis-mongodb/", + "/docs/3.1/": "/planning-for-production/redis-mongodb/", + "/docs/3-lts/": "/planning-for-production/redis-mongodb/" }, "/planning-for-production/database-settings/mongodb-sizing/": { "/docs/": "/planning-for-production/database-settings/mongodb-sizing/", + "/docs/5.6/": "/planning-for-production/database-settings/mongodb-sizing/", "/docs/5.5/": "/planning-for-production/database-settings/mongodb-sizing/", "/docs/5.4/": "/planning-for-production/database-settings/mongodb-sizing/", "/docs/5.3/": "/planning-for-production/database-settings/mongodb-sizing/", @@ -4634,6 +4950,7 @@ }, "/planning-for-production/database-settings/mongodb/": { "/docs/": "/planning-for-production/database-settings/mongodb/", + "/docs/5.6/": "/planning-for-production/database-settings/mongodb/", "/docs/5.5/": "/planning-for-production/database-settings/mongodb/", "/docs/5.4/": "/planning-for-production/database-settings/mongodb/", "/docs/5.3/": "/planning-for-production/database-settings/mongodb/", @@ -4648,6 +4965,7 @@ }, "/planning-for-production/database-settings/postgresql/": { "/docs/": "/planning-for-production/database-settings/postgresql/", + "/docs/5.6/": "/planning-for-production/database-settings/postgresql/", "/docs/5.5/": "/planning-for-production/database-settings/postgresql/", "/docs/5.4/": "/planning-for-production/database-settings/postgresql/", "/docs/5.3/": "/planning-for-production/database-settings/postgresql/", @@ -4662,6 +4980,7 @@ }, "/planning-for-production/database-settings/sql/": { "/docs/": "/planning-for-production/database-settings/postgresql/", + "/docs/5.6/": "/planning-for-production/database-settings/postgresql/", "/docs/5.5/": "/planning-for-production/database-settings/postgresql/", "/docs/5.4/": "/planning-for-production/database-settings/postgresql/", "/docs/5.3/": "/planning-for-production/database-settings/postgresql/", @@ -4697,6 +5016,7 @@ }, "/planning-for-production/monitoring/": { "/docs/": "/planning-for-production/monitoring/", + "/docs/5.6/": "/planning-for-production/monitoring/", "/docs/5.5/": "/planning-for-production/monitoring/", "/docs/5.4/": "/planning-for-production/monitoring/", "/docs/5.3/": "/planning-for-production/monitoring/", @@ -4708,6 +5028,7 @@ }, "/planning-for-production/monitoring/tyk-components/": { "/docs/": "/planning-for-production/monitoring/tyk-components/", + "/docs/5.6/": "/planning-for-production/monitoring/tyk-components/", "/docs/5.5/": "/planning-for-production/monitoring/tyk-components/", "/docs/5.4/": "/planning-for-production/monitoring/tyk-components/", "/docs/5.3/": "/planning-for-production/monitoring/tyk-components/", @@ -4719,6 +5040,7 @@ }, "/planning-for-production/redis-mongodb-sizing/": { "/docs/": "/planning-for-production/database-settings/", + "/docs/5.6/": "/planning-for-production/database-settings/", "/docs/5.5/": "/planning-for-production/database-settings/", "/docs/5.4/": "/planning-for-production/database-settings/", "/docs/5.3/": "/planning-for-production/database-settings/", @@ -4733,6 +5055,7 @@ }, "/planning-for-production/redis-mongodb/": { "/docs/": "/planning-for-production/database-settings/", + "/docs/5.6/": "/planning-for-production/database-settings/", "/docs/5.5/": "/planning-for-production/database-settings/", "/docs/5.4/": "/planning-for-production/database-settings/", "/docs/5.3/": "/planning-for-production/database-settings/", @@ -4747,6 +5070,7 @@ }, "/planning-for-production/redis-sizing/": { "/docs/": "/planning-for-production/redis-sizing/", + "/docs/5.6/": "/planning-for-production/redis-sizing/", "/docs/5.5/": "/planning-for-production/redis-sizing/", "/docs/5.4/": "/planning-for-production/redis-sizing/", "/docs/5.3/": "/planning-for-production/redis-sizing/", @@ -4761,6 +5085,7 @@ }, "/planning-for-production/redis/": { "/docs/": "/planning-for-production/redis/", + "/docs/5.6/": "/planning-for-production/redis/", "/docs/5.5/": "/planning-for-production/redis/", "/docs/5.4/": "/planning-for-production/redis/", "/docs/5.3/": "/planning-for-production/redis/", @@ -4778,6 +5103,7 @@ }, "/plugins/analytics-plugins/": { "/docs/": "/plugins/plugin-types/analytics-plugins/", + "/docs/5.6/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.5/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.4/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.3/": "/plugins/plugin-types/analytics-plugins/", @@ -4792,6 +5118,7 @@ }, "/plugins/auth-plugins/": { "/docs/": "/plugins/plugin-types/auth-plugins/auth-plugins/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/auth-plugins/", @@ -4809,6 +5136,7 @@ }, "/plugins/auth-plugins/id-extractor/": { "/docs/": "/plugins/plugin-types/auth-plugins/id-extractor/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/id-extractor/", @@ -4826,6 +5154,7 @@ }, "/plugins/get-started-plugins/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -4837,6 +5166,7 @@ }, "/plugins/get-started-selfmanaged/deploy-plugins/": { "/docs/": "/plugins/get-started-selfmanaged/deploy-plugins/", + "/docs/5.6/": "/plugins/get-started-selfmanaged/deploy-plugins/", "/docs/5.5/": "/plugins/get-started-selfmanaged/deploy-plugins/", "/docs/5.4/": "/plugins/get-started-selfmanaged/deploy-plugins/", "/docs/5.3/": "/plugins/get-started-selfmanaged/deploy-plugins/", @@ -4848,6 +5178,7 @@ }, "/plugins/get-started-selfmanaged/deploy/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -4859,6 +5190,7 @@ }, "/plugins/get-started-selfmanaged/get-started/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -4870,6 +5202,7 @@ }, "/plugins/get-started-selfmanaged/run/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -4881,6 +5214,7 @@ }, "/plugins/get-started-selfmanaged/test/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -4892,6 +5226,7 @@ }, "/plugins/golang-plugins/golang-plugins/": { "/docs/": "/plugins/supported-languages/golang/", + "/docs/5.6/": "/plugins/supported-languages/golang/", "/docs/5.5/": "/plugins/supported-languages/golang/", "/docs/5.4/": "/plugins/supported-languages/golang/", "/docs/5.3/": "/plugins/supported-languages/golang/", @@ -4915,6 +5250,7 @@ }, "/plugins/how-to-serve/": { "/docs/": "/plugins/how-to-serve-plugins/", + "/docs/5.6/": "/plugins/how-to-serve-plugins/", "/docs/5.5/": "/plugins/how-to-serve-plugins/", "/docs/5.4/": "/plugins/how-to-serve-plugins/", "/docs/5.3/": "/plugins/how-to-serve-plugins/", @@ -4932,6 +5268,7 @@ }, "/plugins/how-to-serve/plugin-bundles/": { "/docs/": "/plugins/how-to-serve-plugins/plugin-bundles/", + "/docs/5.6/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.5/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.4/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.3/": "/plugins/how-to-serve-plugins/plugin-bundles/", @@ -4949,6 +5286,7 @@ }, "/plugins/javascript-middleware/": { "/docs/": "/plugins/supported-languages/javascript-middleware/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/", @@ -4966,6 +5304,7 @@ }, "/plugins/javascript-middleware/install-middleware/": { "/docs/": "/plugins/supported-languages/javascript-middleware/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/", @@ -4983,6 +5322,7 @@ }, "/plugins/javascript-middleware/install-middleware/tyk-ce/": { "/docs/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce/", @@ -5000,6 +5340,7 @@ }, "/plugins/javascript-middleware/install-middleware/tyk-hybrid/": { "/docs/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid/", @@ -5017,6 +5358,7 @@ }, "/plugins/javascript-middleware/install-middleware/tyk-pro/": { "/docs/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro/", @@ -5034,6 +5376,7 @@ }, "/plugins/javascript-middleware/javascript-api/": { "/docs/": "/plugins/supported-languages/javascript-middleware/javascript-api/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/javascript-api/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/javascript-api/", @@ -5051,6 +5394,7 @@ }, "/plugins/javascript-middleware/middleware-scripting-guide/": { "/docs/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", @@ -5068,6 +5412,7 @@ }, "/plugins/plugin-hub/": { "/docs/": "/plugins/plugin-hub/", + "/docs/5.6/": "/plugins/plugin-hub/", "/docs/5.5/": "/plugins/plugin-hub/", "/docs/5.4/": "/plugins/plugin-hub/", "/docs/5.3/": "/plugins/plugin-hub/", @@ -5078,6 +5423,7 @@ }, "/plugins/plugin-types/analytics-plugins/": { "/docs/": "/plugins/plugin-types/analytics-plugins/", + "/docs/5.6/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.5/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.4/": "/plugins/plugin-types/analytics-plugins/", "/docs/5.3/": "/plugins/plugin-types/analytics-plugins/", @@ -5092,6 +5438,7 @@ }, "/plugins/plugin-types/auth-plugins/auth-plugins/": { "/docs/": "/plugins/plugin-types/auth-plugins/auth-plugins/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/auth-plugins/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/auth-plugins/", @@ -5109,6 +5456,7 @@ }, "/plugins/plugin-types/auth-plugins/id-extractor/": { "/docs/": "/plugins/plugin-types/auth-plugins/id-extractor/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/id-extractor/", @@ -5126,6 +5474,7 @@ }, "/plugins/plugin-types/plugintypes/": { "/docs/": "/plugins/plugin-types/plugintypes/", + "/docs/5.6/": "/plugins/plugin-types/plugintypes/", "/docs/5.5/": "/plugins/plugin-types/plugintypes/", "/docs/5.4/": "/plugins/plugin-types/plugintypes/", "/docs/5.3/": "/plugins/plugin-types/plugintypes/", @@ -5137,6 +5486,7 @@ }, "/plugins/plugin-types/request-plugins/": { "/docs/": "/plugins/plugin-types/request-plugins/", + "/docs/5.6/": "/plugins/plugin-types/request-plugins/", "/docs/5.5/": "/plugins/plugin-types/request-plugins/", "/docs/5.4/": "/plugins/plugin-types/request-plugins/", "/docs/5.3/": "/plugins/plugin-types/request-plugins/", @@ -5154,6 +5504,7 @@ }, "/plugins/plugin-types/response-plugins/": { "/docs/": "/plugins/plugin-types/response-plugins/", + "/docs/5.6/": "/plugins/plugin-types/response-plugins/", "/docs/5.5/": "/plugins/plugin-types/response-plugins/", "/docs/5.4/": "/plugins/plugin-types/response-plugins/", "/docs/5.3/": "/plugins/plugin-types/response-plugins/", @@ -5171,6 +5522,7 @@ }, "/plugins/request-plugins/": { "/docs/": "/plugins/plugin-types/request-plugins/", + "/docs/5.6/": "/plugins/plugin-types/request-plugins/", "/docs/5.5/": "/plugins/plugin-types/request-plugins/", "/docs/5.4/": "/plugins/plugin-types/request-plugins/", "/docs/5.3/": "/plugins/plugin-types/request-plugins/", @@ -5188,6 +5540,7 @@ }, "/plugins/response-plugins/": { "/docs/": "/plugins/plugin-types/response-plugins/", + "/docs/5.6/": "/plugins/plugin-types/response-plugins/", "/docs/5.5/": "/plugins/plugin-types/response-plugins/", "/docs/5.4/": "/plugins/plugin-types/response-plugins/", "/docs/5.3/": "/plugins/plugin-types/response-plugins/", @@ -5205,6 +5558,7 @@ }, "/plugins/rich-plugins/": { "/docs/": "/plugins/supported-languages/rich-plugins/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/", @@ -5222,6 +5576,7 @@ }, "/plugins/rich-plugins/grpc/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/", @@ -5239,6 +5594,7 @@ }, "/plugins/rich-plugins/grpc/custom-auth-dot-net/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net/", @@ -5256,6 +5612,7 @@ }, "/plugins/rich-plugins/grpc/custom-auth-nodejs/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs/", @@ -5273,6 +5630,7 @@ }, "/plugins/rich-plugins/grpc/grpc-plugins-tyk/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/", @@ -5290,6 +5648,7 @@ }, "/plugins/rich-plugins/grpc/performance/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/performance/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/performance/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/performance/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/performance/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/performance/", @@ -5307,6 +5666,7 @@ }, "/plugins/rich-plugins/grpc/request-transformation-java/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/request-transformation-java/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/request-transformation-java/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/request-transformation-java/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/request-transformation-java/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/request-transformation-java/", @@ -5324,6 +5684,7 @@ }, "/plugins/rich-plugins/grpc/tutorial-add-grpc-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", @@ -5341,6 +5702,7 @@ }, "/plugins/rich-plugins/grpc/write-grpc-plugin/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", @@ -5358,6 +5720,7 @@ }, "/plugins/rich-plugins/id-extractor/": { "/docs/": "/plugins/plugin-types/auth-plugins/id-extractor/", + "/docs/5.6/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.5/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.4/": "/plugins/plugin-types/auth-plugins/id-extractor/", "/docs/5.3/": "/plugins/plugin-types/auth-plugins/id-extractor/", @@ -5375,6 +5738,7 @@ }, "/plugins/rich-plugins/luajit/": { "/docs/": "/plugins/supported-languages/rich-plugins/luajit/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/luajit/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/luajit/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/luajit/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/luajit/", @@ -5392,6 +5756,7 @@ }, "/plugins/rich-plugins/luajit/requirements/": { "/docs/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", @@ -5409,6 +5774,7 @@ }, "/plugins/rich-plugins/luajit/tutorial-add-demo-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", @@ -5426,6 +5792,7 @@ }, "/plugins/rich-plugins/plugin-bundles/": { "/docs/": "/plugins/how-to-serve-plugins/plugin-bundles/", + "/docs/5.6/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.5/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.4/": "/plugins/how-to-serve-plugins/plugin-bundles/", "/docs/5.3/": "/plugins/how-to-serve-plugins/plugin-bundles/", @@ -5443,6 +5810,7 @@ }, "/plugins/rich-plugins/python/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/python/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/python/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/python/", @@ -5460,6 +5828,7 @@ }, "/plugins/rich-plugins/python/custom-auth-python-tutorial/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial/", @@ -5477,6 +5846,7 @@ }, "/plugins/rich-plugins/python/performance/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/performance/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/performance/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/performance/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/performance/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/performance/", @@ -5494,6 +5864,7 @@ }, "/plugins/rich-plugins/python/tutorial-add-demo-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api/", @@ -5511,6 +5882,7 @@ }, "/plugins/rich-plugins/python/tyk-python-api-methods/": { "/docs/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/python/tyk-python-api-methods/", @@ -5528,6 +5900,7 @@ }, "/plugins/rich-plugins/rich-plugins-data-structures/": { "/docs/": "/plugins/supported-languages/rich-plugins/rich-plugins-data-structures/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/rich-plugins-data-structures/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/rich-plugins-data-structures/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/rich-plugins-data-structures/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/rich-plugins-data-structures/", @@ -5545,6 +5918,7 @@ }, "/plugins/rich-plugins/rich-plugins-work/": { "/docs/": "/plugins/supported-languages/rich-plugins/rich-plugins-work/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/rich-plugins-work/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/rich-plugins-work/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/rich-plugins-work/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/rich-plugins-work/", @@ -5571,6 +5945,7 @@ }, "/plugins/supported-languages/javascript-middleware/install-middleware/install-middleware/": { "/docs/": "/plugins/supported-languages/javascript-middleware/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/", @@ -5618,6 +5993,7 @@ }, "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/custom-auth-python/", @@ -5627,6 +6003,7 @@ }, "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/getting-started-python/", @@ -5646,6 +6023,7 @@ }, "/plugins/supported-languages/rich-plugins/grpc/tutorial-add-grpc-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin/", @@ -5675,6 +6053,7 @@ }, "/plugins/supported-languages/rich-plugins/luajitrequirements/": { "/docs/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/luajit/requirements/", @@ -5686,6 +6065,7 @@ }, "/plugins/supported-languages/rich-plugins/luajittutorial-add-demo-plugin-api/": { "/docs/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", + "/docs/5.6/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.5/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.4/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", "/docs/5.3/": "/plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api/", @@ -5718,6 +6098,7 @@ }, "/plugins/tutorials/quick-starts/go/dashboard/": { "/docs/": "/plugins/tutorials/quick-starts/go/dashboard/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/dashboard/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/dashboard/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/dashboard/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/dashboard/", @@ -5727,6 +6108,7 @@ }, "/plugins/tutorials/quick-starts/go/open-source/": { "/docs/": "/plugins/tutorials/quick-starts/go/open-source/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/open-source/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/open-source/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/open-source/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/open-source/", @@ -5736,6 +6118,7 @@ }, "/plugins/tutorials/quick-starts/go/quickstart/": { "/docs/": "/plugins/tutorials/quick-starts/go/quickstart/", + "/docs/5.6/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.5/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.4/": "/plugins/tutorials/quick-starts/go/quickstart/", "/docs/5.3/": "/plugins/tutorials/quick-starts/go/quickstart/", @@ -5747,6 +6130,7 @@ }, "/product-stack/tyk-charts/overview/": { "/docs/": "/product-stack/tyk-charts/overview/", + "/docs/5.6/": "/product-stack/tyk-charts/overview/", "/docs/5.5/": "/product-stack/tyk-charts/overview/", "/docs/5.4/": "/product-stack/tyk-charts/overview/", "/docs/5.3/": "/product-stack/tyk-charts/overview/", @@ -5756,6 +6140,7 @@ }, "/product-stack/tyk-charts/release-notes/version-1.3/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-1.3/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-1.3/", "/docs/5.5/": "/product-stack/tyk-charts/release-notes/version-1.3/", "/docs/5.4/": "/product-stack/tyk-charts/release-notes/version-1.3/", "/docs/5.3/": "/product-stack/tyk-charts/release-notes/version-1.3/", @@ -5765,6 +6150,7 @@ }, "/product-stack/tyk-charts/release-notes/version-1.4/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-1.4/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-1.4/", "/docs/5.5/": "/product-stack/tyk-charts/release-notes/version-1.4/", "/docs/5.4/": "/product-stack/tyk-charts/release-notes/version-1.4/", "/docs/5.3/": "/product-stack/tyk-charts/release-notes/version-1.4/", @@ -5772,6 +6158,7 @@ }, "/product-stack/tyk-charts/release-notes/version-1.5/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-1.5/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-1.5/", "/docs/5.5/": "/product-stack/tyk-charts/release-notes/version-1.5/", "/docs/5.4/": "/product-stack/tyk-charts/release-notes/version-1.5/", "/docs/5.3/": "/product-stack/tyk-charts/release-notes/version-1.5/", @@ -5779,22 +6166,26 @@ }, "/product-stack/tyk-charts/release-notes/version-1.6/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-1.6/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-1.6/", "/docs/5.5/": "/product-stack/tyk-charts/release-notes/version-1.6/", "/docs/5.3/": "/product-stack/tyk-charts/release-notes/version-1.6/", "/docs/nightly/": "/product-stack/tyk-charts/release-notes/version-1.6/" }, "/product-stack/tyk-charts/release-notes/version-2.0/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-2.0/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-2.0/", "/docs/5.5/": "/product-stack/tyk-charts/release-notes/version-2.0/", "/docs/5.3/": "/product-stack/tyk-charts/release-notes/version-2.0/", "/docs/nightly/": "/product-stack/tyk-charts/release-notes/version-2.0/" }, "/product-stack/tyk-charts/release-notes/version-2.1/": { "/docs/": "/product-stack/tyk-charts/release-notes/version-2.1/", + "/docs/5.6/": "/product-stack/tyk-charts/release-notes/version-2.1/", "/docs/nightly/": "/product-stack/tyk-charts/release-notes/version-2.1/" }, "/product-stack/tyk-charts/tyk-control-plane-chart/": { "/docs/": "/product-stack/tyk-charts/tyk-control-plane-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-control-plane-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-control-plane-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-control-plane-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-control-plane-chart/", @@ -5804,6 +6195,7 @@ }, "/product-stack/tyk-charts/tyk-data-plane-chart/": { "/docs/": "/product-stack/tyk-charts/tyk-data-plane-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-data-plane-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-data-plane-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-data-plane-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-data-plane-chart/", @@ -5813,6 +6205,7 @@ }, "/product-stack/tyk-charts/tyk-oss-chart/": { "/docs/": "/product-stack/tyk-charts/tyk-oss-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-oss-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-oss-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-oss-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-oss-chart/", @@ -5822,6 +6215,7 @@ }, "/product-stack/tyk-charts/tyk-stack-chart/": { "/docs/": "/product-stack/tyk-charts/tyk-stack-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-stack-chart/", @@ -5832,6 +6226,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint/", @@ -5839,6 +6234,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log/", @@ -5848,6 +6244,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/api-categories/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/api-categories/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/api-categories/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/api-categories/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/api-categories/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/api-categories/", @@ -5855,6 +6252,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration/", @@ -5863,6 +6261,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example/", @@ -5872,6 +6271,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/sso/dashboard-login-keycloak-sso/", @@ -5881,6 +6281,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-api/", @@ -5888,6 +6289,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-designer/", @@ -5895,6 +6297,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/templates/template-overview/", @@ -5902,6 +6305,7 @@ }, "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/": { "/docs/": "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/", + "/docs/5.6/": "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/", "/docs/5.5/": "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/", "/docs/5.4/": "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/", "/docs/5.3/": "/product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership/", @@ -5909,6 +6313,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", @@ -5918,6 +6323,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", @@ -5927,6 +6333,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", @@ -5936,6 +6343,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", @@ -5945,6 +6353,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", @@ -5954,6 +6363,7 @@ }, "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", @@ -5963,6 +6373,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.4/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4/", @@ -5972,6 +6383,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.5/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5/", @@ -5981,6 +6393,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.6/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6/", @@ -5990,6 +6403,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.7/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7/", @@ -5999,6 +6413,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.8/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8/", @@ -6008,6 +6423,7 @@ }, "/product-stack/tyk-dashboard/release-notes/old-releases/version-2.9/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9/", @@ -6017,6 +6433,7 @@ }, "/product-stack/tyk-dashboard/release-notes/overview/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/overview/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/overview/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/overview/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/overview/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/overview/", @@ -6026,6 +6443,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-3.0/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-3.0/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-3.0/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-3.0/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-3.0/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-3.0/", @@ -6035,6 +6453,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-3.1/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-3.1/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-3.1/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-3.1/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-3.1/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-3.1/", @@ -6044,6 +6463,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-3.2/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-3.2/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-3.2/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-3.2/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-3.2/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-3.2/", @@ -6053,6 +6473,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-4.0/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-4.0/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-4.0/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-4.0/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-4.0/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-4.0/", @@ -6062,6 +6483,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-4.1/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-4.1/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-4.1/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-4.1/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-4.1/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-4.1/", @@ -6071,6 +6493,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-4.2/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-4.2/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-4.2/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-4.2/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-4.2/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-4.2/", @@ -6080,6 +6503,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-4.3/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-4.3/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-4.3/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-4.3/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-4.3/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-4.3/", @@ -6089,6 +6513,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-5.0/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.0/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.0/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.0/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-5.0/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-5.0/", @@ -6098,6 +6523,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-5.1/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.1/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.1/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.1/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-5.1/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-5.1/", @@ -6107,6 +6533,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-5.2/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.2/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.2/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.2/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-5.2/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-5.2/", @@ -6115,6 +6542,7 @@ }, "/product-stack/tyk-dashboard/release-notes/version-5.3/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.3/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.3/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.3/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-5.3/", "/docs/5.3/": "/product-stack/tyk-dashboard/release-notes/version-5.3/", @@ -6122,21 +6550,25 @@ }, "/product-stack/tyk-dashboard/release-notes/version-5.4/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.4/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.4/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.4/", "/docs/5.4/": "/product-stack/tyk-dashboard/release-notes/version-5.4/", "/docs/nightly/": "/product-stack/tyk-dashboard/release-notes/version-5.4/" }, "/product-stack/tyk-dashboard/release-notes/version-5.5/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.5/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.5/", "/docs/5.5/": "/product-stack/tyk-dashboard/release-notes/version-5.5/", "/docs/nightly/": "/product-stack/tyk-dashboard/release-notes/version-5.5/" }, "/product-stack/tyk-dashboard/release-notes/version-5.6/": { "/docs/": "/product-stack/tyk-dashboard/release-notes/version-5.6/", + "/docs/5.6/": "/product-stack/tyk-dashboard/release-notes/version-5.6/", "/docs/nightly/": "/product-stack/tyk-dashboard/release-notes/version-5.6/" }, "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/list-of-endpoints/portal-1.9.0-list-of-endpoints/", @@ -6146,6 +6578,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api/", @@ -6155,6 +6588,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", @@ -6165,6 +6599,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", @@ -6175,13 +6610,14 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.2/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.1/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", - "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", + "/docs/5.0/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal/", "/docs/4.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", "/docs/4.2/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", "/docs/4.1/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/", @@ -6189,6 +6625,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", @@ -6199,6 +6636,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker/", @@ -6208,6 +6646,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", @@ -6218,6 +6657,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-new-helm/", @@ -6227,6 +6667,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-rpm/", @@ -6236,6 +6677,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/overview/", @@ -6245,6 +6687,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-api-product-and-plan/", @@ -6254,6 +6697,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/create-orgs-and-catalogs/", @@ -6263,6 +6707,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-products-and-plans/", @@ -6272,6 +6717,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/customize-sign-up-form/", @@ -6281,6 +6727,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", @@ -6295,6 +6742,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", @@ -6312,6 +6760,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", @@ -6323,6 +6772,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/with-tyk-self-managed-as-provider/", @@ -6332,6 +6782,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks/", @@ -6341,6 +6792,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model/", @@ -6350,6 +6802,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0/", @@ -6359,6 +6812,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0/", @@ -6366,15 +6820,18 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0/" }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/", "/docs/nightly/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0/" }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0/", @@ -6384,6 +6841,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0/", @@ -6393,6 +6851,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0/", @@ -6402,6 +6861,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0/", @@ -6411,6 +6871,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0/", @@ -6420,6 +6881,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0/", @@ -6429,6 +6891,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0/", @@ -6438,6 +6901,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1/", @@ -6447,6 +6911,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2/", @@ -6456,6 +6921,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3/", @@ -6465,6 +6931,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4/", @@ -6474,6 +6941,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5/", @@ -6483,6 +6951,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0/", @@ -6492,6 +6961,7 @@ }, "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades/", @@ -6501,6 +6971,7 @@ }, "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/", "/docs/5.3/": "/product-stack/tyk-enterprise-mdcb/advanced-configurations/synchroniser/", @@ -6510,6 +6981,7 @@ }, "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.3/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", @@ -6519,6 +6991,7 @@ }, "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.3/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", @@ -6526,22 +6999,26 @@ }, "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/nightly/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/" }, "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7/", "/docs/nightly/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7/" }, "/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning/", "/docs/nightly/": "/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning/" }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/distributed-tracing-overview/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/distributed-tracing-overview/", @@ -6550,6 +7027,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", "/docs/nightly/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability/", @@ -6558,6 +7036,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/", @@ -6566,6 +7045,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog/", @@ -6574,6 +7054,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace/", @@ -6582,6 +7063,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic/", @@ -6590,6 +7072,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger/", @@ -6598,6 +7081,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s/", @@ -6606,6 +7090,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic/", @@ -6614,6 +7099,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger/", @@ -6631,6 +7117,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic/", @@ -6648,6 +7135,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview/", @@ -6665,6 +7153,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin/", @@ -6682,6 +7171,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic/", @@ -6689,6 +7179,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas/", @@ -6696,6 +7187,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview/", @@ -6703,6 +7195,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli/", @@ -6710,6 +7203,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic/", @@ -6717,6 +7211,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas/", @@ -6724,6 +7219,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow/", @@ -6731,6 +7227,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler/", @@ -6738,6 +7235,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples/", @@ -6745,6 +7243,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins/", @@ -6752,6 +7251,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins/", @@ -6759,6 +7259,7 @@ }, "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/": { "/docs/": "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/", + "/docs/5.6/": "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/", "/docs/5.5/": "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/", "/docs/5.4/": "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/", "/docs/5.3/": "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins/", @@ -6767,6 +7268,7 @@ }, "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/", "/docs/5.3/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording/", @@ -6774,6 +7276,7 @@ }, "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/", "/docs/5.3/": "/product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic/", @@ -6781,24 +7284,28 @@ }, "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/", "/docs/nightly/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic/" }, "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/nightly/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/" }, "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/", "/docs/nightly/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers/" }, "/product-stack/tyk-gateway/middleware/allow-list-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/allow-list-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/allow-list-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/allow-list-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/allow-list-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/allow-list-middleware/", @@ -6806,6 +7313,7 @@ }, "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-classic/", @@ -6813,6 +7321,7 @@ }, "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/allow-list-tyk-oas/", @@ -6820,6 +7329,7 @@ }, "/product-stack/tyk-gateway/middleware/block-list-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/block-list-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/block-list-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/block-list-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/block-list-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/block-list-middleware/", @@ -6827,6 +7337,7 @@ }, "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/block-list-tyk-classic/", @@ -6834,6 +7345,7 @@ }, "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/block-list-tyk-oas/", @@ -6841,6 +7353,7 @@ }, "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-classic/", @@ -6848,6 +7361,7 @@ }, "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/circuit-breaker-tyk-oas/", @@ -6855,6 +7369,7 @@ }, "/product-stack/tyk-gateway/middleware/do-not-track-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/do-not-track-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/do-not-track-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/do-not-track-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/do-not-track-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/do-not-track-middleware/", @@ -6862,6 +7377,7 @@ }, "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-classic/", @@ -6869,6 +7385,7 @@ }, "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/do-not-track-tyk-oas/", @@ -6876,6 +7393,7 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic/", @@ -6883,6 +7401,7 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas/", @@ -6890,6 +7409,7 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic/", @@ -6897,6 +7417,7 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas/", @@ -6904,6 +7425,7 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-plugin/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-plugin/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-plugin/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-plugin/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/endpoint-plugin/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/endpoint-plugin/", @@ -6911,16 +7433,19 @@ }, "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic/", "/docs/nightly/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic/" }, "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas/", "/docs/nightly/": "/product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas/" }, "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-classic/", @@ -6928,6 +7453,7 @@ }, "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/enforced-timeout-tyk-oas/", @@ -6935,6 +7461,7 @@ }, "/product-stack/tyk-gateway/middleware/ignore-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/ignore-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/ignore-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/ignore-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/ignore-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/ignore-middleware/", @@ -6942,6 +7469,7 @@ }, "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/ignore-tyk-classic/", @@ -6949,6 +7477,7 @@ }, "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/ignore-tyk-oas/", @@ -6956,6 +7485,7 @@ }, "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/internal-endpoint-middleware/", @@ -6963,6 +7493,7 @@ }, "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic/", @@ -6970,6 +7501,7 @@ }, "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas/", @@ -6977,6 +7509,7 @@ }, "/product-stack/tyk-gateway/middleware/mock-response-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/mock-response-middleware/", @@ -6988,6 +7521,7 @@ }, "/product-stack/tyk-gateway/middleware/mock-response-openapi/": { "/docs/": "/product-stack/tyk-gateway/middleware/mock-response-openapi/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/mock-response-openapi/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/mock-response-openapi/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/mock-response-openapi/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/mock-response-openapi/", @@ -6995,6 +7529,7 @@ }, "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-classic/", @@ -7002,6 +7537,7 @@ }, "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/mock-response-tyk-oas/", @@ -7009,6 +7545,7 @@ }, "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-body-tyk-classic/", @@ -7016,6 +7553,7 @@ }, "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-body-tyk-oas/", @@ -7023,6 +7561,7 @@ }, "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-header-tyk-classic/", @@ -7030,6 +7569,7 @@ }, "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-header-tyk-oas/", @@ -7037,6 +7577,7 @@ }, "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-method-tyk-classic/", @@ -7044,6 +7585,7 @@ }, "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-method-tyk-oas/", @@ -7051,6 +7593,7 @@ }, "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic/", @@ -7058,6 +7601,7 @@ }, "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas/", @@ -7065,6 +7609,7 @@ }, "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/response-body-tyk-classic/", @@ -7072,6 +7617,7 @@ }, "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/response-body-tyk-oas/", @@ -7079,6 +7625,7 @@ }, "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/response-header-tyk-classic/", @@ -7086,6 +7633,7 @@ }, "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/response-header-tyk-oas/", @@ -7093,6 +7641,7 @@ }, "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/url-rewrite-middleware/", @@ -7100,6 +7649,7 @@ }, "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic/", @@ -7107,6 +7657,7 @@ }, "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas/", @@ -7114,6 +7665,7 @@ }, "/product-stack/tyk-gateway/middleware/validate-request-middleware/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", @@ -7128,6 +7680,7 @@ }, "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-classic/", @@ -7145,6 +7698,7 @@ }, "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-tyk-oas/", @@ -7152,6 +7706,7 @@ }, "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/": { "/docs/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic/", @@ -7159,6 +7714,7 @@ }, "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/": { "/docs/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas/", @@ -7166,6 +7722,7 @@ }, "/product-stack/tyk-gateway/references/go-templates/": { "/docs/": "/product-stack/tyk-gateway/references/go-templates/", + "/docs/5.6/": "/product-stack/tyk-gateway/references/go-templates/", "/docs/5.5/": "/product-stack/tyk-gateway/references/go-templates/", "/docs/5.4/": "/product-stack/tyk-gateway/references/go-templates/", "/docs/5.3/": "/product-stack/tyk-gateway/references/go-templates/", @@ -7173,6 +7730,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", @@ -7190,6 +7748,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", @@ -7207,6 +7766,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", @@ -7224,6 +7784,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", @@ -7241,6 +7802,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", @@ -7258,6 +7820,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", @@ -7275,6 +7838,7 @@ }, "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", @@ -7292,6 +7856,7 @@ }, "/product-stack/tyk-gateway/release-notes/overview/": { "/docs/": "/product-stack/tyk-gateway/release-notes/overview/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/overview/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/overview/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/overview/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/overview/", @@ -7301,6 +7866,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-3.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.0/", @@ -7318,6 +7884,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-3.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.1/", @@ -7335,6 +7902,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-3.2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.2/", @@ -7352,6 +7920,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-4.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.0/", @@ -7366,6 +7935,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-4.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.1/", @@ -7379,6 +7949,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-4.2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.2/", @@ -7391,6 +7962,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-4.3/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.3/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.3/", @@ -7402,6 +7974,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-5.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.0/", @@ -7412,6 +7985,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-5.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.1/", @@ -7421,6 +7995,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-5.2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.2/", @@ -7429,6 +8004,7 @@ }, "/product-stack/tyk-gateway/release-notes/version-5.3/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.3/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.3/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.3/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.3/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.3/", @@ -7436,162 +8012,195 @@ }, "/product-stack/tyk-gateway/release-notes/version-5.4/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.4/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.4/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.4/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.4/", "/docs/nightly/": "/product-stack/tyk-gateway/release-notes/version-5.4/" }, "/product-stack/tyk-gateway/release-notes/version-5.5/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.5/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.5/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.5/", "/docs/nightly/": "/product-stack/tyk-gateway/release-notes/version-5.5/" }, "/product-stack/tyk-gateway/release-notes/version-5.6/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.6/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.6/", "/docs/nightly/": "/product-stack/tyk-gateway/release-notes/version-5.6/" }, "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/": { "/docs/": "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/", + "/docs/5.6/": "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/", "/docs/nightly/": "/product-stack/tyk-identity-broker/release-notes/tib-v1.6/" }, "/product-stack/tyk-operator/advanced-configurations/api-categories/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/api-versioning/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/client-authentication/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/client-authentication/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/custom-plugins/": { "/docs/": "/product-stack/tyk-operator/advanced-configurations/custom-plugins/", + "/docs/5.6/": "/product-stack/tyk-operator/advanced-configurations/custom-plugins/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/custom-plugins/", "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/custom-plugins/" }, "/product-stack/tyk-operator/advanced-configurations/graphql-federation/": { "/docs/": "/product-stack/tyk-operator/advanced-configurations/graphql-federation/", + "/docs/5.6/": "/product-stack/tyk-operator/advanced-configurations/graphql-federation/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/graphql-federation/", "/docs/nightly/": "/product-stack/tyk-operator/advanced-configurations/graphql-federation/" }, "/product-stack/tyk-operator/advanced-configurations/internal-looping/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/internal-looping/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/management-of-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/advanced-configurations/management-of-api/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/advanced-configurations/tls-certificate/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/create-an-api-overview/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/create-an-oas-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/example-tyk-oas-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-graphql/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-graphql/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-http/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-http/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-tcp/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-tcp/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/quick-start-udg/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/quick-start-udg/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/secure-an-api-overview/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/secure-an-oas-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/security-policy-example/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/", "/docs/5.4/": "/product-stack/tyk-operator/getting-started/tyk-operator-api-ownership/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/", "/docs/5.4/": "/product-stack/tyk-operator/getting-started/tyk-operator-multiple-organisations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/custom-resources/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/custom-resources/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/custom-resources/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/key-concepts/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/operator-context/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/operator-context/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/operator-context/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/key-concepts/operator-user/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/key-concepts/operator-user/", "/docs/5.4/": "/product-stack/tyk-operator/key-concepts/operator-user/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/api-definition/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/api-definition/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/security-policy/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/security-policy/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/tyk-oas-api-definition/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/reference/version-compatibility/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/reference/version-compatibility/", "/docs/5.4/": "/product-stack/tyk-operator/reference/version-compatibility/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/release-notes/operator-0.16/": { "/docs/": "/product-stack/tyk-operator/release-notes/operator-0.16/", + "/docs/5.6/": "/product-stack/tyk-operator/release-notes/operator-0.16/", "/docs/5.5/": "/product-stack/tyk-operator/release-notes/operator-0.16/", "/docs/5.4/": "/product-stack/tyk-operator/release-notes/operator-0.16/", "/docs/5.3/": "/product-stack/tyk-operator/release-notes/operator-0.16/", @@ -7601,6 +8210,7 @@ }, "/product-stack/tyk-operator/release-notes/operator-0.17/": { "/docs/": "/product-stack/tyk-operator/release-notes/operator-0.17/", + "/docs/5.6/": "/product-stack/tyk-operator/release-notes/operator-0.17/", "/docs/5.5/": "/product-stack/tyk-operator/release-notes/operator-0.17/", "/docs/5.4/": "/product-stack/tyk-operator/release-notes/operator-0.17/", "/docs/5.3/": "/product-stack/tyk-operator/release-notes/operator-0.17/", @@ -7608,27 +8218,32 @@ }, "/product-stack/tyk-operator/release-notes/operator-0.18/": { "/docs/": "/product-stack/tyk-operator/release-notes/operator-0.18/", + "/docs/5.6/": "/product-stack/tyk-operator/release-notes/operator-0.18/", "/docs/5.5/": "/product-stack/tyk-operator/release-notes/operator-0.18/", "/docs/5.4/": "/product-stack/tyk-operator/release-notes/operator-0.18/", "/docs/nightly/": "/product-stack/tyk-operator/release-notes/operator-0.18/" }, "/product-stack/tyk-operator/release-notes/operator-1.0/": { "/docs/": "/product-stack/tyk-operator/release-notes/operator-1.0/", + "/docs/5.6/": "/product-stack/tyk-operator/release-notes/operator-1.0/", "/docs/nightly/": "/product-stack/tyk-operator/release-notes/operator-1.0/" }, "/product-stack/tyk-operator/release-notes/overview/": { "/docs/": "/product-stack/tyk-operator/release-notes/overview/", + "/docs/5.6/": "/product-stack/tyk-operator/release-notes/overview/", "/docs/5.5/": "/product-stack/tyk-operator/release-notes/overview/", "/docs/5.4/": "/product-stack/tyk-operator/release-notes/overview/", "/docs/nightly/": "/product-stack/tyk-operator/release-notes/overview/" }, "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-changes-not-applied/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.4/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", "/docs/5.3/": "/product-stack/tyk-operator/troubleshooting/tyk-operator-reconciliation-troubleshooting/", @@ -7638,6 +8253,7 @@ }, "/product-stack/tyk-operator/tyk-ingress-controller/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.4/": "/product-stack/tyk-operator/tyk-ingress-controller/", "/docs/5.3/": "/product-stack/tyk-operator/tyk-ingress-controller/", @@ -7647,6 +8263,7 @@ }, "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/": { "/docs/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", + "/docs/5.6/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", "/docs/5.5/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", "/docs/5.4/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", "/docs/5.3/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/csv/", @@ -7655,6 +8272,7 @@ }, "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/": { "/docs/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/", + "/docs/5.6/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/", "/docs/5.5/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/", "/docs/5.4/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/", "/docs/5.3/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/elasticsearch/", @@ -7663,6 +8281,7 @@ }, "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/": { "/docs/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/", + "/docs/5.6/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/", "/docs/5.5/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/", "/docs/5.4/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/", "/docs/5.3/": "/product-stack/tyk-pump/advanced-configurations/configure-data-sinks/logzio/", @@ -7671,6 +8290,7 @@ }, "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/": { "/docs/": "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/", + "/docs/5.6/": "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/", "/docs/5.5/": "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/", "/docs/5.4/": "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/", "/docs/5.3/": "/product-stack/tyk-pump/advanced-configurations/setup-prometheus-pump/", @@ -7681,17 +8301,20 @@ }, "/product-stack/tyk-pump/release-notes/pump-1.10/": { "/docs/": "/product-stack/tyk-pump/release-notes/pump-1.10/", + "/docs/5.6/": "/product-stack/tyk-pump/release-notes/pump-1.10/", "/docs/5.5/": "/product-stack/tyk-pump/release-notes/pump-1.10/", "/docs/5.4/": "/product-stack/tyk-pump/release-notes/pump-1.10/", "/docs/nightly/": "/product-stack/tyk-pump/release-notes/pump-1.10/" }, "/product-stack/tyk-pump/release-notes/pump-1.11/": { "/docs/": "/product-stack/tyk-pump/release-notes/pump-1.11/", + "/docs/5.6/": "/product-stack/tyk-pump/release-notes/pump-1.11/", "/docs/5.5/": "/product-stack/tyk-pump/release-notes/pump-1.11/", "/docs/nightly/": "/product-stack/tyk-pump/release-notes/pump-1.11/" }, "/product-stack/tyk-pump/release-notes/pump-1.9/": { "/docs/": "/product-stack/tyk-pump/release-notes/pump-1.9/", + "/docs/5.6/": "/product-stack/tyk-pump/release-notes/pump-1.9/", "/docs/5.5/": "/product-stack/tyk-pump/release-notes/pump-1.9/", "/docs/5.4/": "/product-stack/tyk-pump/release-notes/pump-1.9/", "/docs/5.3/": "/product-stack/tyk-pump/release-notes/pump-1.9/", @@ -7701,6 +8324,7 @@ }, "/product-stack/tyk-streaming/configuration/common-configuration/batching/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/batching/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/batching/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/batching/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/batching/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/batching/", @@ -7708,13 +8332,15 @@ }, "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/common-configuration/error-handling/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/field-paths/", @@ -7722,13 +8348,15 @@ }, "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/common-configuration/interpolation/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/processing-pipelines/", @@ -7736,13 +8364,15 @@ }, "/product-stack/tyk-streaming/configuration/common-configuration/resources/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/common-configuration/resources/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/common-configuration/secrets/": { "/docs/": "/product-stack/tyk-streaming/configuration/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/overview/", @@ -7750,27 +8380,31 @@ }, "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/": { "/docs/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/common-configuration/windowed_processing/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/amqp-0-9/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/amqp-1/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/amqp-1/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/broker/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/broker/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/broker/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/broker/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/broker/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/broker/", @@ -7778,13 +8412,15 @@ }, "/product-stack/tyk-streaming/configuration/inputs/generate/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/generate/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/generate/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/generate/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/generate/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/generate/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/generate/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/http-client/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/http-client/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/http-client/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/http-client/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/http-client/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/http-client/", @@ -7792,6 +8428,7 @@ }, "/product-stack/tyk-streaming/configuration/inputs/http-server/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/http-server/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/http-server/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/http-server/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/http-server/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/http-server/", @@ -7799,13 +8436,15 @@ }, "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/kafka-franz/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/kafka/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/kafka/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/kafka/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/kafka/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/kafka/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/kafka/", @@ -7813,27 +8452,31 @@ }, "/product-stack/tyk-streaming/configuration/inputs/mqtt/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/mqtt/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/nats/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/nats/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/nats/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/nats/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/nats/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/nats/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/nats/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/nsq/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/nsq/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/nsq/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/nsq/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/nsq/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/nsq/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/nsq/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/inputs/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/overview/", @@ -7841,27 +8484,31 @@ }, "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/": { "/docs/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/inputs/redis-pubsub/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/amqp-0-9/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/amqp-1/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/amqp-1/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/broker/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/broker/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/broker/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/broker/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/broker/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/broker/", @@ -7869,20 +8516,23 @@ }, "/product-stack/tyk-streaming/configuration/outputs/drop_on/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/drop_on/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/fallback/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/fallback/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/fallback/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/fallback/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/fallback/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/fallback/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/fallback/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/http-client/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/http-client/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/http-client/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/http-client/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/http-client/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/http-client/", @@ -7890,6 +8540,7 @@ }, "/product-stack/tyk-streaming/configuration/outputs/http-server/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/http-server/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/http-server/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/http-server/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/http-server/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/http-server/", @@ -7897,13 +8548,15 @@ }, "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/kafka-franz/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/kafka/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/kafka/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/kafka/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/kafka/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/kafka/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/kafka/", @@ -7911,27 +8564,31 @@ }, "/product-stack/tyk-streaming/configuration/outputs/mqtt/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/mqtt/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/nats/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/nats/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/nats/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/nats/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/nats/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/nats/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/nats/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/nsq/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/nsq/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/nsq/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/nsq/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/nsq/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/nsq/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/nsq/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/overview/", @@ -7939,48 +8596,55 @@ }, "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/redis-pubsub/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/reject/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/reject/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/reject/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/reject/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/reject/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/reject/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/reject/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/retry/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/retry/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/retry/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/retry/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/retry/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/retry/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/retry/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/stdout/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/stdout/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/stdout/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/stdout/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/stdout/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/stdout/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/stdout/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/switch/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/switch/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/switch/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/switch/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/switch/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/switch/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/switch/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/outputs/sync-response/": { "/docs/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/outputs/sync-response/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/overview/", @@ -7988,6 +8652,7 @@ }, "/product-stack/tyk-streaming/configuration/processors/avro/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/avro/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/avro/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/avro/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/avro/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/avro/", @@ -7995,153 +8660,175 @@ }, "/product-stack/tyk-streaming/configuration/processors/aws-lambda/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/aws-lambda/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/bloblang/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/bloblang/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/bloblang/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/bloblang/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/bloblang/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/bloblang/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/bloblang/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/bounds-check/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/bounds-check/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/branch/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/branch/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/branch/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/branch/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/branch/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/branch/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/branch/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/cache/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/cache/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/cache/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/cache/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/cache/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/cache/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/cache/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/cached/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/cached/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/cached/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/cached/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/cached/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/cached/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/cached/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/catch/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/catch/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/catch/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/catch/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/catch/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/catch/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/catch/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/dedupe/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/dedupe/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/dedupe/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/dedupe/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/dedupe/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/dedupe/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/dedupe/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/for-each/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/for-each/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/for-each/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/for-each/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/for-each/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/for-each/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/for-each/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/group-by-value/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/group-by-value/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/group-by/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/group-by/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/group-by/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/group-by/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/group-by/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/group-by/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/group-by/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/http/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/http/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/http/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/http/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/http/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/http/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/http/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/insert-part/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/insert-part/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/insert-part/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/insert-part/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/insert-part/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/insert-part/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/insert-part/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/jmes-path/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/jmes-path/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/jq/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/jq/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/jq/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/jq/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/jq/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/jq/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/jq/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/json-schema/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/json-schema/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/json-schema/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/json-schema/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/json-schema/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/json-schema/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/json-schema/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/log/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/log/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/log/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/log/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/log/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/log/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/log/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/mapping/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/mapping/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/mapping/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/mapping/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/mapping/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/mapping/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/mapping/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/msgpack/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/msgpack/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/msgpack/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/msgpack/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/msgpack/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/msgpack/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/msgpack/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/mutation/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/mutation/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/mutation/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/mutation/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/mutation/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/mutation/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/mutation/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/noop/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/noop/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/noop/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/noop/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/noop/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/noop/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/noop/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/overview/", @@ -8149,125 +8836,143 @@ }, "/product-stack/tyk-streaming/configuration/processors/parallel/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/parallel/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/parallel/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/parallel/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/parallel/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/parallel/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/parallel/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/parse-log/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/parse-log/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/parse-log/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/parse-log/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/parse-log/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/parse-log/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/parse-log/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/processors/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/processors/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/processors/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/processors/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/processors/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/processors/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/processors/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/protobuf/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/protobuf/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/protobuf/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/protobuf/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/protobuf/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/protobuf/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/protobuf/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/rate-limit/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/rate-limit/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/redis/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/redis/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/redis/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/redis/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/redis/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/redis/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/redis/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/retry/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/retry/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/retry/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/retry/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/retry/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/retry/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/retry/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-decode/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/schema-registry-encode/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/select-parts/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/select-parts/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/select-parts/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/select-parts/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/select-parts/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/select-parts/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/select-parts/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/sleep/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/sleep/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/sleep/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/sleep/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/sleep/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/sleep/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/sleep/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/split/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/split/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/split/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/split/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/split/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/split/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/split/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/switch/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/switch/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/switch/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/switch/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/switch/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/switch/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/switch/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/sync-response/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/sync-response/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/sync-response/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/sync-response/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/sync-response/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/sync-response/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/sync-response/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/try/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/try/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/try/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/try/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/try/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/try/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/try/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/while/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/while/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/while/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/while/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/while/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/while/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/while/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/processors/workflow/": { "/docs/": "/product-stack/tyk-streaming/configuration/processors/workflow/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/processors/workflow/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/processors/workflow/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/processors/workflow/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/processors/workflow/", - "/docs/nightly/": "/product-stack/tyk-streaming/configuration/processors/workflow/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/configuration/rate-limits/local/": { "/docs/": "/product-stack/tyk-streaming/configuration/rate-limits/local/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/rate-limits/local/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/rate-limits/local/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/rate-limits/local/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/rate-limits/local/", @@ -8275,6 +8980,7 @@ }, "/product-stack/tyk-streaming/configuration/rate-limits/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/rate-limits/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/rate-limits/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/rate-limits/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/rate-limits/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/rate-limits/overview/", @@ -8282,6 +8988,7 @@ }, "/product-stack/tyk-streaming/configuration/scanners/csv/": { "/docs/": "/product-stack/tyk-streaming/configuration/scanners/csv/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/scanners/csv/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/scanners/csv/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/scanners/csv/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/scanners/csv/", @@ -8289,6 +8996,7 @@ }, "/product-stack/tyk-streaming/configuration/scanners/lines/": { "/docs/": "/product-stack/tyk-streaming/configuration/scanners/lines/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/scanners/lines/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/scanners/lines/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/scanners/lines/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/scanners/lines/", @@ -8296,6 +9004,7 @@ }, "/product-stack/tyk-streaming/configuration/scanners/overview/": { "/docs/": "/product-stack/tyk-streaming/configuration/scanners/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/scanners/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/scanners/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/scanners/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/scanners/overview/", @@ -8303,6 +9012,7 @@ }, "/product-stack/tyk-streaming/configuration/scanners/re-match/": { "/docs/": "/product-stack/tyk-streaming/configuration/scanners/re-match/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/scanners/re-match/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/scanners/re-match/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/scanners/re-match/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/scanners/re-match/", @@ -8310,6 +9020,7 @@ }, "/product-stack/tyk-streaming/configuration/scanners/switch/": { "/docs/": "/product-stack/tyk-streaming/configuration/scanners/switch/", + "/docs/5.6/": "/product-stack/tyk-streaming/configuration/scanners/switch/", "/docs/5.5/": "/product-stack/tyk-streaming/configuration/scanners/switch/", "/docs/5.4/": "/product-stack/tyk-streaming/configuration/scanners/switch/", "/docs/5.3/": "/product-stack/tyk-streaming/configuration/scanners/switch/", @@ -8317,6 +9028,7 @@ }, "/product-stack/tyk-streaming/deployment-considerations/": { "/docs/": "/product-stack/tyk-streaming/deployment-considerations/", + "/docs/5.6/": "/product-stack/tyk-streaming/deployment-considerations/", "/docs/5.5/": "/product-stack/tyk-streaming/deployment-considerations/", "/docs/5.4/": "/product-stack/tyk-streaming/deployment-considerations/", "/docs/5.3/": "/product-stack/tyk-streaming/deployment-considerations/", @@ -8324,6 +9036,7 @@ }, "/product-stack/tyk-streaming/developer-portal-integration/": { "/docs/": "/product-stack/tyk-streaming/developer-portal-integration/", + "/docs/5.6/": "/product-stack/tyk-streaming/developer-portal-integration/", "/docs/5.5/": "/product-stack/tyk-streaming/developer-portal-integration/", "/docs/5.4/": "/product-stack/tyk-streaming/developer-portal-integration/", "/docs/5.3/": "/product-stack/tyk-streaming/developer-portal-integration/", @@ -8331,6 +9044,7 @@ }, "/product-stack/tyk-streaming/getting-started/": { "/docs/": "/product-stack/tyk-streaming/getting-started/", + "/docs/5.6/": "/product-stack/tyk-streaming/getting-started/", "/docs/5.5/": "/product-stack/tyk-streaming/getting-started/", "/docs/5.4/": "/product-stack/tyk-streaming/getting-started/", "/docs/5.3/": "/product-stack/tyk-streaming/getting-started/", @@ -8338,6 +9052,7 @@ }, "/product-stack/tyk-streaming/glossary/": { "/docs/": "/product-stack/tyk-streaming/glossary/", + "/docs/5.6/": "/product-stack/tyk-streaming/glossary/", "/docs/5.5/": "/product-stack/tyk-streaming/glossary/", "/docs/5.4/": "/product-stack/tyk-streaming/glossary/", "/docs/5.3/": "/product-stack/tyk-streaming/glossary/", @@ -8345,132 +9060,151 @@ }, "/product-stack/tyk-streaming/guides/bloblang/advanced/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/advanced/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/advanced/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/advanced/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/advanced/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/advanced/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/advanced/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/arithmetic/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/arithmetic/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/functions/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/functions/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/functions/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/functions/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/functions/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/functions/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/functions/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/encoding-and-encryption/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/general/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/general/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/geoip/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/json-web-tokens/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/numbers/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/object-and-arrays/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/overview/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/overview/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/parsing/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/regular-expressions/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/strings/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/strings/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/timestamps/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/methods/type-coercion/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/bloblang/overview/": { "/docs/": "/product-stack/tyk-streaming/guides/bloblang/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/bloblang/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/bloblang/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/bloblang/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/bloblang/overview/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/bloblang/overview/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/guides/sync-responses/": { "/docs/": "/product-stack/tyk-streaming/guides/sync-responses/", + "/docs/5.6/": "/product-stack/tyk-streaming/guides/sync-responses/", "/docs/5.5/": "/product-stack/tyk-streaming/guides/sync-responses/", "/docs/5.4/": "/product-stack/tyk-streaming/guides/sync-responses/", "/docs/5.3/": "/product-stack/tyk-streaming/guides/sync-responses/", - "/docs/nightly/": "/product-stack/tyk-streaming/guides/sync-responses/" + "/docs/nightly/": "/product-stack/tyk-streaming/overview/" }, "/product-stack/tyk-streaming/key-concepts/": { "/docs/": "/product-stack/tyk-streaming/key-concepts/", + "/docs/5.6/": "/product-stack/tyk-streaming/key-concepts/", "/docs/5.5/": "/product-stack/tyk-streaming/key-concepts/", "/docs/5.4/": "/product-stack/tyk-streaming/key-concepts/", "/docs/5.3/": "/product-stack/tyk-streaming/key-concepts/", @@ -8478,6 +9212,7 @@ }, "/product-stack/tyk-streaming/overview/": { "/docs/": "/product-stack/tyk-streaming/overview/", + "/docs/5.6/": "/product-stack/tyk-streaming/overview/", "/docs/5.5/": "/product-stack/tyk-streaming/overview/", "/docs/5.4/": "/product-stack/tyk-streaming/overview/", "/docs/5.3/": "/product-stack/tyk-streaming/overview/", @@ -8488,6 +9223,7 @@ }, "/product-stack/tyk-streaming/troubleshooting/": { "/docs/": "/product-stack/tyk-streaming/troubleshooting/", + "/docs/5.6/": "/product-stack/tyk-streaming/troubleshooting/", "/docs/5.5/": "/product-stack/tyk-streaming/troubleshooting/", "/docs/5.4/": "/product-stack/tyk-streaming/troubleshooting/", "/docs/5.3/": "/product-stack/tyk-streaming/troubleshooting/", @@ -8495,42 +9231,49 @@ }, "/product-stack/tyk-sync/commands/sync-dump/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-dump/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-dump/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-examples/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-examples/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-examples/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-publish/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-publish/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-publish/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-sync/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-sync/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-sync/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/commands/sync-update/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/commands/sync-update/", "/docs/5.4/": "/product-stack/tyk-sync/commands/sync-update/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/installing-tyk-sync/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/installing-tyk-sync/", "/docs/5.4/": "/product-stack/tyk-sync/installing-tyk-sync/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/overview/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", "/docs/nightly/": "/api-management/automations/", @@ -8548,6 +9291,7 @@ }, "/product-stack/tyk-sync/release-notes/sync-1.4/": { "/docs/": "/product-stack/tyk-sync/release-notes/sync-1.4/", + "/docs/5.6/": "/product-stack/tyk-sync/release-notes/sync-1.4/", "/docs/5.5/": "/product-stack/tyk-sync/release-notes/sync-1.4/", "/docs/5.4/": "/product-stack/tyk-sync/release-notes/sync-1.4/", "/docs/5.3/": "/product-stack/tyk-sync/release-notes/sync-1.4/", @@ -8557,34 +9301,40 @@ }, "/product-stack/tyk-sync/release-notes/sync-1.5/": { "/docs/": "/product-stack/tyk-sync/release-notes/sync-1.5/", + "/docs/5.6/": "/product-stack/tyk-sync/release-notes/sync-1.5/", "/docs/5.5/": "/product-stack/tyk-sync/release-notes/sync-1.5/", "/docs/5.4/": "/product-stack/tyk-sync/release-notes/sync-1.5/", "/docs/nightly/": "/product-stack/tyk-sync/release-notes/sync-1.5/" }, "/product-stack/tyk-sync/release-notes/sync-2.0/": { "/docs/": "/product-stack/tyk-sync/release-notes/sync-2.0/", + "/docs/5.6/": "/product-stack/tyk-sync/release-notes/sync-2.0/", "/docs/nightly/": "/product-stack/tyk-sync/release-notes/sync-2.0/" }, "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-backup-api-configurations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-synchronise-api-configurations/", "/docs/nightly/": "/api-management/automations/" }, "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/", "/docs/5.4/": "/product-stack/tyk-sync/tutorials/tutorial-update-api-configurations/", "/docs/nightly/": "/api-management/automations/" }, "/python-custom-auth-plugin/api-middleware-test/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/api-test/", + "/docs/5.6/": "/tyk-cloud/configuration-options/using-plugins/api-test/", "/docs/5.5/": "/tyk-cloud/configuration-options/using-plugins/api-test/", "/docs/5.4/": "/tyk-cloud/configuration-options/using-plugins/api-test/", "/docs/5.3/": "/tyk-cloud/configuration-options/using-plugins/api-test/", @@ -8602,6 +9352,7 @@ }, "/python-custom-auth-plugin/python-code-bundle/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/python-code-bundle/", + "/docs/5.6/": "/tyk-cloud/configuration-options/using-plugins/python-code-bundle/", "/docs/5.5/": "/tyk-cloud/configuration-options/using-plugins/python-code-bundle/", "/docs/5.4/": "/tyk-cloud/configuration-options/using-plugins/python-code-bundle/", "/docs/5.3/": "/tyk-cloud/configuration-options/using-plugins/python-code-bundle/", @@ -8619,6 +9370,7 @@ }, "/python-custom-auth-plugin/setup-control-plane/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/setup-control-plane/", + "/docs/5.6/": "/tyk-cloud/configuration-options/using-plugins/setup-control-plane/", "/docs/5.5/": "/tyk-cloud/configuration-options/using-plugins/setup-control-plane/", "/docs/5.4/": "/tyk-cloud/configuration-options/using-plugins/setup-control-plane/", "/docs/5.3/": "/tyk-cloud/configuration-options/using-plugins/setup-control-plane/", @@ -8636,6 +9388,7 @@ }, "/python-custom-auth-plugin/uploading-bundle/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", + "/docs/5.6/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", "/docs/5.5/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", "/docs/5.4/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", "/docs/5.3/": "/tyk-cloud/configuration-options/using-plugins/uploading-bundle/", @@ -8653,10 +9406,12 @@ }, "/quickstart-configure-first-api/": { "/docs/": "/getting-started/configure-first-api/", + "/docs/5.6/": "/getting-started/configure-first-api/", "/docs/nightly/": "/getting-started/configure-first-api/" }, "/reference-docs/user-roles/": { "/docs/": "/basic-config-and-security/security/dashboard/user-roles/", + "/docs/5.6/": "/basic-config-and-security/security/dashboard/user-roles/", "/docs/5.5/": "/basic-config-and-security/security/dashboard/user-roles/", "/docs/5.4/": "/basic-config-and-security/security/dashboard/user-roles/", "/docs/5.3/": "/basic-config-and-security/security/dashboard/user-roles/", @@ -8674,6 +9429,7 @@ }, "/release-notes/": { "/docs/": "/developer-support/tyk-release-summary/overview/", + "/docs/5.6/": "/developer-support/tyk-release-summary/overview/", "/docs/5.5/": "/developer-support/tyk-release-summary/overview/", "/docs/5.4/": "/developer-support/tyk-release-summary/overview/", "/docs/5.3/": "/developer-support/tyk-release-summary/overview/", @@ -8691,6 +9447,7 @@ }, "/release-notes/mdcb-2.0/": { "/docs/": "/release-notes/mdcb-2.0/", + "/docs/5.6/": "/release-notes/mdcb-2.0/", "/docs/5.5/": "/release-notes/mdcb-2.0/", "/docs/5.4/": "/release-notes/mdcb-2.0/", "/docs/5.3/": "/release-notes/mdcb-2.0/", @@ -8704,6 +9461,7 @@ }, "/release-notes/mdcb-2.1/": { "/docs/": "/release-notes/mdcb-2.1/", + "/docs/5.6/": "/release-notes/mdcb-2.1/", "/docs/5.5/": "/release-notes/mdcb-2.1/", "/docs/5.4/": "/release-notes/mdcb-2.1/", "/docs/5.3/": "/release-notes/mdcb-2.1/", @@ -8715,6 +9473,7 @@ }, "/release-notes/mdcb-2.2/": { "/docs/": "/release-notes/mdcb-2.2/", + "/docs/5.6/": "/release-notes/mdcb-2.2/", "/docs/5.5/": "/release-notes/mdcb-2.2/", "/docs/5.4/": "/release-notes/mdcb-2.2/", "/docs/5.3/": "/release-notes/mdcb-2.2/", @@ -8725,6 +9484,7 @@ }, "/release-notes/mdcb-2.3/": { "/docs/": "/release-notes/mdcb-2.3/", + "/docs/5.6/": "/release-notes/mdcb-2.3/", "/docs/5.5/": "/release-notes/mdcb-2.3/", "/docs/5.4/": "/release-notes/mdcb-2.3/", "/docs/5.3/": "/release-notes/mdcb-2.3/", @@ -8734,6 +9494,7 @@ }, "/release-notes/mdcb-2.4/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", "/docs/5.3/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4/", @@ -8743,6 +9504,7 @@ }, "/release-notes/mdcb-2.5/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", "/docs/5.3/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5/", @@ -8750,12 +9512,14 @@ }, "/release-notes/mdcb-2.6/": { "/docs/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/5.5/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/5.4/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/", "/docs/nightly/": "/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6/" }, "/release-notes/mdcb/": { "/docs/": "/release-notes/mdcb-2.0/", + "/docs/5.6/": "/release-notes/mdcb-2.0/", "/docs/5.5/": "/release-notes/mdcb-2.0/", "/docs/5.4/": "/release-notes/mdcb-2.0/", "/docs/5.3/": "/release-notes/mdcb-2.0/", @@ -8769,6 +9533,7 @@ }, "/release-notes/mdcb/mdcb/": { "/docs/": "/release-notes/mdcb-2.0/", + "/docs/5.6/": "/release-notes/mdcb-2.0/", "/docs/5.5/": "/release-notes/mdcb-2.0/", "/docs/5.4/": "/release-notes/mdcb-2.0/", "/docs/5.3/": "/release-notes/mdcb-2.0/", @@ -8780,6 +9545,7 @@ }, "/release-notes/pump-1.8/": { "/docs/": "/release-notes/pump-1.8/", + "/docs/5.6/": "/release-notes/pump-1.8/", "/docs/5.5/": "/release-notes/pump-1.8/", "/docs/5.4/": "/release-notes/pump-1.8/", "/docs/5.3/": "/release-notes/pump-1.8/", @@ -8793,6 +9559,7 @@ }, "/release-notes/version-2.4/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4/", @@ -8810,6 +9577,7 @@ }, "/release-notes/version-2.5/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5/", @@ -8827,6 +9595,7 @@ }, "/release-notes/version-2.6/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6/", @@ -8844,6 +9613,7 @@ }, "/release-notes/version-2.7/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7/", @@ -8861,6 +9631,7 @@ }, "/release-notes/version-2.8/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8/", @@ -8878,6 +9649,7 @@ }, "/release-notes/version-2.9/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9/", @@ -8895,6 +9667,7 @@ }, "/release-notes/version-3.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.0/", @@ -8912,6 +9685,7 @@ }, "/release-notes/version-3.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.1/", @@ -8929,6 +9703,7 @@ }, "/release-notes/version-3.2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-3.2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-3.2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-3.2/", @@ -8946,6 +9721,7 @@ }, "/release-notes/version-4.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.0/", @@ -8960,6 +9736,7 @@ }, "/release-notes/version-4.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.1/", @@ -8973,6 +9750,7 @@ }, "/release-notes/version-4.2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.2/", @@ -8985,6 +9763,7 @@ }, "/release-notes/version-4.3/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-4.3/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-4.3/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-4.3/", @@ -8996,6 +9775,7 @@ }, "/release-notes/version-5.0/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.0/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.0/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.0/", @@ -9006,6 +9786,7 @@ }, "/release-notes/version-5.1/": { "/docs/": "/product-stack/tyk-gateway/release-notes/version-5.1/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/version-5.1/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/version-5.1/", @@ -9015,6 +9796,7 @@ }, "/report-monitor-trigger-events/": { "/docs/": "/basic-config-and-security/report-monitor-trigger-events/", + "/docs/5.6/": "/basic-config-and-security/report-monitor-trigger-events/", "/docs/5.5/": "/basic-config-and-security/report-monitor-trigger-events/", "/docs/5.4/": "/basic-config-and-security/report-monitor-trigger-events/", "/docs/5.3/": "/basic-config-and-security/report-monitor-trigger-events/", @@ -9026,6 +9808,7 @@ }, "/report-monitor-trigger-events/instrumentation/": { "/docs/": "/basic-config-and-security/report-monitor-trigger-events/instrumentation/", + "/docs/5.6/": "/basic-config-and-security/report-monitor-trigger-events/instrumentation/", "/docs/5.5/": "/basic-config-and-security/report-monitor-trigger-events/instrumentation/", "/docs/5.4/": "/basic-config-and-security/report-monitor-trigger-events/instrumentation/", "/docs/5.3/": "/basic-config-and-security/report-monitor-trigger-events/instrumentation/", @@ -9037,6 +9820,7 @@ }, "/report-monitor-trigger-events/webhooks/": { "/docs/": "/basic-config-and-security/report-monitor-trigger-events/webhooks/", + "/docs/5.6/": "/basic-config-and-security/report-monitor-trigger-events/webhooks/", "/docs/5.5/": "/basic-config-and-security/report-monitor-trigger-events/webhooks/", "/docs/5.4/": "/basic-config-and-security/report-monitor-trigger-events/webhooks/", "/docs/5.3/": "/basic-config-and-security/report-monitor-trigger-events/webhooks/", @@ -9048,6 +9832,7 @@ }, "/security/": { "/docs/": "/basic-config-and-security/security/", + "/docs/5.6/": "/basic-config-and-security/security/", "/docs/5.5/": "/basic-config-and-security/security/", "/docs/5.4/": "/basic-config-and-security/security/", "/docs/5.3/": "/basic-config-and-security/security/", @@ -9062,6 +9847,7 @@ }, "/security/security-policies/": { "/docs/": "/basic-config-and-security/security/security-policies/", + "/docs/5.6/": "/basic-config-and-security/security/security-policies/", "/docs/5.5/": "/basic-config-and-security/security/security-policies/", "/docs/5.4/": "/basic-config-and-security/security/security-policies/", "/docs/5.3/": "/basic-config-and-security/security/security-policies/", @@ -9079,6 +9865,7 @@ }, "/security/security-policies/partitioned-policies/": { "/docs/": "/basic-config-and-security/security/security-policies/partitioned-policies/", + "/docs/5.6/": "/basic-config-and-security/security/security-policies/partitioned-policies/", "/docs/5.5/": "/basic-config-and-security/security/security-policies/partitioned-policies/", "/docs/5.4/": "/basic-config-and-security/security/security-policies/partitioned-policies/", "/docs/5.3/": "/basic-config-and-security/security/security-policies/partitioned-policies/", @@ -9096,6 +9883,7 @@ }, "/security/security-policies/policies-guide/": { "/docs/": "/basic-config-and-security/security/security-policies/policies-guide/", + "/docs/5.6/": "/basic-config-and-security/security/security-policies/policies-guide/", "/docs/5.5/": "/basic-config-and-security/security/security-policies/policies-guide/", "/docs/5.4/": "/basic-config-and-security/security/security-policies/policies-guide/", "/docs/5.3/": "/basic-config-and-security/security/security-policies/policies-guide/", @@ -9110,6 +9898,7 @@ }, "/security/tls-and-ssl/": { "/docs/": "/basic-config-and-security/security/tls-and-ssl/", + "/docs/5.6/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.5/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.4/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.3/": "/basic-config-and-security/security/tls-and-ssl/", @@ -9127,6 +9916,7 @@ }, "/security/tls-and-ssl/lets-encrypt/": { "/docs/": "/basic-config-and-security/security/tls-and-ssl/", + "/docs/5.6/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.5/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.4/": "/basic-config-and-security/security/tls-and-ssl/", "/docs/5.3/": "/basic-config-and-security/security/tls-and-ssl/", @@ -9138,6 +9928,7 @@ }, "/security/tls-and-ssl/mutual-tls/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.4/": "/basic-config-and-security/security/mutual-tls/", "/docs/5.3/": "/basic-config-and-security/security/mutual-tls/", @@ -9155,6 +9946,7 @@ }, "/security/your-apis/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.4/": "/basic-config-and-security/security/authentication--authorization/", "/docs/5.3/": "/basic-config-and-security/security/authentication--authorization/", @@ -9166,6 +9958,7 @@ }, "/security/your-apis/bearer-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/bearer-tokens/", @@ -9177,6 +9970,7 @@ }, "/security/your-apis/json-web-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", @@ -9188,6 +9982,7 @@ }, "/security/your-apis/oauth-2-0/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/oauth-2-0/", @@ -9199,6 +9994,7 @@ }, "/security/your-apis/openid-connect/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/openid-connect/", @@ -9210,6 +10006,7 @@ }, "/transform-traffic/endpoint-designer/": { "/docs/": "/advanced-configuration/transform-traffic/", + "/docs/5.6/": "/advanced-configuration/transform-traffic/", "/docs/5.5/": "/advanced-configuration/transform-traffic/", "/docs/5.4/": "/advanced-configuration/transform-traffic/", "/docs/5.3/": "/advanced-configuration/transform-traffic/", @@ -9236,6 +10033,7 @@ }, "/transform-traffic/validate-json/": { "/docs/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", + "/docs/5.6/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.5/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.4/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", "/docs/5.3/": "/product-stack/tyk-gateway/middleware/validate-request-middleware/", @@ -9247,6 +10045,7 @@ }, "/troubleshooting/": { "/docs/": "/frequently-asked-questions/faq/", + "/docs/5.6/": "/frequently-asked-questions/faq/", "/docs/5.5/": "/frequently-asked-questions/faq/", "/docs/5.4/": "/frequently-asked-questions/faq/", "/docs/5.3/": "/frequently-asked-questions/faq/", @@ -9294,6 +10093,7 @@ }, "/troubleshooting/tyk-dashboard/fatal-dashboard-port.../": { "/docs/": "/troubleshooting/tyk-dashboard/fatal-dashboard-portal-domains-same/", + "/docs/5.6/": "/troubleshooting/tyk-dashboard/fatal-dashboard-portal-domains-same/", "/docs/5.5/": "/troubleshooting/tyk-dashboard/fatal-dashboard-portal-domains-same/", "/docs/5.4/": "/troubleshooting/tyk-dashboard/fatal-dashboard-portal-domains-same/", "/docs/5.3/": "/troubleshooting/tyk-dashboard/fatal-dashboard-portal-domains-same/", @@ -9314,6 +10114,7 @@ }, "/troubleshooting/tyk-dashboard/not-found-error-deve.../": { "/docs/": "/troubleshooting/tyk-dashboard/not-found-error-developer-portal/", + "/docs/5.6/": "/troubleshooting/tyk-dashboard/not-found-error-developer-portal/", "/docs/5.5/": "/troubleshooting/tyk-dashboard/not-found-error-developer-portal/", "/docs/5.4/": "/troubleshooting/tyk-dashboard/not-found-error-developer-portal/", "/docs/5.3/": "/troubleshooting/tyk-dashboard/not-found-error-developer-portal/", @@ -9418,6 +10219,7 @@ }, "/try-out-tyk/create-api-key/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -9435,6 +10237,7 @@ }, "/try-out-tyk/tutorials/create-api-key/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", @@ -9452,6 +10255,7 @@ }, "/try-out-tyk/tutorials/create-api/": { "/docs/": "/getting-started/create-api/", + "/docs/5.6/": "/getting-started/create-api/", "/docs/5.5/": "/getting-started/create-api/", "/docs/5.4/": "/getting-started/create-api/", "/docs/5.3/": "/getting-started/create-api/", @@ -9469,6 +10273,7 @@ }, "/try-out-tyk/tutorials/create-portal-entry/": { "/docs/": "/getting-started/tutorials/publish-api/", + "/docs/5.6/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", "/docs/5.4/": "/getting-started/tutorials/publish-api/", "/docs/5.3/": "/getting-started/tutorials/publish-api/", @@ -9480,6 +10285,7 @@ }, "/try-out-tyk/tutorials/create-security-policy/": { "/docs/": "/getting-started/create-security-policy/", + "/docs/5.6/": "/getting-started/create-security-policy/", "/docs/5.5/": "/getting-started/create-security-policy/", "/docs/5.4/": "/getting-started/create-security-policy/", "/docs/5.3/": "/getting-started/create-security-policy/", @@ -9497,6 +10303,7 @@ }, "/try-out-tyk/tutorials/tutorials/": { "/docs/": "/getting-started/installation/", + "/docs/5.6/": "/getting-started/installation/", "/docs/5.5/": "/getting-started/installation/", "/docs/5.4/": "/getting-started/installation/", "/docs/5.3/": "/getting-started/installation/", @@ -9514,6 +10321,7 @@ }, "/tyk-api-gateway-v-2-0/installation-options-setup/install-tyk-pro-edition-on-red-hat/": { "/docs/": "/tyk-on-premises/redhat-rhel-centos/", + "/docs/5.6/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.5/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.4/": "/tyk-on-premises/redhat-rhel-centos/", "/docs/5.3/": "/tyk-on-premises/redhat-rhel-centos/", @@ -9525,12 +10333,14 @@ }, "/tyk-api-gateway-v-3-0/api-management/events/": { "/docs/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", + "/docs/5.6/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/5.5/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/5.4/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/", "/docs/nightly/": "/product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas/" }, "/tyk-api-gateway-v1-9/javascript-plugins/middleware-scripting/": { "/docs/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", + "/docs/5.6/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.5/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.4/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", "/docs/5.3/": "/plugins/supported-languages/javascript-middleware/middleware-scripting-guide/", @@ -9542,6 +10352,7 @@ }, "/tyk-api-gateway-v1-9/setup/install-tyk-on-ubuntu/": { "/docs/": "/tyk-on-premises/debian-ubuntu/", + "/docs/5.6/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.5/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.4/": "/tyk-on-premises/debian-ubuntu/", "/docs/5.3/": "/tyk-on-premises/debian-ubuntu/", @@ -9553,6 +10364,7 @@ }, "/tyk-api-gateway-v1-9/tutorials/set-up-your-first-api/": { "/docs/": "/getting-started/create-api/", + "/docs/5.6/": "/getting-started/create-api/", "/docs/5.5/": "/getting-started/create-api/", "/docs/5.4/": "/getting-started/create-api/", "/docs/5.3/": "/getting-started/create-api/", @@ -9564,6 +10376,7 @@ }, "/tyk-api-gateway-v1-9/tutorials/set-up-your-portal/": { "/docs/": "/getting-started/tutorials/publish-api/", + "/docs/5.6/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", "/docs/5.4/": "/getting-started/tutorials/publish-api/", "/docs/5.3/": "/getting-started/tutorials/publish-api/", @@ -9584,6 +10397,7 @@ }, "/tyk-apis/tyk-dashboard-admin-api/organisations/": { "/docs/": "/dashboard-admin-api/organisations/", + "/docs/5.6/": "/dashboard-admin-api/organisations/", "/docs/5.5/": "/dashboard-admin-api/organisations/", "/docs/5.4/": "/dashboard-admin-api/organisations/", "/docs/5.3/": "/dashboard-admin-api/organisations/", @@ -9622,6 +10436,7 @@ }, "/tyk-apis/tyk-dashboard-api/data-graphs-api/": { "/docs/": "/tyk-apis/tyk-dashboard-api/data-graphs-api/", + "/docs/5.6/": "/tyk-apis/tyk-dashboard-api/data-graphs-api/", "/docs/5.5/": "/tyk-apis/tyk-dashboard-api/data-graphs-api/", "/docs/5.4/": "/tyk-apis/tyk-dashboard-api/data-graphs-api/", "/docs/5.3/": "/tyk-apis/tyk-dashboard-api/data-graphs-api/", @@ -9638,6 +10453,7 @@ }, "/tyk-apis/tyk-dashboard-api/org/opa/": { "/docs/": "/tyk-dashboard-api/org/opa/", + "/docs/5.6/": "/tyk-dashboard-api/org/opa/", "/docs/5.5/": "/tyk-dashboard-api/org/opa/", "/docs/5.4/": "/tyk-dashboard-api/org/opa/", "/docs/5.3/": "/tyk-dashboard-api/org/opa/", @@ -9655,6 +10471,7 @@ }, "/tyk-apis/tyk-dashboard-api/org/permissions/": { "/docs/": "/tyk-dashboard-api/org/permissions/", + "/docs/5.6/": "/tyk-dashboard-api/org/permissions/", "/docs/5.5/": "/tyk-dashboard-api/org/permissions/", "/docs/5.4/": "/tyk-dashboard-api/org/permissions/", "/docs/5.3/": "/tyk-dashboard-api/org/permissions/", @@ -9684,6 +10501,7 @@ }, "/tyk-apis/tyk-dashboard-api/users/": { "/docs/": "/tyk-dashboard-api/users/", + "/docs/5.6/": "/tyk-dashboard-api/users/", "/docs/5.5/": "/tyk-dashboard-api/users/", "/docs/5.4/": "/tyk-dashboard-api/users/", "/docs/5.3/": "/tyk-dashboard-api/users/", @@ -9704,6 +10522,7 @@ }, "/tyk-apis/tyk-gateway-api/api-definition-objects/": { "/docs/": "/tyk-gateway-api/api-definition-objects/", + "/docs/5.6/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.5/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.4/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.3/": "/tyk-gateway-api/api-definition-objects/", @@ -9739,6 +10558,7 @@ }, "/tyk-apis/tyk-gateway-api/api-definition-objects/jwt/docs/basic-config-and-security/security/authentication-authorization/json-web-tokens/": { "/docs/": "/api-management/authentication-authorization/", + "/docs/5.6/": "/api-management/authentication-authorization/", "/docs/5.5/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.4/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", "/docs/5.3/": "/basic-config-and-security/security/authentication-authorization/json-web-tokens/", @@ -9768,6 +10588,7 @@ }, "/tyk-apis/tyk-gateway-api/api-definition-objects/versioning-endpoint/": { "/docs/": "/getting-started/key-concepts/versioning/", + "/docs/5.6/": "/getting-started/key-concepts/versioning/", "/docs/5.5/": "/getting-started/key-concepts/versioning/", "/docs/5.4/": "/tyk-apis/tyk-gateway-api/api-definition-objects/versioning-endpoint/", "/docs/5.3/": "/tyk-apis/tyk-gateway-api/api-definition-objects/versioning-endpoint/", @@ -9785,6 +10606,7 @@ }, "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/": { "/docs/": "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/", + "/docs/5.6/": "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/", "/docs/5.5/": "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/", "/docs/5.4/": "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/", "/docs/5.3/": "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc/", @@ -9816,6 +10638,7 @@ }, "/tyk-cloud/account-&-billing/plans/": { "/docs/": "/tyk-cloud/account-billing/plans/", + "/docs/5.6/": "/tyk-cloud/account-billing/plans/", "/docs/5.5/": "/tyk-cloud/account-billing/plans/", "/docs/5.4/": "/tyk-cloud/account-billing/plans/", "/docs/5.3/": "/tyk-cloud/account-billing/plans/", @@ -9839,6 +10662,7 @@ "/docs/3.1/": "/tyk-cloud/account--billing/managing-billing-admins/", "/docs/3-lts/": "/tyk-cloud/account--billing/managing-billing-admins/", "/docs/": "/tyk-cloud/account-billing/managing-billing-admins/", + "/docs/5.6/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.5/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.4/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.3/": "/tyk-cloud/account-billing/managing-billing-admins/", @@ -9850,6 +10674,7 @@ }, "/tyk-cloud/account--billing/plans/": { "/docs/": "/tyk-cloud/account-billing/plans/", + "/docs/5.6/": "/tyk-cloud/account-billing/plans/", "/docs/5.5/": "/tyk-cloud/account-billing/plans/", "/docs/5.4/": "/tyk-cloud/account-billing/plans/", "/docs/5.3/": "/tyk-cloud/account-billing/plans/", @@ -9867,6 +10692,7 @@ }, "/tyk-cloud/account--billing/retirement/": { "/docs/": "/tyk-cloud/account-billing/retirement/", + "/docs/5.6/": "/tyk-cloud/account-billing/retirement/", "/docs/5.5/": "/tyk-cloud/account-billing/retirement/", "/docs/5.4/": "/tyk-cloud/account-billing/retirement/", "/docs/5.3/": "/tyk-cloud/account-billing/retirement/", @@ -9890,6 +10716,7 @@ "/docs/3.1/": "/tyk-cloud/account--billing/upgrade-free-trial/", "/docs/3-lts/": "/tyk-cloud/account--billing/upgrade-free-trial/", "/docs/": "/tyk-cloud/account-billing/upgrade-free-trial/", + "/docs/5.6/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.5/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.4/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.3/": "/tyk-cloud/account-billing/upgrade-free-trial/", @@ -9901,6 +10728,7 @@ }, "/tyk-cloud/account-and-billing/add-payment-method/": { "/docs/": "/tyk-cloud/account-billing/add-payment-method/", + "/docs/5.6/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.5/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.4/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.3/": "/tyk-cloud/account-billing/add-payment-method/", @@ -9918,6 +10746,7 @@ }, "/tyk-cloud/account-and-billing/our-plans/": { "/docs/": "/tyk-cloud/account-billing/plans/", + "/docs/5.6/": "/tyk-cloud/account-billing/plans/", "/docs/5.5/": "/tyk-cloud/account-billing/plans/", "/docs/5.4/": "/tyk-cloud/account-billing/plans/", "/docs/5.3/": "/tyk-cloud/account-billing/plans/", @@ -9935,6 +10764,7 @@ }, "/tyk-cloud/account-and-billing/retirement/": { "/docs/": "/tyk-cloud/account-billing/retirement/", + "/docs/5.6/": "/tyk-cloud/account-billing/retirement/", "/docs/5.5/": "/tyk-cloud/account-billing/retirement/", "/docs/5.4/": "/tyk-cloud/account-billing/retirement/", "/docs/5.3/": "/tyk-cloud/account-billing/retirement/", @@ -9952,6 +10782,7 @@ }, "/tyk-cloud/account-and-billing/upgrade-free-trial/": { "/docs/": "/tyk-cloud/account-billing/upgrade-free-trial/", + "/docs/5.6/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.5/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.4/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.3/": "/tyk-cloud/account-billing/upgrade-free-trial/", @@ -9972,6 +10803,7 @@ }, "/tyk-cloud/account-billing/add-payment-method/": { "/docs/": "/tyk-cloud/account-billing/add-payment-method/", + "/docs/5.6/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.5/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.4/": "/tyk-cloud/account-billing/add-payment-method/", "/docs/5.3/": "/tyk-cloud/account-billing/add-payment-method/", @@ -9983,6 +10815,7 @@ }, "/tyk-cloud/account-billing/managing-billing-admins/": { "/docs/": "/tyk-cloud/account-billing/managing-billing-admins/", + "/docs/5.6/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.5/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.4/": "/tyk-cloud/account-billing/managing-billing-admins/", "/docs/5.3/": "/tyk-cloud/account-billing/managing-billing-admins/", @@ -10000,6 +10833,7 @@ }, "/tyk-cloud/account-billing/plans/": { "/docs/": "/tyk-cloud/account-billing/plans/", + "/docs/5.6/": "/tyk-cloud/account-billing/plans/", "/docs/5.5/": "/tyk-cloud/account-billing/plans/", "/docs/5.4/": "/tyk-cloud/account-billing/plans/", "/docs/5.3/": "/tyk-cloud/account-billing/plans/", @@ -10017,6 +10851,7 @@ }, "/tyk-cloud/account-billing/retirement/": { "/docs/": "/tyk-cloud/account-billing/retirement/", + "/docs/5.6/": "/tyk-cloud/account-billing/retirement/", "/docs/5.5/": "/tyk-cloud/account-billing/retirement/", "/docs/5.4/": "/tyk-cloud/account-billing/retirement/", "/docs/5.3/": "/tyk-cloud/account-billing/retirement/", @@ -10034,6 +10869,7 @@ }, "/tyk-cloud/account-billing/upgrade-free-trial/": { "/docs/": "/tyk-cloud/account-billing/upgrade-free-trial/", + "/docs/5.6/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.5/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.4/": "/tyk-cloud/account-billing/upgrade-free-trial/", "/docs/5.3/": "/tyk-cloud/account-billing/upgrade-free-trial/", @@ -10048,6 +10884,7 @@ }, "/tyk-cloud/configuration-options/": { "/docs/": "/tyk-cloud/environments--deployments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/", @@ -10080,6 +10917,7 @@ }, "/tyk-cloud/create-account/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/create-account/", @@ -10097,6 +10935,7 @@ }, "/tyk-cloud/create-environment/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/setup-environment/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/setup-environment/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/setup-environment/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/setup-environment/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/setup-environment/", @@ -10114,6 +10953,7 @@ }, "/tyk-cloud/environments-&-deployments/": { "/docs/": "/tyk-cloud/environments--deployments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/", @@ -10131,6 +10971,7 @@ }, "/tyk-cloud/environments-&-deployments/hybrid-gateways/": { "/docs/": "/tyk-cloud/environments-deployments/hybrid-gateways/", + "/docs/5.6/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.5/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.4/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.3/": "/tyk-cloud/environments-deployments/hybrid-gateways/", @@ -10142,6 +10983,7 @@ }, "/tyk-cloud/environments-&-deployments/managing-apis/": { "/docs/": "/tyk-cloud/environments--deployments/managing-apis/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-apis/", @@ -10159,6 +11001,7 @@ }, "/tyk-cloud/environments-&-deployments/managing-control-planes/": { "/docs/": "/tyk-cloud/environments--deployments/managing-control-planes/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-control-planes/", @@ -10176,6 +11019,7 @@ }, "/tyk-cloud/environments-&-deployments/managing-environments/": { "/docs/": "/tyk-cloud/environments--deployments/managing-environments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-environments/", @@ -10193,6 +11037,7 @@ }, "/tyk-cloud/environments-&-deployments/managing-gateways/": { "/docs/": "/tyk-cloud/environments--deployments/managing-gateways/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-gateways/", @@ -10210,6 +11055,7 @@ }, "/tyk-cloud/environments-&-deployments/managing-organisations/": { "/docs/": "/tyk-cloud/environments--deployments/managing-organisations/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-organisations/", @@ -10227,6 +11073,7 @@ }, "/tyk-cloud/environments-&-deployments/monitoring/": { "/docs/": "/tyk-cloud/environments--deployments/monitoring-usage/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.5/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.4/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.3/": "/tyk-cloud/environments--deployments/monitoring-usage/", @@ -10244,6 +11091,7 @@ }, "/tyk-cloud/environments--deployments/": { "/docs/": "/tyk-cloud/environments--deployments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/", @@ -10261,6 +11109,7 @@ }, "/tyk-cloud/environments--deployments/hybrid-gateways/": { "/docs/": "/tyk-cloud/environments-deployments/hybrid-gateways/", + "/docs/5.6/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.5/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.4/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.3/": "/tyk-cloud/environments-deployments/hybrid-gateways/", @@ -10278,6 +11127,7 @@ }, "/tyk-cloud/environments--deployments/managing-apis/": { "/docs/": "/tyk-cloud/environments--deployments/managing-apis/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-apis/", @@ -10295,6 +11145,7 @@ }, "/tyk-cloud/environments--deployments/managing-control-planes/": { "/docs/": "/tyk-cloud/environments--deployments/managing-control-planes/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-control-planes/", @@ -10312,6 +11163,7 @@ }, "/tyk-cloud/environments--deployments/managing-environments/": { "/docs/": "/tyk-cloud/environments--deployments/managing-environments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-environments/", @@ -10329,6 +11181,7 @@ }, "/tyk-cloud/environments--deployments/managing-gateways/": { "/docs/": "/tyk-cloud/environments--deployments/managing-gateways/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-gateways/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-gateways/", @@ -10346,6 +11199,7 @@ }, "/tyk-cloud/environments--deployments/managing-organisations/": { "/docs/": "/tyk-cloud/environments--deployments/managing-organisations/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-organisations/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-organisations/", @@ -10363,6 +11217,7 @@ }, "/tyk-cloud/environments--deployments/monitoring-how-it-works/": { "/docs/": "/tyk-cloud/environments--deployments/monitoring-how-it-works/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/monitoring-how-it-works/", "/docs/5.5/": "/tyk-cloud/environments--deployments/monitoring-how-it-works/", "/docs/5.4/": "/tyk-cloud/environments--deployments/monitoring-how-it-works/", "/docs/5.3/": "/tyk-cloud/environments--deployments/monitoring-how-it-works/", @@ -10373,6 +11228,7 @@ }, "/tyk-cloud/environments--deployments/monitoring-usage/": { "/docs/": "/tyk-cloud/environments--deployments/monitoring-usage/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.5/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.4/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.3/": "/tyk-cloud/environments--deployments/monitoring-usage/", @@ -10398,6 +11254,7 @@ }, "/tyk-cloud/environments-deployments/hybrid-gateways-helm/": { "/docs/": "/tyk-cloud/environments-deployments/hybrid-gateways-helm/", + "/docs/5.6/": "/tyk-cloud/environments-deployments/hybrid-gateways-helm/", "/docs/5.5/": "/tyk-cloud/environments-deployments/hybrid-gateways-helm/", "/docs/5.4/": "/tyk-cloud/environments-deployments/hybrid-gateways-helm/", "/docs/5.3/": "/tyk-cloud/environments-deployments/hybrid-gateways-helm/", @@ -10408,6 +11265,7 @@ }, "/tyk-cloud/environments-deployments/hybrid-gateways/": { "/docs/": "/tyk-cloud/environments-deployments/hybrid-gateways/", + "/docs/5.6/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.5/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.4/": "/tyk-cloud/environments-deployments/hybrid-gateways/", "/docs/5.3/": "/tyk-cloud/environments-deployments/hybrid-gateways/", @@ -10425,6 +11283,7 @@ }, "/tyk-cloud/environments-deployments/managing-apis/": { "/docs/": "/tyk-cloud/environments--deployments/managing-apis/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-apis/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-apis/", @@ -10436,6 +11295,7 @@ }, "/tyk-cloud/environments-deployments/managing-control-planes/": { "/docs/": "/tyk-cloud/environments--deployments/managing-control-planes/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-control-planes/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-control-planes/", @@ -10447,6 +11307,7 @@ }, "/tyk-cloud/environments-deployments/managing-environments/": { "/docs/": "/tyk-cloud/environments--deployments/managing-environments/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.5/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.4/": "/tyk-cloud/environments--deployments/managing-environments/", "/docs/5.3/": "/tyk-cloud/environments--deployments/managing-environments/", @@ -10462,6 +11323,7 @@ }, "/tyk-cloud/environments-deployments/monitoring/": { "/docs/": "/tyk-cloud/environments--deployments/monitoring-usage/", + "/docs/5.6/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.5/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.4/": "/tyk-cloud/environments--deployments/monitoring-usage/", "/docs/5.3/": "/tyk-cloud/environments--deployments/monitoring-usage/", @@ -10476,6 +11338,7 @@ }, "/tyk-cloud/first-api/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/first-api/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/first-api/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/first-api/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/first-api/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/first-api/", @@ -10520,6 +11383,7 @@ }, "/tyk-cloud/glossary/": { "/docs/": "/tyk-cloud/troubleshooting--support/glossary/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/glossary/", @@ -10540,6 +11404,7 @@ }, "/tyk-cloud/reference-docs/user-roles/": { "/docs/": "/tyk-cloud/teams--users/user-roles/", + "/docs/5.6/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.5/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.4/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.3/": "/tyk-cloud/teams--users/user-roles/", @@ -10560,6 +11425,7 @@ }, "/tyk-cloud/setup-org/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/setup-org/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/setup-org/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/setup-org/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/setup-org/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/setup-org/", @@ -10577,6 +11443,7 @@ }, "/tyk-cloud/setup-team/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/setup-team/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/setup-team/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/setup-team/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/setup-team/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/setup-team/", @@ -10594,6 +11461,7 @@ }, "/tyk-cloud/teams-&-users/": { "/docs/": "/tyk-cloud/teams--users/", + "/docs/5.6/": "/tyk-cloud/teams--users/", "/docs/5.5/": "/tyk-cloud/teams--users/", "/docs/5.4/": "/tyk-cloud/teams--users/", "/docs/5.3/": "/tyk-cloud/teams--users/", @@ -10611,6 +11479,7 @@ }, "/tyk-cloud/teams-&-users/managing-teams/": { "/docs/": "/tyk-cloud/teams--users/managing-teams/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-teams/", @@ -10628,6 +11497,7 @@ }, "/tyk-cloud/teams-&-users/managing-users/": { "/docs/": "/tyk-cloud/teams--users/managing-users/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-users/", @@ -10645,6 +11515,7 @@ }, "/tyk-cloud/teams-&-users/user-roles/": { "/docs/": "/tyk-cloud/teams--users/user-roles/", + "/docs/5.6/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.5/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.4/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.3/": "/tyk-cloud/teams--users/user-roles/", @@ -10662,6 +11533,7 @@ }, "/tyk-cloud/teams--users/": { "/docs/": "/tyk-cloud/teams--users/", + "/docs/5.6/": "/tyk-cloud/teams--users/", "/docs/5.5/": "/tyk-cloud/teams--users/", "/docs/5.4/": "/tyk-cloud/teams--users/", "/docs/5.3/": "/tyk-cloud/teams--users/", @@ -10679,6 +11551,7 @@ }, "/tyk-cloud/teams--users/managing-teams/": { "/docs/": "/tyk-cloud/teams--users/managing-teams/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-teams/", @@ -10696,6 +11569,7 @@ }, "/tyk-cloud/teams--users/managing-users/": { "/docs/": "/tyk-cloud/teams--users/managing-users/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-users/", @@ -10713,6 +11587,7 @@ }, "/tyk-cloud/teams--users/single-sign-on/": { "/docs/": "/tyk-cloud/teams--users/single-sign-on/", + "/docs/5.6/": "/tyk-cloud/teams--users/single-sign-on/", "/docs/5.5/": "/tyk-cloud/teams--users/single-sign-on/", "/docs/5.4/": "/tyk-cloud/teams--users/single-sign-on/", "/docs/5.3/": "/tyk-cloud/teams--users/single-sign-on/", @@ -10722,6 +11597,7 @@ }, "/tyk-cloud/teams--users/user-roles/": { "/docs/": "/tyk-cloud/teams--users/user-roles/", + "/docs/5.6/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.5/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.4/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.3/": "/tyk-cloud/teams--users/user-roles/", @@ -10739,6 +11615,7 @@ }, "/tyk-cloud/teams-users/": { "/docs/": "/tyk-cloud/teams--users/", + "/docs/5.6/": "/tyk-cloud/teams--users/", "/docs/5.5/": "/tyk-cloud/teams--users/", "/docs/5.4/": "/tyk-cloud/teams--users/", "/docs/5.3/": "/tyk-cloud/teams--users/", @@ -10752,6 +11629,7 @@ }, "/tyk-cloud/teams-users/managing-teams/": { "/docs/": "/tyk-cloud/teams--users/managing-teams/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-teams/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-teams/", @@ -10763,6 +11641,7 @@ }, "/tyk-cloud/teams-users/managing-users/": { "/docs/": "/tyk-cloud/teams--users/managing-users/", + "/docs/5.6/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.5/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.4/": "/tyk-cloud/teams--users/managing-users/", "/docs/5.3/": "/tyk-cloud/teams--users/managing-users/", @@ -10777,6 +11656,7 @@ }, "/tyk-cloud/teams-users/user-roles/": { "/docs/": "/tyk-cloud/teams--users/user-roles/", + "/docs/5.6/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.5/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.4/": "/tyk-cloud/teams--users/user-roles/", "/docs/5.3/": "/tyk-cloud/teams--users/user-roles/", @@ -10788,6 +11668,7 @@ }, "/tyk-cloud/test-api/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/test-api/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/test-api/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/test-api/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/test-api/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/test-api/", @@ -10805,6 +11686,7 @@ }, "/tyk-cloud/troubleshooting-&-support/": { "/docs/": "/tyk-cloud/troubleshooting--support/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/", @@ -10822,6 +11704,7 @@ }, "/tyk-cloud/troubleshooting-&-support/faqs/": { "/docs/": "/tyk-cloud/troubleshooting--support/faqs/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/faqs/", @@ -10839,6 +11722,7 @@ }, "/tyk-cloud/troubleshooting-&-support/glossary/": { "/docs/": "/tyk-cloud/troubleshooting--support/glossary/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/glossary/", @@ -10856,6 +11740,7 @@ }, "/tyk-cloud/troubleshooting--support/": { "/docs/": "/tyk-cloud/troubleshooting--support/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/", @@ -10873,6 +11758,7 @@ }, "/tyk-cloud/troubleshooting--support/faqs/": { "/docs/": "/tyk-cloud/troubleshooting--support/faqs/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/faqs/", @@ -10890,6 +11776,7 @@ }, "/tyk-cloud/troubleshooting--support/glossary/": { "/docs/": "/tyk-cloud/troubleshooting--support/glossary/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/glossary/", @@ -10907,6 +11794,7 @@ }, "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/": { "/docs/": "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/tyk-cloud-mdcb-supported-versions/", @@ -10916,6 +11804,7 @@ }, "/tyk-cloud/troubleshooting-support/": { "/docs/": "/tyk-cloud/troubleshooting--support/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/", @@ -10927,6 +11816,7 @@ }, "/tyk-cloud/troubleshooting-support/faqs/": { "/docs/": "/tyk-cloud/troubleshooting--support/faqs/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/faqs/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/faqs/", @@ -10938,6 +11828,7 @@ }, "/tyk-cloud/troubleshooting-support/glossary/": { "/docs/": "/tyk-cloud/troubleshooting--support/glossary/", + "/docs/5.6/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.5/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.4/": "/tyk-cloud/troubleshooting--support/glossary/", "/docs/5.3/": "/tyk-cloud/troubleshooting--support/glossary/", @@ -10955,6 +11846,7 @@ }, "/tyk-cloud/view-analytics/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/view-analytics/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/view-analytics/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/view-analytics/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/view-analytics/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/view-analytics/", @@ -10975,6 +11867,7 @@ }, "/tyk-cloud/what-we-covered/": { "/docs/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", + "/docs/5.6/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", "/docs/5.5/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", "/docs/5.4/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", "/docs/5.3/": "/tyk-cloud/getting-started-tyk-cloud/to-conclude/", @@ -10992,10 +11885,12 @@ }, "/tyk-components/": { "/docs/": "/tyk-components/", + "/docs/5.6/": "/tyk-components/", "/docs/nightly/": "/tyk-components/" }, "/tyk-configuration-reference/": { "/docs/": "/tyk-oss-gateway/configuration/", + "/docs/5.6/": "/tyk-oss-gateway/configuration/", "/docs/5.5/": "/tyk-oss-gateway/configuration/", "/docs/5.4/": "/tyk-oss-gateway/configuration/", "/docs/5.3/": "/tyk-oss-gateway/configuration/", @@ -11013,6 +11908,7 @@ }, "/tyk-configuration-reference/environment-variables/": { "/docs/": "/tyk-environment-variables/", + "/docs/5.6/": "/tyk-environment-variables/", "/docs/5.5/": "/tyk-environment-variables/", "/docs/5.4/": "/tyk-environment-variables/", "/docs/5.3/": "/tyk-environment-variables/", @@ -11033,6 +11929,7 @@ }, "/tyk-configuration-reference/import-apis/": { "/docs/": "/getting-started/import-apis/", + "/docs/5.6/": "/getting-started/import-apis/", "/docs/5.5/": "/getting-started/import-apis/", "/docs/5.4/": "/getting-started/import-apis/", "/docs/5.3/": "/getting-started/import-apis/", @@ -11053,6 +11950,7 @@ }, "/tyk-configuration-reference/mdcb-configuration-options/": { "/docs/": "/tyk-multi-data-centre/", + "/docs/5.6/": "/tyk-multi-data-centre/", "/docs/5.5/": "/tyk-multi-data-centre/", "/docs/5.4/": "/tyk-multi-data-centre/", "/docs/5.3/": "/tyk-multi-data-centre/", @@ -11070,6 +11968,7 @@ }, "/tyk-configuration-reference/outbound-email-configuration/": { "/docs/": "/configure/outbound-email-configuration/", + "/docs/5.6/": "/configure/outbound-email-configuration/", "/docs/5.5/": "/configure/outbound-email-configuration/", "/docs/5.4/": "/configure/outbound-email-configuration/", "/docs/5.3/": "/configure/outbound-email-configuration/", @@ -11087,6 +11986,7 @@ }, "/tyk-configuration-reference/redis-cluster-sentinel/": { "/docs/": "/tyk-stack/tyk-gateway/configuration/redis-cluster/", + "/docs/5.6/": "/tyk-stack/tyk-gateway/configuration/redis-cluster/", "/docs/5.5/": "/tyk-stack/tyk-gateway/configuration/redis-cluster/", "/docs/5.4/": "/tyk-stack/tyk-gateway/configuration/redis-cluster/", "/docs/5.3/": "/tyk-stack/tyk-gateway/configuration/redis-cluster/", @@ -11109,6 +12009,7 @@ }, "/tyk-configuration-reference/tyk-dashboard-configuration-options/": { "/docs/": "/tyk-dashboard/configuration/", + "/docs/5.6/": "/tyk-dashboard/configuration/", "/docs/5.5/": "/tyk-dashboard/configuration/", "/docs/5.4/": "/tyk-dashboard/configuration/", "/docs/5.3/": "/tyk-dashboard/configuration/", @@ -11126,6 +12027,7 @@ }, "/tyk-configuration-reference/tyk-gateway-configuration-options/": { "/docs/": "/tyk-oss-gateway/configuration/", + "/docs/5.6/": "/tyk-oss-gateway/configuration/", "/docs/5.5/": "/tyk-oss-gateway/configuration/", "/docs/5.4/": "/tyk-oss-gateway/configuration/", "/docs/5.3/": "/tyk-oss-gateway/configuration/", @@ -11143,6 +12045,7 @@ }, "/tyk-configuration-reference/tyk-gateway-configuration-options/securing-system-payloads/": { "/docs/": "/tyk-configuration-reference/securing-system-payloads/", + "/docs/5.6/": "/tyk-configuration-reference/securing-system-payloads/", "/docs/5.5/": "/tyk-configuration-reference/securing-system-payloads/", "/docs/5.4/": "/tyk-configuration-reference/securing-system-payloads/", "/docs/5.3/": "/tyk-configuration-reference/securing-system-payloads/", @@ -11163,6 +12066,7 @@ }, "/tyk-configuration-reference/tyk-pump-configuration/": { "/docs/": "/tyk-pump/configuration/", + "/docs/5.6/": "/tyk-pump/configuration/", "/docs/5.5/": "/tyk-pump/configuration/", "/docs/5.4/": "/tyk-pump/configuration/", "/docs/5.3/": "/tyk-pump/configuration/", @@ -11183,6 +12087,7 @@ }, "/tyk-configuration-reference/tyk-pump-configuration/graphpump/": { "/docs/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", + "/docs/5.6/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.5/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.4/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.3/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", @@ -11200,6 +12105,7 @@ }, "/tyk-configuration-reference/tyk-pump-configuration/tyk-pump-configuration/": { "/docs/": "/tyk-pump/", + "/docs/5.6/": "/tyk-pump/", "/docs/5.5/": "/tyk-pump/", "/docs/5.4/": "/tyk-pump/", "/docs/5.3/": "/tyk-pump/", @@ -11217,6 +12123,7 @@ }, "/tyk-configuration-reference/tyk-pump-dashboard-config/": { "/docs/": "/tyk-pump/tyk-pump-configuration/tyk-pump-dashboard-config/", + "/docs/5.6/": "/tyk-pump/tyk-pump-configuration/tyk-pump-dashboard-config/", "/docs/5.5/": "/tyk-pump/tyk-pump-configuration/tyk-pump-dashboard-config/", "/docs/5.4/": "/tyk-pump/tyk-pump-configuration/tyk-pump-dashboard-config/", "/docs/5.3/": "/tyk-pump/tyk-pump-configuration/tyk-pump-dashboard-config/", @@ -11234,6 +12141,7 @@ }, "/tyk-configuration-reference/tyk-pump-environment-variables/": { "/docs/": "/tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables/", + "/docs/5.6/": "/tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables/", "/docs/5.5/": "/tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables/", "/docs/5.4/": "/tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables/", "/docs/5.3/": "/tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables/", @@ -11272,6 +12180,7 @@ }, "/tyk-dashboard-api/api-tokens/": { "/docs/": "/tyk-apis/tyk-dashboard-api/api-keys/", + "/docs/5.6/": "/tyk-apis/tyk-dashboard-api/api-keys/", "/docs/5.5/": "/tyk-apis/tyk-dashboard-api/api-keys/", "/docs/5.4/": "/tyk-apis/tyk-dashboard-api/api-keys/", "/docs/5.3/": "/tyk-apis/tyk-dashboard-api/api-keys/", @@ -11289,6 +12198,7 @@ }, "/tyk-dashboard-api/portal-developers/": { "/docs/": "/tyk-apis/tyk-portal-api/portal-developers/", + "/docs/5.6/": "/tyk-apis/tyk-portal-api/portal-developers/", "/docs/5.5/": "/tyk-apis/tyk-portal-api/portal-developers/", "/docs/5.4/": "/tyk-apis/tyk-portal-api/portal-developers/", "/docs/5.3/": "/tyk-apis/tyk-portal-api/portal-developers/", @@ -11303,6 +12213,7 @@ }, "/tyk-dashboard-oas-api/": { "/docs/": "/tyk-dashboard-api/", + "/docs/5.6/": "/tyk-dashboard-api/", "/docs/5.5/": "/tyk-dashboard-api/", "/docs/5.4/": "/tyk-dashboard-api/", "/docs/5.3/": "/tyk-dashboard-api/", @@ -11317,6 +12228,7 @@ }, "/tyk-dashboard-v1-0/api-management/": { "/docs/": "/tyk-gateway-api/api-definition-objects/", + "/docs/5.6/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.5/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.4/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.3/": "/tyk-gateway-api/api-definition-objects/", @@ -11328,6 +12240,7 @@ }, "/tyk-dashboard-v1-0/configuration/": { "/docs/": "/tyk-dashboard/configuration/", + "/docs/5.6/": "/tyk-dashboard/configuration/", "/docs/5.5/": "/tyk-dashboard/configuration/", "/docs/5.4/": "/tyk-dashboard/configuration/", "/docs/5.3/": "/tyk-dashboard/configuration/", @@ -11339,6 +12252,7 @@ }, "/tyk-dashboard-v1-0/dashboard-api/api-definitions/": { "/docs/": "/tyk-dashboard-api/", + "/docs/5.6/": "/tyk-dashboard-api/", "/docs/5.5/": "/tyk-dashboard-api/", "/docs/5.4/": "/tyk-dashboard-api/", "/docs/5.3/": "/tyk-dashboard-api/", @@ -11350,6 +12264,7 @@ }, "/tyk-dashboard-v1-0/tutorials/set-up-your-portal/": { "/docs/": "/getting-started/tutorials/publish-api/", + "/docs/5.6/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", "/docs/5.4/": "/getting-started/tutorials/publish-api/", "/docs/5.3/": "/getting-started/tutorials/publish-api/", @@ -11367,6 +12282,7 @@ }, "/tyk-dashboard-v1-0/tyk-dashboard-configuration/": { "/docs/": "/tyk-dashboard/configuration/", + "/docs/5.6/": "/tyk-dashboard/configuration/", "/docs/5.5/": "/tyk-dashboard/configuration/", "/docs/5.4/": "/tyk-dashboard/configuration/", "/docs/5.3/": "/tyk-dashboard/configuration/", @@ -11384,6 +12300,7 @@ }, "/tyk-dashboard/database-options/": { "/docs/": "/tyk-dashboard/database-options/", + "/docs/5.6/": "/tyk-dashboard/database-options/", "/docs/5.5/": "/tyk-dashboard/database-options/", "/docs/5.4/": "/tyk-dashboard/database-options/", "/docs/5.3/": "/tyk-dashboard/database-options/", @@ -11413,6 +12330,7 @@ }, "/tyk-developer-portal/curity-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", @@ -11433,6 +12351,7 @@ }, "/tyk-developer-portal/customise/changing-the-navigation/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", @@ -11450,6 +12369,7 @@ }, "/tyk-developer-portal/customise/custom-developer-po.../": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", @@ -11461,6 +12381,7 @@ }, "/tyk-developer-portal/customise/custom-developer-portal/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", @@ -11478,6 +12399,7 @@ }, "/tyk-developer-portal/customise/customise-documentation/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", @@ -11495,6 +12417,7 @@ }, "/tyk-developer-portal/customise/customise-with-temp.../": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", @@ -11506,6 +12429,7 @@ }, "/tyk-developer-portal/customise/customise-with-templates/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", @@ -11523,6 +12447,7 @@ }, "/tyk-developer-portal/customise/customising-using-dashboard/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", @@ -11543,6 +12468,7 @@ }, "/tyk-developer-portal/customise/customize-with-jquery/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", @@ -11560,6 +12486,7 @@ }, "/tyk-developer-portal/customise/developer-meta-data/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", @@ -11577,6 +12504,7 @@ }, "/tyk-developer-portal/developer-profiles/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", @@ -11594,6 +12522,7 @@ }, "/tyk-developer-portal/dynamic-client-registration/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", @@ -11608,6 +12537,7 @@ }, "/tyk-developer-portal/gluu-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", @@ -11625,6 +12555,7 @@ }, "/tyk-developer-portal/graphql/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/graphql/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/graphql/", @@ -11642,6 +12573,7 @@ }, "/tyk-developer-portal/key-requests/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", @@ -11659,6 +12591,7 @@ }, "/tyk-developer-portal/keycloak-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", @@ -11676,6 +12609,7 @@ }, "/tyk-developer-portal/monetise/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/monetise/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/monetise/", @@ -11693,6 +12627,7 @@ }, "/tyk-developer-portal/okta-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", @@ -11710,6 +12645,7 @@ }, "/tyk-developer-portal/portal-concepts/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", @@ -11727,6 +12663,7 @@ }, "/tyk-developer-portal/portal-events-notifications/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", @@ -11744,6 +12681,7 @@ }, "/tyk-developer-portal/portal-oauth-clients/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", @@ -11764,6 +12702,7 @@ }, "/tyk-developer-portal/tutorials/": { "/docs/": "/getting-started/tutorials/publish-api/", + "/docs/5.6/": "/getting-started/tutorials/publish-api/", "/docs/5.5/": "/getting-started/tutorials/publish-api/", "/docs/5.4/": "/getting-started/tutorials/publish-api/", "/docs/5.3/": "/getting-started/tutorials/publish-api/", @@ -11781,6 +12720,7 @@ }, "/tyk-developer-portal/tyk-enterprise-developer-portal/": { "/docs/": "/tyk-developer-portal/tyk-enterprise-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-enterprise-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-enterprise-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-enterprise-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-enterprise-developer-portal/", @@ -11795,6 +12735,7 @@ }, "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/": { "/docs/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/", @@ -11809,6 +12750,7 @@ }, "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/": { "/docs/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/", + "/docs/5.6/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/", "/docs/5.5/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/", "/docs/5.4/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/", "/docs/5.3/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/access-api-product/", @@ -11823,6 +12765,7 @@ }, "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/": { "/docs/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/register-portal/", @@ -11837,6 +12780,7 @@ }, "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/": { "/docs/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/", + "/docs/5.6/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/", "/docs/5.5/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/", "/docs/5.4/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/", "/docs/5.3/": "/tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password/", @@ -11851,6 +12795,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/", @@ -11865,6 +12810,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/curity-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/curity-dcr/", @@ -11882,6 +12828,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/": { "/docs/": "/tyk-developer-portal/customise/", + "/docs/5.6/": "/tyk-developer-portal/customise/", "/docs/5.5/": "/tyk-developer-portal/customise/", "/docs/5.4/": "/tyk-developer-portal/customise/", "/docs/5.3/": "/tyk-developer-portal/customise/", @@ -11896,6 +12843,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/changing-the-navigation/", @@ -11913,6 +12861,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/custom-developer-portal/", @@ -11930,6 +12879,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customise-documentation/", @@ -11947,6 +12897,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customising-using-dashboard/", @@ -11964,6 +12915,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/customize-with-jquery/", @@ -11981,6 +12933,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/customise/developer-meta-data/", @@ -11998,6 +12951,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/developer-profiles/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/developer-profiles/", @@ -12015,6 +12969,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", @@ -12032,6 +12987,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/gluu-dcr/", @@ -12049,6 +13005,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/graphql/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/graphql/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/graphql/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/graphql/", @@ -12066,6 +13023,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/key-requests/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/key-requests/", @@ -12080,6 +13038,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/keycloak-dcr/", @@ -12097,6 +13056,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/monetise/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/monetise/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/monetise/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/monetise/", @@ -12114,6 +13074,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/okta-dcr/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/okta-dcr/", @@ -12131,6 +13092,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/portal-concepts/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-concepts/", @@ -12148,6 +13110,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-events-notifications/", @@ -12165,6 +13128,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", @@ -12185,6 +13149,7 @@ }, "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", @@ -12211,6 +13176,7 @@ }, "/tyk-gateway-oas-api/": { "/docs/": "/tyk-gateway-api/", + "/docs/5.6/": "/tyk-gateway-api/", "/docs/5.5/": "/tyk-gateway-api/", "/docs/5.4/": "/tyk-gateway-api/", "/docs/5.3/": "/tyk-gateway-api/", @@ -12234,6 +13200,7 @@ }, "/tyk-mdcb-api/": { "/docs/": "/tyk-mdcb-api/", + "/docs/5.6/": "/tyk-mdcb-api/", "/docs/5.5/": "/tyk-mdcb-api/", "/docs/5.4/": "/tyk-mdcb-api/", "/docs/nightly/": "/tyk-mdcb-api/" @@ -12243,6 +13210,7 @@ }, "/tyk-multi-data-centre/mdcb-components/": { "/docs/": "/tyk-multi-data-centre/mdcb-components/", + "/docs/5.6/": "/tyk-multi-data-centre/mdcb-components/", "/docs/5.5/": "/tyk-multi-data-centre/mdcb-components/", "/docs/5.4/": "/tyk-multi-data-centre/mdcb-components/", "/docs/5.3/": "/tyk-multi-data-centre/mdcb-components/", @@ -12257,6 +13225,7 @@ }, "/tyk-multi-data-centre/mdcb-example-minimising-latency/": { "/docs/": "/tyk-multi-data-centre/mdcb-example-minimising-latency/", + "/docs/5.6/": "/tyk-multi-data-centre/mdcb-example-minimising-latency/", "/docs/5.5/": "/tyk-multi-data-centre/mdcb-example-minimising-latency/", "/docs/5.4/": "/tyk-multi-data-centre/mdcb-example-minimising-latency/", "/docs/5.3/": "/tyk-multi-data-centre/mdcb-example-minimising-latency/", @@ -12268,6 +13237,7 @@ }, "/tyk-multi-data-centre/setup-controller-data-centre/": { "/docs/": "/tyk-multi-data-centre/setup-controller-data-centre/", + "/docs/5.6/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.5/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.4/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.3/": "/tyk-multi-data-centre/setup-controller-data-centre/", @@ -12285,6 +13255,7 @@ }, "/tyk-multi-data-centre/setup-master-data-centre/": { "/docs/": "/tyk-multi-data-centre/setup-controller-data-centre/", + "/docs/5.6/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.5/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.4/": "/tyk-multi-data-centre/setup-controller-data-centre/", "/docs/5.3/": "/tyk-multi-data-centre/setup-controller-data-centre/", @@ -12301,6 +13272,7 @@ }, "/tyk-multi-data-centre/setup-slave-data-centres/": { "/docs/": "/tyk-multi-data-centre/setup-worker-data-centres/", + "/docs/5.6/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.5/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.4/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.3/": "/tyk-multi-data-centre/setup-worker-data-centres/", @@ -12317,6 +13289,7 @@ }, "/tyk-multi-data-centre/setup-worker-data-centres/": { "/docs/": "/tyk-multi-data-centre/setup-worker-data-centres/", + "/docs/5.6/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.5/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.4/": "/tyk-multi-data-centre/setup-worker-data-centres/", "/docs/5.3/": "/tyk-multi-data-centre/setup-worker-data-centres/", @@ -12334,6 +13307,7 @@ }, "/tyk-oas/": { "/docs/": "/tyk-apis/", + "/docs/5.6/": "/tyk-apis/", "/docs/5.5/": "/tyk-apis/", "/docs/5.4/": "/tyk-apis/", "/docs/5.3/": "/tyk-apis/", @@ -12374,6 +13348,7 @@ }, "/tyk-on-premises/aws/": { "/docs/": "/tyk-on-premises/installation/on-aws/", + "/docs/5.6/": "/tyk-on-premises/installation/on-aws/", "/docs/5.5/": "/tyk-on-premises/installation/on-aws/", "/docs/5.4/": "/tyk-on-premises/installation/on-aws/", "/docs/5.3/": "/tyk-on-premises/installation/on-aws/", @@ -12409,6 +13384,7 @@ }, "/tyk-on-premises/docker/docker-pro-demo/": { "/docs/": "/tyk-on-premises/docker/docker-pro-demo/", + "/docs/5.6/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.5/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.4/": "/tyk-on-premises/docker/docker-pro-demo/", "/docs/5.3/": "/tyk-on-premises/docker/docker-pro-demo/", @@ -12429,6 +13405,7 @@ }, "/tyk-on-premises/getting-started/": { "/docs/": "/tyk-on-premises/", + "/docs/5.6/": "/tyk-on-premises/", "/docs/5.5/": "/tyk-on-premises/", "/docs/5.4/": "/tyk-on-premises/", "/docs/5.3/": "/tyk-on-premises/", @@ -12446,6 +13423,7 @@ }, "/tyk-on-premises/google-cloud/": { "/docs/": "/tyk-on-premises/google-cloud/", + "/docs/5.6/": "/tyk-on-premises/google-cloud/", "/docs/5.5/": "/tyk-on-premises/google-cloud/", "/docs/5.4/": "/tyk-on-premises/google-cloud/", "/docs/5.3/": "/tyk-on-premises/google-cloud/", @@ -12455,6 +13433,7 @@ }, "/tyk-on-premises/heroku/": { "/docs/": "/tyk-on-premises/installation/on-heroku/", + "/docs/5.6/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.5/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.4/": "/tyk-on-premises/installation/on-heroku/", "/docs/5.3/": "/tyk-on-premises/installation/on-heroku/", @@ -12490,6 +13469,7 @@ }, "/tyk-on-premises/on-ubuntu/": { "/docs/": "/tyk-oss/ce-debian-ubuntu/", + "/docs/5.6/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.5/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.4/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.3/": "/tyk-oss/ce-debian-ubuntu/", @@ -12504,6 +13484,7 @@ }, "/tyk-operator/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", "/docs/5.3/": "/tyk-operator/", @@ -12528,6 +13509,7 @@ }, "/tyk-oss/": { "/docs/": "/tyk-oss-gateway/", + "/docs/5.6/": "/tyk-oss-gateway/", "/docs/5.5/": "/tyk-oss-gateway/", "/docs/5.4/": "/tyk-oss-gateway/", "/docs/5.3/": "/tyk-oss-gateway/", @@ -12542,6 +13524,7 @@ }, "/tyk-oss/ce-centos/": { "/docs/": "/tyk-oss/ce-redhat-rhel-centos/", + "/docs/5.6/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.5/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.4/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.3/": "/tyk-oss/ce-redhat-rhel-centos/", @@ -12568,6 +13551,7 @@ }, "/tyk-oss/ce-helm-chart-new/": { "/docs/": "/tyk-oss/ce-helm-chart-new/", + "/docs/5.6/": "/tyk-oss/ce-helm-chart-new/", "/docs/5.5/": "/tyk-oss/ce-helm-chart-new/", "/docs/5.4/": "/tyk-oss/ce-helm-chart-new/", "/docs/5.3/": "/tyk-oss/ce-helm-chart-new/", @@ -12581,6 +13565,7 @@ }, "/tyk-oss/ce-kubernetes-ingress/": { "/docs/": "/tyk-on-prem/kubernetes-ingress/", + "/docs/5.6/": "/tyk-on-prem/kubernetes-ingress/", "/docs/5.5/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/5.4/": "/tyk-oss/ce-kubernetes-ingress/", "/docs/5.3/": "/tyk-oss/ce-kubernetes-ingress/", @@ -12604,6 +13589,7 @@ }, "/tyk-oss/ce-redhat/": { "/docs/": "/tyk-oss/ce-redhat-rhel-centos/", + "/docs/5.6/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.5/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.4/": "/tyk-oss/ce-redhat-rhel-centos/", "/docs/5.3/": "/tyk-oss/ce-redhat-rhel-centos/", @@ -12621,6 +13607,7 @@ }, "/tyk-oss/ce-ubuntu/": { "/docs/": "/tyk-oss/ce-debian-ubuntu/", + "/docs/5.6/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.5/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.4/": "/tyk-oss/ce-debian-ubuntu/", "/docs/5.3/": "/tyk-oss/ce-debian-ubuntu/", @@ -12638,6 +13625,7 @@ }, "/tyk-overview/": { "/docs/": "/tyk-overview/", + "/docs/5.6/": "/tyk-overview/", "/docs/nightly/": "/tyk-overview/" }, "/tyk-portal-api/": { @@ -12657,6 +13645,7 @@ }, "/tyk-rest-api/": { "/docs/": "/tyk-gateway-api/", + "/docs/5.6/": "/tyk-gateway-api/", "/docs/5.5/": "/tyk-gateway-api/", "/docs/5.4/": "/tyk-gateway-api/", "/docs/5.3/": "/tyk-gateway-api/", @@ -12674,6 +13663,7 @@ }, "/tyk-rest-api/api-definition-object-details/": { "/docs/": "/tyk-gateway-api/api-definition-objects/", + "/docs/5.6/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.5/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.4/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.3/": "/tyk-gateway-api/api-definition-objects/", @@ -12685,6 +13675,7 @@ }, "/tyk-rest-api/api-definition-objects/": { "/docs/": "/tyk-gateway-api/api-definition-objects/", + "/docs/5.6/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.5/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.4/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.3/": "/tyk-gateway-api/api-definition-objects/", @@ -12696,6 +13687,7 @@ }, "/tyk-rest-api/api-definition-objects/custom-analytics/": { "/docs/": "/tyk-apis/tyk-gateway-api/api-definition-objects/custom-analytics/", + "/docs/5.6/": "/tyk-apis/tyk-gateway-api/api-definition-objects/custom-analytics/", "/docs/5.5/": "/tyk-apis/tyk-gateway-api/api-definition-objects/custom-analytics/", "/docs/5.4/": "/tyk-apis/tyk-gateway-api/api-definition-objects/custom-analytics/", "/docs/5.3/": "/tyk-apis/tyk-gateway-api/api-definition-objects/custom-analytics/", @@ -12713,6 +13705,7 @@ }, "/tyk-rest-api/api-management/": { "/docs/": "/tyk-gateway-api/api-definition-objects/", + "/docs/5.6/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.5/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.4/": "/tyk-gateway-api/api-definition-objects/", "/docs/5.3/": "/tyk-gateway-api/api-definition-objects/", @@ -12724,6 +13717,7 @@ }, "/tyk-rest-api/health-checking/": { "/docs/": "/planning-for-production/ensure-high-availability/health-check/", + "/docs/5.6/": "/planning-for-production/ensure-high-availability/health-check/", "/docs/5.5/": "/planning-for-production/ensure-high-availability/health-check/", "/docs/5.4/": "/planning-for-production/ensure-high-availability/health-check/", "/docs/5.3/": "/planning-for-production/ensure-high-availability/health-check/", @@ -12735,6 +13729,7 @@ }, "/tyk-rest-api/hot-reload/": { "/docs/": "/tyk-configuration-reference/hot-restart-tyk-gateway-process/", + "/docs/5.6/": "/tyk-configuration-reference/hot-restart-tyk-gateway-process/", "/docs/5.5/": "/tyk-configuration-reference/hot-restart-tyk-gateway-process/", "/docs/5.4/": "/tyk-configuration-reference/hot-restart-tyk-gateway-process/", "/docs/5.3/": "/tyk-configuration-reference/hot-restart-tyk-gateway-process/", @@ -12747,6 +13742,7 @@ }, "/tyk-self-managed/istio/": { "/docs/": "/tyk-self-managed/install/", + "/docs/5.6/": "/tyk-self-managed/install/", "/docs/5.5/": "/tyk-self-managed/install/", "/docs/5.4/": "/tyk-self-managed/install/", "/docs/5.3/": "/tyk-self-managed/install/", @@ -12761,6 +13757,7 @@ }, "/tyk-self-managed/tyk-helm-chart-single-dc/": { "/docs/": "/product-stack/tyk-charts/tyk-stack-chart/", + "/docs/5.6/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.5/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.4/": "/product-stack/tyk-charts/tyk-stack-chart/", "/docs/5.3/": "/product-stack/tyk-charts/tyk-stack-chart/", @@ -12780,6 +13777,7 @@ }, "/tyk-stack/tyk-developer-portal/customise/customise-with-templates/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/tyk-portal-classic/customise/customise-with-templates/", @@ -12791,6 +13789,7 @@ }, "/tyk-stack/tyk-developer-portal/dynamic-client-registration/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration/", @@ -12805,6 +13804,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/api-access/", @@ -12819,6 +13819,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/approve-requests/", @@ -12833,6 +13834,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys/", @@ -12840,6 +13842,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration/", @@ -12854,6 +13857,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/customise-enterprise-portal/", @@ -12868,6 +13872,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/content-manager-workflow/", @@ -12882,6 +13887,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/create-new-page-template/", @@ -12896,6 +13902,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/developer-workflow/", @@ -12910,6 +13917,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/edit-manage-page-content/", @@ -12930,6 +13938,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/full-customisation/", @@ -12947,11 +13956,13 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/templates/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/templates/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/templates/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/templates/", "/docs/nightly/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/templates/" }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/quick-customisation/", @@ -12966,6 +13977,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/enterprise-portal-concepts/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/enterprise-portal-concepts/", @@ -12980,6 +13992,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/create-api-product-and-plan/", @@ -12997,6 +14010,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/getting-started-with-enterprise-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/getting-started-with-enterprise-portal/", @@ -13014,6 +14028,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/manage-get-started-guides-for-api-products/", @@ -13025,6 +14040,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/publish-api-products-and-plans/", @@ -13039,6 +14055,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/setup-email-notifications/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/getting-started/setup-email-notifications/", @@ -13050,6 +14067,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/getting-started-with-enterprise-portal/with-tyk-self-managed-as-provider/", @@ -13064,6 +14082,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", @@ -13078,6 +14097,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/bootstrapping-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/bootstrapping-portal/", @@ -13088,6 +14108,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/configuration/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/configuration/", @@ -13098,6 +14119,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-using-helm/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm/", @@ -13108,6 +14130,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-with-mysql/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", @@ -13118,6 +14141,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-with-postgresql/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", @@ -13128,6 +14152,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal-with-sqlite/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose/", @@ -13138,6 +14163,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/install-tyk-enterprise-portal/launching-portal/launching-portal/": { "/docs/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", + "/docs/5.6/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.5/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.4/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", "/docs/5.3/": "/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/", @@ -13148,6 +14174,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/add-organisations/", @@ -13162,6 +14189,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/approve-self-registering-requests/", @@ -13179,6 +14207,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/invite-codes/", @@ -13193,6 +14222,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumer-organisations/", @@ -13204,6 +14234,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-consumers/", @@ -13218,6 +14249,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-api-users/", @@ -13232,6 +14264,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/manage-catalogues/", @@ -13246,6 +14279,7 @@ }, "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/": { "/docs/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/", + "/docs/5.6/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/", "/docs/5.5/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/", "/docs/5.4/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/", "/docs/5.3/": "/tyk-stack/tyk-developer-portal/enterprise-developer-portal/managing-access/managing-access/", @@ -13260,6 +14294,7 @@ }, "/tyk-stack/tyk-developer-portal/key-requests/": { "/docs/": "/tyk-apis/tyk-portal-api/portal-keys/", + "/docs/5.6/": "/tyk-apis/tyk-portal-api/portal-keys/", "/docs/5.5/": "/tyk-apis/tyk-portal-api/portal-keys/", "/docs/5.4/": "/tyk-apis/tyk-portal-api/portal-keys/", "/docs/5.3/": "/tyk-apis/tyk-portal-api/portal-keys/", @@ -13274,6 +14309,7 @@ }, "/tyk-stack/tyk-developer-portal/portal-oauth-clients/": { "/docs/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", + "/docs/5.6/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.5/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.4/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", "/docs/5.3/": "/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients/", @@ -13291,6 +14327,7 @@ }, "/tyk-stack/tyk-gateway/configuration/redis-sentinel/": { "/docs/": "/tyk-stack/tyk-gateway/configuration/redis-sentinel/", + "/docs/5.6/": "/tyk-stack/tyk-gateway/configuration/redis-sentinel/", "/docs/5.5/": "/tyk-stack/tyk-gateway/configuration/redis-sentinel/", "/docs/5.4/": "/tyk-stack/tyk-gateway/configuration/redis-sentinel/", "/docs/5.3/": "/tyk-stack/tyk-gateway/configuration/redis-sentinel/", @@ -13310,6 +14347,7 @@ }, "/tyk-stack/tyk-gateway/kv-store/": { "/docs/": "/tyk-configuration-reference/kv-store/", + "/docs/5.6/": "/tyk-configuration-reference/kv-store/", "/docs/5.5/": "/tyk-configuration-reference/kv-store/", "/docs/5.4/": "/tyk-configuration-reference/kv-store/", "/docs/5.3/": "/tyk-configuration-reference/kv-store/", @@ -13339,6 +14377,7 @@ }, "/tyk-stack/tyk-manager/sso/dashboard-login-ldap-tib/": { "/docs/": "/tyk-configuration-reference/tyk-identity-broker-configuration/", + "/docs/5.6/": "/tyk-configuration-reference/tyk-identity-broker-configuration/", "/docs/5.5/": "/tyk-configuration-reference/tyk-identity-broker-configuration/", "/docs/5.4/": "/tyk-configuration-reference/tyk-identity-broker-configuration/", "/docs/5.3/": "/tyk-configuration-reference/tyk-identity-broker-configuration/", @@ -13359,6 +14398,7 @@ }, "/tyk-stack/tyk-manager/sso/sso-auth0-tib/": { "/docs/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/", + "/docs/5.6/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/", "/docs/5.5/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/", "/docs/5.4/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/", "/docs/5.3/": "/tyk-stack/tyk-manager/sso/sso-auth0-tib/", @@ -13372,6 +14412,7 @@ }, "/tyk-stack/tyk-operator/access-an-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/access-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/access-an-api/", @@ -13386,6 +14427,7 @@ }, "/tyk-stack/tyk-operator/create-an-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/create-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/create-an-api/", @@ -13400,6 +14442,7 @@ }, "/tyk-stack/tyk-operator/getting-started-tyk-operator/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-operator/", "/docs/5.4/": "/tyk-operator/", "/docs/5.3/": "/tyk-stack/tyk-operator/getting-started-tyk-operator/", @@ -13414,6 +14457,7 @@ }, "/tyk-stack/tyk-operator/installing-tyk-operator/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/installing-tyk-operator/", "/docs/5.4/": "/tyk-stack/tyk-operator/installing-tyk-operator/", "/docs/5.3/": "/tyk-stack/tyk-operator/installing-tyk-operator/", @@ -13431,6 +14475,7 @@ }, "/tyk-stack/tyk-operator/migration/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/migration/", "/docs/5.4/": "/tyk-stack/tyk-operator/migration/", "/docs/5.3/": "/tyk-stack/tyk-operator/migration/", @@ -13445,6 +14490,7 @@ }, "/tyk-stack/tyk-operator/publish-an-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/publish-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/publish-an-api/", @@ -13459,6 +14505,7 @@ }, "/tyk-stack/tyk-operator/secure-an-api/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/5.4/": "/tyk-stack/tyk-operator/secure-an-api/", "/docs/5.3/": "/tyk-stack/tyk-operator/secure-an-api/", @@ -13473,6 +14520,7 @@ }, "/tyk-stack/tyk-operator/tyk-operator-reconciliation/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.4/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", "/docs/5.3/": "/tyk-stack/tyk-operator/tyk-operator-reconciliation/", @@ -13486,6 +14534,7 @@ }, "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/": { "/docs/": "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/", + "/docs/5.6/": "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/", "/docs/5.5/": "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/", "/docs/5.4/": "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/", "/docs/5.3/": "/tyk-stack/tyk-pump/other-data-stores/monitor-apis-prometheus/", @@ -13503,6 +14552,7 @@ }, "/tyk-stack/tyk-pump/tyk-analytics-record-fields/": { "/docs/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", + "/docs/5.6/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.5/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.4/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", "/docs/5.3/": "/tyk-stack/tyk-pump/tyk-analytics-record-fields/", @@ -13514,6 +14564,7 @@ }, "/tyk-stack/tyk-pump/tyk-dash-analytics/": { "/docs/": "/tyk-dashboard-analytics/", + "/docs/5.6/": "/tyk-dashboard-analytics/", "/docs/5.5/": "/tyk-dashboard-analytics/", "/docs/5.4/": "/tyk-dashboard-analytics/", "/docs/5.3/": "/tyk-dashboard-analytics/", @@ -13534,6 +14585,7 @@ }, "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/": { "/docs/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", + "/docs/5.6/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.5/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.4/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.3/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", @@ -13545,6 +14597,7 @@ }, "/tyk-stack/tyk-pump/tyk-pump-configuration/graph_mongo_pump/": { "/docs/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", + "/docs/5.6/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.5/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.4/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", "/docs/5.3/": "/tyk-stack/tyk-pump/tyk-pump-configuration/graph-pump/", @@ -13562,6 +14615,7 @@ }, "/tyk-sync/": { "/docs/": "/api-management/automations/", + "/docs/5.6/": "/api-management/automations/", "/docs/5.5/": "/product-stack/tyk-sync/overview/", "/docs/5.4/": "/product-stack/tyk-sync/overview/", "/docs/5.3/": "/tyk-sync/", @@ -13591,6 +14645,7 @@ }, "/universal-data-graph/concepts/header_management/": { "/docs/": "/universal-data-graph/concepts/header_management/", + "/docs/5.6/": "/universal-data-graph/concepts/header_management/", "/docs/5.5/": "/universal-data-graph/concepts/header_management/", "/docs/5.4/": "/universal-data-graph/concepts/header_management/", "/docs/5.3/": "/universal-data-graph/concepts/header_management/", @@ -13599,6 +14654,7 @@ }, "/universal-data-graph/concepts/reusing-response-fields/": { "/docs/": "/universal-data-graph/concepts/reusing_response_fields/", + "/docs/5.6/": "/universal-data-graph/concepts/reusing_response_fields/", "/docs/5.5/": "/universal-data-graph/concepts/reusing_response_fields/", "/docs/5.4/": "/universal-data-graph/concepts/reusing_response_fields/", "/docs/5.3/": "/universal-data-graph/concepts/reusing_response_fields/", @@ -13619,6 +14675,7 @@ }, "/universal-data-graph/data-sources/graphql/": { "/docs/": "/universal-data-graph/concepts/arguments/", + "/docs/5.6/": "/universal-data-graph/concepts/arguments/", "/docs/5.5/": "/universal-data-graph/concepts/arguments/", "/docs/5.4/": "/universal-data-graph/concepts/arguments/", "/docs/5.3/": "/universal-data-graph/concepts/arguments/", @@ -13636,6 +14693,7 @@ }, "/universal-data-graph/data-sources/kafka/": { "/docs/": "/universal-data-graph/datasources/kafka/", + "/docs/5.6/": "/universal-data-graph/datasources/kafka/", "/docs/5.5/": "/universal-data-graph/datasources/kafka/", "/docs/5.4/": "/universal-data-graph/datasources/kafka/", "/docs/5.3/": "/universal-data-graph/datasources/kafka/", @@ -13649,6 +14707,7 @@ }, "/universal-data-graph/data-sources/rest/": { "/docs/": "/universal-data-graph/datasources/rest/", + "/docs/5.6/": "/universal-data-graph/datasources/rest/", "/docs/5.5/": "/universal-data-graph/datasources/rest/", "/docs/5.4/": "/universal-data-graph/datasources/rest/", "/docs/5.3/": "/universal-data-graph/datasources/rest/", @@ -13666,6 +14725,7 @@ }, "/universal-data-graph/data-sources/tyk/": { "/docs/": "/universal-data-graph/datasources/tyk/", + "/docs/5.6/": "/universal-data-graph/datasources/tyk/", "/docs/5.5/": "/universal-data-graph/datasources/tyk/", "/docs/5.4/": "/universal-data-graph/datasources/tyk/", "/docs/5.3/": "/universal-data-graph/datasources/tyk/", @@ -13683,6 +14743,7 @@ }, "/universal-data-graph/datasources/": { "/docs/": "/universal-data-graph/concepts/datasources/", + "/docs/5.6/": "/universal-data-graph/concepts/datasources/", "/docs/5.5/": "/universal-data-graph/concepts/datasources/", "/docs/5.4/": "/universal-data-graph/concepts/datasources/", "/docs/5.3/": "/universal-data-graph/concepts/datasources/", @@ -13703,6 +14764,7 @@ }, "/universal-data-graph/datasources/kafka/": { "/docs/": "/universal-data-graph/datasources/kafka/", + "/docs/5.6/": "/universal-data-graph/datasources/kafka/", "/docs/5.5/": "/universal-data-graph/datasources/kafka/", "/docs/5.4/": "/universal-data-graph/datasources/kafka/", "/docs/5.3/": "/universal-data-graph/datasources/kafka/", @@ -13722,6 +14784,7 @@ }, "/universal-data-graph/examples/": { "/docs/": "/universal-data-graph/udg-examples/", + "/docs/5.6/": "/universal-data-graph/udg-examples/", "/docs/5.5/": "/universal-data-graph/udg-examples/", "/docs/5.4/": "/universal-data-graph/udg-examples/", "/docs/5.3/": "/universal-data-graph/udg-examples/", @@ -13738,6 +14801,7 @@ }, "/universal-data-graph/udg-examples/": { "/docs/": "/universal-data-graph/udg-examples/", + "/docs/5.6/": "/universal-data-graph/udg-examples/", "/docs/5.5/": "/universal-data-graph/udg-examples/", "/docs/5.4/": "/universal-data-graph/udg-examples/", "/docs/5.3/": "/universal-data-graph/udg-examples/", @@ -13769,6 +14833,7 @@ }, "/upgrading-v2-3-v2-2/": { "/docs/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", + "/docs/5.6/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.5/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.4/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", "/docs/5.3/": "/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2/", @@ -13786,6 +14851,7 @@ }, "/using-plugins/python-custom-auth-plugin/": { "/docs/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", + "/docs/5.6/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", "/docs/5.5/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", "/docs/5.4/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", "/docs/5.3/": "/tyk-cloud/configuration-options/using-plugins/python-custom-auth/", @@ -13803,10 +14869,12 @@ }, "/using-tyk-dashboard/": { "/docs/": "/getting-started/using-tyk-dashboard/", + "/docs/5.6/": "/getting-started/using-tyk-dashboard/", "/docs/nightly/": "/getting-started/using-tyk-dashboard/" }, "/with-tyk-community-edition/tutorials/create-api-token/": { "/docs/": "/getting-started/create-api-key/", + "/docs/5.6/": "/getting-started/create-api-key/", "/docs/5.5/": "/getting-started/create-api-key/", "/docs/5.4/": "/getting-started/create-api-key/", "/docs/5.3/": "/getting-started/create-api-key/", From cf37d2b65417c0344a87d282e0bb63ace800232a Mon Sep 17 00:00:00 2001 From: Eopayemi <157506568+Eopayemi@users.noreply.github.com> Date: Tue, 3 Dec 2024 14:15:05 +0000 Subject: [PATCH 22/39] [DX-1720] Dashboard release notes 5.7.0 (#5621) --- .../tyk-dashboard/release-notes/overview.md | 1 + .../release-notes/version-5.7.md | 333 ++++++++++++++++++ .../tyk-gateway/release-notes/overview.md | 1 + .../tyk-gateway/release-notes/version-5.7.md | 253 +++++++++++++ tyk-docs/data/menu.yaml | 8 + tyk-docs/data/releases/dashboard.json | 10 +- tyk-docs/data/releases/gateway.json | 11 +- tyk-docs/data/releases/mdcb.json | 6 +- 8 files changed, 616 insertions(+), 7 deletions(-) create mode 100644 tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md create mode 100644 tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md index c4fe94d83c..c7e9d5fbdf 100644 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md +++ b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md @@ -8,6 +8,7 @@ This page provides access to release notes for Tyk Dashboard. Links to archived ### Release 5 +- [v5.7]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.7.md" >}}) - [v5.6]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.6.md" >}}) - [v5.5]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.5.md" >}}) - [v5.4]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.4.md" >}}) diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md new file mode 100644 index 0000000000..3d22f1e621 --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md @@ -0,0 +1,333 @@ +--- +title: Tyk Dashboard 5.7 Release Notes +date: 2024-10-08T15:51:11Z +description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.6.X series." +tags: ["Tyk Dashboard", "Release notes", "v5.7", "5.7.0", "5.7", "changelog"] +--- + + +**This page contains all release notes for version 5.7.X displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- +## 5.7.0 Release Notes + +### Release Date 03 December 2024 + +### Release Highlights + +We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0" >}}) below. + +#### Tyk Streams can be configured through Tyk Dashboard + +With this release we are adding a possibility for users to configure their Stream & Events APIs using Tyk Dashboard. +The new API designer leads users step-by-step to create a new Stream configuration easily. Pre-filled stream configurations for different inputs and outputs make it easy to make sure that the Stream is configured correctly. + +#### Improved Audit Log Management + +Tyk 5.7.0 enhances Audit Log management with new features designed for efficiency and security. Users can now store Dashboard Audit Logs in a database for persistent retention and access them via the new /audit-logs API, which supports advanced filtering by attributes like action, IP, status, and user. Additionally, a dedicated Audit Log RBAC group ensures secure access to sensitive log data. These improvements simplify monitoring and compliance workflows, particularly in containerized environments. + +### Breaking Changes + + +There are no breaking changes in this release. + +### Dependencies {#dependencies-5.7.0} + +#### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.7.0 | MDCB v2.7.2 | MDCB v2.5.1 | +| | Operator v1.1.0 | Operator v0.17 | +| | Sync v2.0.1 | Sync v1.4.3 | +| | Helm Chart v2.2 | Helm all versions | +| | EDP v1.12 | EDP all versions | +| | Pump v1.11.1 | Pump all versions | +| | TIB (if using standalone) v1.6.1 | TIB all versions | + +#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.7.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +### Deprecations + +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). + +Additionally, SQLite has reached its End of Life in this release, enabling a fully static, CGO-free Tyk Dashboard optimised for RHEL8. Sqlite was previously recommended only to be used in basic proofs of concept. Now, for such scenarios and for production, we recommend migrating to PostgreSQL or MongoDB for better scalability and support. + + +### Upgrade instructions {#upgrade-5.7.0} +If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.7.0) + - ```bash + docker pull tykio/tyk-dashboard:v5.7.0 + ``` +- Helm charts + - [tyk-charts v2.2.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.1.md" >}}) + +### Changelog {#Changelog-v5.7.0} + +#### Added + +
      +
    • +
      +Added confirmation prompt for Stream deletion + +Introduced a confirmation prompt when deleting a stream, notifying users that this action will stop all data streaming and cannot be undone. This change ensures users are fully aware of the impact before proceeding with deletion. +
      +
    • +
    • +
      +Displayed Streaming API in API overview table + +Added "Streams" as an API type in the API Overview table, making it easier for API developers to identify APIs categorised as Streams & Events. +
      +
    • +
    • +
      +Implemented logic for config framework selection in Streaming API creation + +Added logic for the Streaming API creation process, allowing users to select config frameworks for inputs, processors, and outputs. An 'Advanced' option is also available, which leaves the code editor empty while generating and displaying the YAML Bento config based on the user's selections. +
      +
    • +
    • +
      +Enhanced info messages for securing Streaming & Events APIs in policies & keys + +Included new info messages and tooltips in the Policies & Keys section to guide users on securing Streaming & Events APIs. Updated messaging clarifies the combination of API types and revised copy in the Global Rate Limiting and Quota sections to better explain usage limits for keys and plans. +
      +
    • +
    • +
      +Enabled URL view and copy functionality in external playgrounds tab + +Enabled URL view and copy functionality in the External Playgrounds tab, supporting scenarios with multiple organisations and URLs for playgrounds. +
      +
    • +
    • +
      +Introduced /streams endpoint to Tyk Dashboard API + +Rolled out the `/streams` endpoint to the Tyk Dashboard API, dedicated to creating Stream and Events APIs in Tyk Streams. Documentation for the endpoint and its methods is available in the Tyk Docs. +
      +
    • +
    • +
      +Split Streaming API into new type in API designer + +Separated Streaming API into its own type in the API Designer, introducing a new selection card for easier creation and configuration. Navigation enhancements, including a shortcut menu item, provide quicker access to the streaming configuration UI. +
      +
    • +
    • +
      +Integrated step-by-step UI for Config framework selection in Streaming API creation + +Developed a step-by-step UI for Streaming API creation, enabling users to select a config framework for inputs, processors, and outputs. The dynamic wizard steps are integrated into the Tyk UI library to prefill configurations based on selections and prevent the combination of 'Custom' with other frameworks. +
      +
    • +
    • +
      +Easily contact Tyk Support during Tyk Cloud trial + +Introduced a form on the Tyk Dashboard that allows users to easily contact Tyk support during their trial period. +
      +
    • +
    • +
      +Support for JWE in OIDC SSO + +We have enhanced security for customers in highly regulated industries by introducing JSON Web Encryption (JWE) support for OIDC single sign-on (SSO). This ensures that tokens used in authentication flows are securely encrypted, providing an additional layer of protection. + +[Setup guide for JWE OIDC SSO]({{< ref "tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth" >}}) +
      +
    • +
    • +
      +Store Audit Logs in a Database + +Users can now choose to store Dashboard Audit Logs directly in a database, enabling efficient and reliable log storage. This feature is particularly beneficial for organizations needing persistent audit log retention to meet compliance requirements or for forensic purposes. +
      +
    • +
    • +
      +Access Audit Logs via /audit-logs endpoint + +A new API endpoint, `/audit-logs`, has been introduced to provide programmatic access to audit logs stored in database. This allows users to retrieve, filter, and analyze logs more effectively. The API supports filtering logs by key attributes like action, IP address, URL accessed, date range, user, and page number. + +For detail usage of the `/audit-logs` endpoint, please see [Dashboard API documentation]({{< ref "tyk-dashboard-api" >}}). +
      +
    • +
    • +
      +New Role-Based Access Control (RBAC) for Audit Logs + +To secure access to audit logs, we’ve added a new Audit Log RBAC group. This ensures that only authorized users can view or retrieve sensitive log information. Administrators can assign this permission as part of their security and compliance strategy. +
      +
    • +
    + +#### Changed + + +
      +
    • +
      +Removed AJV validation for Streams config editor + +Eliminated AJV validation in the Streams Config Editor to prevent false positives on valid YAML configurations. The frontend now solely checks the YAML structure, providing users with greater flexibility without enforcing strict Bento-specific schema rules +
      +
    • +
    • +
      +Hide unnecessary field from API Designer page for Streams + +Removed an unnecessary field from the API Designer page under the Streams section to enhance clarity. This update impacts the Event Handlers, Detailed Activity Logs, Caching, and Endpoints tabs. +
      +
    • +
    • +
      +Automatic configuration of request validation for path-level parameters during import of OpenAPI description + +Tyk will now detect path-level parameters in the OpenAPI description and can be set to enable and configure the [Request Validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-oas" >}}) middleware automatically for these. Previously this automatic detection only worked for method-level parameters in the OpenAPI description. +
      +
    • +
    • +
      +Deprecated SQLite support from Dashboard for RHEL8 compatibility + +Removed SQLite support to enhance portability and security, ensuring the released binary can now be built statically and no longer relies on system libraries. This change supports continued compatibility with RHEL8. +
      +
    • +
    • +
      +Deprecated External OAuth and OpenID Connect Options in Tyk Dashboard + +The External OAuth and OpenID Connect authentication options have been deprecated in the Tyk Dashboard. Users are advised to utilize JWT Auth with external IDPs for a more complete integration, while existing functionality remains operational to avoid breaking changes. +
      +
    • +
    • +
      +Updated NPM package dependencies + +Updated NPM package dependencies of Dashboard, to address security vulnerabilities. +
      +
    • +
    + +#### Fixed + +
      +
    • +
      +Fixed navigation issue with "Back to APIs Page" Button on Streams API page + +Resolved an issue where the "Back to APIs Page" button was unresponsive on the Streams API page. The button now correctly redirects users to the main APIs page for all API types. +
      +
    • +
    • +
      +Resolved search box limitation on Tyk OAS and Streams API pages + +Corrected an issue where the search box on the Tyk OAS and Streams API pages only accepted a single character. Users can now input complete search terms, allowing for more accurate searches. +
      +
    • +
    • +
      +Unable to see all *user groups* in Dashboard dropdown + +Fixed an issue with the *user group* dropdown in the Dashboard UI, ensuring that all available user groups are displayed when creating a new user. +
      +
    • +
    + + + + + +--- + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### API Documentation + +- [OpenAPI Document]({{< ref "tyk-dashboard-api/" >}}) +- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) + +### FAQ + +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. + + diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md index 8173929978..3b83b7dfad 100644 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md +++ b/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md @@ -8,6 +8,7 @@ This page provides access to release notes for Tyk Gateway. Links to archived re ## Release 5 +- [v5.7]({{< ref "product-stack/tyk-gateway/release-notes/version-5.7.md" >}}) - [v5.6]({{< ref "product-stack/tyk-gateway/release-notes/version-5.6.md" >}}) - [v5.5]({{< ref "product-stack/tyk-gateway/release-notes/version-5.5.md" >}}) - [v5.4]({{< ref "product-stack/tyk-gateway/release-notes/version-5.4.md" >}}) diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md new file mode 100644 index 0000000000..94d78286af --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md @@ -0,0 +1,253 @@ +--- +title: Tyk Gateway 5.7 Release Notes +date: 2024-10-08T15:51:11Z +description: "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.6.X series." +tags: ["Tyk Gateway", "Release notes", "v5.7", "5.7.0", "5.7", "changelog"] +--- + + + +**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) + +**This page contains all release notes for version 5.7.X displayed in a reverse chronological order** + +## Support Lifetime + +Minor releases are supported only until the next minor comes out. + +--- + +## 5.7.0 Release Notes + +### Release Date 03 December 2024 + +### Release Highlights + +We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0">}}) below. + +#### Tyk Streams - asynchronous API management with Tyk + +Tyk is now entering the asynchronous API management space with a bang by delivering Tyk Streams to our users! +Many API management solutions fail to fully support event-driven architectures, causing fragmented management, inconsistent security practices, and increased operational complexity. With event-driven architectures on the rise recently, keeping everything under control and enforcing standards at the organizational level has become a challenge. + +**Tyk Streams** is an event streaming solution available within the Tyk API Management Platform, which applies proven API management principles to simplify event and streams handling. +This release brings capabilities to stream data and events using Kafka, Websocket, SSE and HTTP protocols. It also becomes possible to mediate the message format between Avro and JSON on the fly. + +- Merge together various sources of events to present to consumers as a unified stream. +- Apply authentication and authorization to streams of messages, just as you do for your RESTful APIs +- Expose async APIs via Tyk Portal, so that they are easily discoverable + +All of this possible in self-managed and k8s deployments of Tyk! + +### Breaking Changes + + +There are no breaking changes in this release. + +### Dependencies {#dependencies-5.7.0} + + +#### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.7.0 | MDCB v2.7.2 | MDCB v2.4.2 | +| | Operator v1.1.0 | Operator v0.17 | +| | Sync v2.0.1 | Sync v1.4.3 | +| | Helm Chart v2.2 | Helm all versions | +| | EDP v1.12 | EDP all versions | +| | Pump v1.11.1 | Pump all versions | +| | TIB (if using standalone) v1.6.1 | TIB all versions | + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). + + + + +### Upgrade instructions {#upgrade-5.7.0} +If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.7.0) + - ```bash + docker pull tykio/tyk-gateway:v5.7.0 + ``` +- Helm charts + - [tyk-charts v2.2.0]({{}}) + +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +### Changelog {#Changelog-v5.7.0} + + +#### Added + +
      +
    • +
      +Added Stream Analytics Error Handling + +Added to Streams analytics capability to capture and report common error scenarios, including broker connectivity issues and standard HTTP errors, ensuring comprehensive request tracking for Streams-processed requests. +
      +
    • +
    • +
      +Integrated Streams Validator with Streams API + +Connected the new OAS validator to the /streams endpoint, adding proper error handling and validation responses for invalid stream configurations. +
      +
    • +
    • +
      +Extended Streams Configuration Validation + +Extended the OAS validator to include Streams configuration validation, enforcing allowlisted components and validating nested broker configurations while implementing schema validation for Streams configurations. +
      +
    • +
    • +
      +New Streams Configuration Validator + +Introduced a new validator derived from the existing OAS schema, adapting it for Streams validation with modified requirements for upstreamURL and x-tyk-streaming fields. This validator is now used by both the Dashboard API streams endpoint and streams configuration validator. +
      +
    • +
    • +
      +Added Logging for Streams + +Refined streams logging behavior to match Tyk's logging patterns, reducing unnecessary log output and improving log clarity. +
      +
    • +
    • +
      +Simplified Streams Configuration Support + +Implemented allowlist-based validation for components in streams configurations, replacing the previous blocklist approach. Supported components now include Kafka, WebSocket, SSE, and HTTP for both inputs and outputs (including broker combinations), along with JSON-Avro bidirectional conversion processors, while other components like scanners, caches, and buffers are blocked by default. This validation is enforced consistently across Gateway, Dashboard API, and UI. +
      +
    • +
    + +#### Fixed + +
      +
    • +
      +Resolved HTTP Input Timeout in Tyk Streams + +When using Tyk Streams and sending input via http, the requests sometimes timed out causing a problem for the consumers. The issue has been fixed and now inputs via http for Tyk Streams work as intended. +
      +
    • +
    • +
      +Improved backwards compatibility when working with Tyk OAS APIs + +Fixed a backwards compatibility issue with Tyk OAS API schema validation. When downgrading from a Tyk version, schema validation could fail if new fields had been added to the Tyk OAS API definition. This change relaxes the strictness of validation to allow additional properties. +
      +
    • +
    • +
      +Fixed Policy Merge Issue with Path-Based Permissions + +Resolved a bug where path-based permissions in policies were not preserved when policies were combined, potentially omitting URL values and incorrectly restricting access. The updated behavior ensures that URL access rights from all applicable policies are merged, regardless of policy order, allowing seamless enforcement of combined permissions. +
      +
    • +
    • +
      +Optimized Gateway Handling for Large Payloads + +Fixed an issue that caused increased memory consumption when proxying large response payloads. The Gateway now handles large payloads more efficiently in terms of speed and memory usage. +
      +
    • +
    + + + + + +--- + + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### API Documentation + +- [Tyk Gateway API]({{}}) +- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) + +### FAQ + +Please visit our [Developer Support]({{< ref "/frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 37ee422e62..c055f78ca1 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -2394,6 +2394,10 @@ menu: path: /product-stack/tyk-gateway/release-notes/overview category: page show: True + - title: "Tyk Gateway v5.7" + path: /product-stack/tyk-gateway/release-notes/version-5.7 + category: Page + show: True - title: "Tyk Gateway v5.6" path: /product-stack/tyk-gateway/release-notes/version-5.6 category: Page @@ -2865,6 +2869,10 @@ menu: category: Page path: /product-stack/tyk-dashboard/release-notes/overview show: True + - title: "Tyk Dashboard v5.7" + path: /product-stack/tyk-dashboard/release-notes/version-5.7 + category: Page + show: True - title: "Tyk Dashboard v5.6" path: /product-stack/tyk-dashboard/release-notes/version-5.6 category: Page diff --git a/tyk-docs/data/releases/dashboard.json b/tyk-docs/data/releases/dashboard.json index 824018487a..8a36b29e44 100644 --- a/tyk-docs/data/releases/dashboard.json +++ b/tyk-docs/data/releases/dashboard.json @@ -1,9 +1,13 @@ { "home": "tyk-dashboard", "licensed": true, - "latest": "5.6.1", - "lts": "5.3.6", - "releaseNotesPath": "product-stack/tyk-dashboard/release-notes/version-5.6", + "latest": "5.7.0", + "lts": "5.3.8", + "releaseNotesPath": "product-stack/tyk-dashboard/release-notes/version-5.7", + "5.7.0": { + "date": "03/12/2024", + "docker": "https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=1&name=v5.7.0" + }, "5.6.1": { "date": "22/10/2024", "docker": "https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=1&name=v5.6.1" diff --git a/tyk-docs/data/releases/gateway.json b/tyk-docs/data/releases/gateway.json index c381828147..2f442a2760 100644 --- a/tyk-docs/data/releases/gateway.json +++ b/tyk-docs/data/releases/gateway.json @@ -1,9 +1,14 @@ { "home": "tyk-oss-gateway", "licensed": false, - "latest": "5.6.1", - "lts": "5.3.6", - "releaseNotesPath": "product-stack/tyk-gateway/release-notes/version-5.6", + "latest": "5.7.0", + "lts": "5.3.8", + "releaseNotesPath": "product-stack/tyk-gateway/release-notes/version-5.7", + "5.7.0": { + "date": "03/12/2024", + "tag": "https://github.com/TykTechnologies/tyk/releases/tag/v5.7.0", + "docker": "https://hub.docker.com/r/tykio/tyk-gateway/tags?page=1&name=v5.7.0" + }, "5.6.1": { "date": "22/10/2024", "tag": "https://github.com/TykTechnologies/tyk/releases/tag/v5.6.1", diff --git a/tyk-docs/data/releases/mdcb.json b/tyk-docs/data/releases/mdcb.json index 8310c5b6d1..3c73ea5782 100644 --- a/tyk-docs/data/releases/mdcb.json +++ b/tyk-docs/data/releases/mdcb.json @@ -1,8 +1,12 @@ { "home": "tyk-multi-data-centre", "licensed": true, - "latest": "2.7.1", + "latest": "2.7.2", "releaseNotesPath": "product-stack/tyk-enterprise-mdcb/release-notes/version-2.7", + "2.7.2": { + "date": "03/12/2024", + "docker":"https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=1&name=2.7.2" + }, "2.7.1": { "date": "10/10/2024", "docker":"https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=1&name=2.7.1" From b2d1df0d0a1ea50fd1c1e34de2f7e7bc159a204f Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Fri, 6 Dec 2024 07:12:53 +0000 Subject: [PATCH 23/39] Sync 2.0.1 RN (#5717) --- .../tyk-sync/release-notes/sync-2.0.md | 63 ++++++++++++++++++- 1 file changed, 60 insertions(+), 3 deletions(-) diff --git a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md index b90de6429b..f87e46e392 100644 --- a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md +++ b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md @@ -1,6 +1,6 @@ --- title: Tyk Sync 2.0 Release Notes -tag: ["Tyk Sync", "Release notes", "v2.0", "2.0.0", "changelog" ] +tag: ["Tyk Sync", "Release notes", "v2.0", "2.0.0", "2.0.1", "changelog" ] description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Sync versions within the 2.0.X series." --- **Licensed Protected Product** @@ -13,6 +13,63 @@ Our minor releases are supported until our next minor comes out. --- +## 2.0.1 Release Notes + +### Release Date 05 December 2024 + +### Release Highlights + +Tyk Sync 2.0.1 has been updated to support API configurations from Tyk 5.7.0. + +Please refer to the [changelog]({{< ref "#Changelog-v2.0.1">}}) below for detailed explanation. + +### Breaking Changes + +This release has no breaking changes. + +### Deprecations +There are no deprecations in this release. + +### Upgrade instructions +For users currently on v2.0.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 2.0.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +### Downloads +- [Docker image v2.0.1](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v2.0.1) + - ```bash + docker pull tykio/tyk-sync:v2.0.1 + ``` +- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v2.0.1) + +### Changelog {#Changelog-v2.0.1} + +#### Changed + +
      +
    • +
      +API definitions and policies supported up to Tyk Gateway v5.7.0 + +Tyk Sync 2.0.1 supports API definitions and policies up to Tyk Gateway v5.7.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.7.0. +
      +
    • +
    + +#### Fixed + +
      +
    • +
      +Improved Error Handling for Invalid MongoDB Object IDs in Tyk Sync + +Addressed an issue where Tyk Sync did not properly validate MongoDB Object IDs during API synchronization. Previously, invalid IDs would result in silent failures, causing APIs to remain unpublished without error logs, creating confusion for users. Tyk Sync now logs meaningful error messages and exits with an error if invalid IDs are detected. This fix enhances the reliability and transparency of the synchronization process, ensuring consistent behavior with the Tyk Dashboard API. +
      +
    • +
    + +--- + ## 2.0.0 Release Notes From Tyk Sync v2.0, Tyk Sync will be closed source and we will only support use of Tyk Sync with licensed Tyk Dashboard. @@ -67,7 +124,7 @@ Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructi
    API definitions and policies supported up to Tyk Gateway v5.6.0 -Tyk Sync 2.0 supports API definitions and policies up to Tyk Gateway v5.6.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.6.0. +Tyk Sync 2.0.0 supports API definitions and policies up to Tyk Gateway v5.6.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.6.0.
    @@ -91,4 +148,4 @@ Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for furthe Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. ## Earlier Versions Release Notes -Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) \ No newline at end of file +Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) From 3d24160699dddccbb20834b97921f8308f7776a5 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Fri, 6 Dec 2024 07:18:40 +0000 Subject: [PATCH 24/39] Pump 1.11.1 RN (#5740) --- .../tyk-pump/release-notes/pump-1.11.md | 65 ++++++++++++++++++- 1 file changed, 64 insertions(+), 1 deletion(-) diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md b/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md index 96e1883e4a..f38aa9ba95 100644 --- a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md +++ b/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md @@ -15,7 +15,70 @@ Our minor releases are supported until our next minor comes out. --- -## 1.11 Release Notes +## 1.11.1 Release Notes + +### Release Date 04 December 2024 + +### Release Highlights + +This patch release focuses on critical dependency updates to address security vulnerabilities and maintain compatibility with the latest tools. Users are encouraged to upgrade to benefit from enhanced security and improved stability. + +### Breaking Changes +This release has no breaking changes. + +### Dependencies + +#### 3rd Party Dependencies & Tools + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations +There are no deprecations in this release. + +### Upgrade instructions +For users currently on v1.11.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 1.11.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +### Downloads +- [Docker Image v1.11.1](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.11.1) + - ```bash + docker pull tykio/tyk-pump-docker-pub:v1.11.1 + ``` +- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.11.1) + +### Changelog {#Changelog-v1.11.1} + +#### Changed + +
      +
    • +
      +Upgraded Golang to v1.22.7 + +Updated to the [Go v1.22.7](https://go.dev/doc/devel/release#go1.22) to leverage its performance improvements, bug fixes, and security patches. + +
      +
    • +
    + +#### Security Fixes +- Fixed the following CVEs: + - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) + - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) + - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) + +--- + +## 1.11.0 Release Notes ### Release Date 13 August 2024 From e6fc804cd0c3d29b6fa96994f4edefa62abb69c5 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Fri, 6 Dec 2024 12:11:52 +0000 Subject: [PATCH 25/39] Remove source download option for Tyk Sync (#5796) Update sync-2.0.md --- .../content/product-stack/tyk-sync/release-notes/sync-2.0.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md index f87e46e392..8be22ab2f9 100644 --- a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md +++ b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md @@ -40,7 +40,6 @@ Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructi - ```bash docker pull tykio/tyk-sync:v2.0.1 ``` -- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v2.0.1) ### Changelog {#Changelog-v2.0.1} @@ -113,7 +112,6 @@ Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructi - ```bash docker pull tykio/tyk-sync:v2.0.0 ``` -- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v2.0.0) ### Changelog {#Changelog-v2.0.0} From c07a11341b2d347dc6ef2142718d98f15cace8a4 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:24:37 +0000 Subject: [PATCH 26/39] Operator 1.1 RN (#5741) --- .../release-notes/operator-1.1.md | 230 ++++++++++++++++++ .../tyk-operator/release-notes/overview.md | 1 + tyk-docs/data/menu.yaml | 4 + 3 files changed, 235 insertions(+) create mode 100644 tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md new file mode 100644 index 0000000000..5e700d9410 --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md @@ -0,0 +1,230 @@ +--- +title: Tyk Operator 1.1 Release Notes +tag: ["Tyk Operator", "Release notes", "v1.1", "changelog" ] +description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 1.1.x series." +--- +**Licensed Protected Product** + +**This page contains all release notes for version 1.1.X displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 1.1.0 Release Notes + +### Release Date 09 December 2024 + +### Release Highlights + +##### Support for Tyk Streams API +Tyk Operator v1.1 supports management of Tyk Streams APIs through the new **`TykStreamsApiDefinition`** custom resource. This allows you to have declarative, versioned, and fully automated control to your streaming APIs. + +### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + + + +### Dependencies {#dependencies-1.1} +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x to 1.30.x | 1.19.x to 1.30.x | | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +There are no deprecations in this release. + + + + +### Upgrade instructions + +Tyk Operator v1.1 introduced new Custom Resource Definitions (CRDs). Before upgrading to Tyk Operator v1.1 with Helm Chart, please run the following commands to install the CRDs: + +```bash +$ kubectl apply -f https://raw.githubusercontent.com/TykTechnologies/tyk-charts/refs/heads/main/tyk-operator-crds/crd-v1.1.0.yaml +``` + + +Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. + + +### Downloads +- [Docker image v1.1.0](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v1.1.0) + - ```bash + docker pull tykio/tyk-operator:v1.1.0 + ``` +- Helm chart + - tyk-charts v2.2.0 + + +### Changelog {#Changelog-v1.1.0} + + +#### Added + +
      +
    • +
      +TykStreamsApiDefinition: new Custom Resource for Tyk Streams + +The `TykStreamsApiDefinition` custom resource allows you to manage Tyk Streams APIs directly within your Kubernetes environment. This enhancement offers a Kubernetes-native approach to managing Tyk APIs, streamlining operations and ensure single source of truth in Kubernetes. + +[Learn More]({{< ref "api-management/automations#create-a-tykstreamsapidefinition-custom-resource" >}}) +
      +
    • +
    + + + + + + + + + + +--- + + + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + + + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. + + \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md index da707e5e81..eccafd6702 100644 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md +++ b/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md @@ -7,6 +7,7 @@ description: "Index to Operator release notes" This page provides access to release notes for Tyk Operator. +* [Operator v1.1]({{}}) * [Operator v1.0]({{}}) * [Operator v0.18]({{}}) * [Operator v0.17]({{}}) diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index c055f78ca1..662adac4a6 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -3839,6 +3839,10 @@ menu: path: /product-stack/tyk-operator/release-notes/overview category: Page show: True + - title: "Tyk Operator v1.1" + path: /product-stack/tyk-operator/release-notes/operator-1.1 + category: Page + show: True - title: "Tyk Operator v1.0" path: /product-stack/tyk-operator/release-notes/operator-1.0 category: Page From 9e8df83850e520d01b51758f5bd68dfd32355cf4 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:33:19 +0000 Subject: [PATCH 27/39] Tyk Chart 2.2 release (#5719) --- .../tyk-charts/release-notes/version-2.2.md | 296 ++++++++++++++++++ .../tyk-charts/tyk-control-plane-chart.md | 19 ++ .../tyk-charts/tyk-data-plane-chart.md | 12 + .../product-stack/tyk-charts/tyk-oss-chart.md | 12 + .../tyk-charts/tyk-stack-chart.md | 24 ++ .../release-notes/version-5.7.md | 2 +- .../tyk-gateway/release-notes/version-5.7.md | 2 +- tyk-docs/data/menu.yaml | 4 + 8 files changed, 369 insertions(+), 2 deletions(-) create mode 100644 tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md new file mode 100644 index 0000000000..5caccc6487 --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md @@ -0,0 +1,296 @@ +--- +title: Tyk Charts 2.2 Release Notes +description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 2.2 series." +tags: ["Tyk Charts", "Release notes", "changelog", "Helm Chart", "v2.2" ] +--- + +****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** + + +**This page contains all release notes for version 2.2.X displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 2.2.0 Release Notes + +### Release Date 09 December 2024 + +### Release Highlights + + +The Tyk Helm Charts v2.2.0 release brings exciting new features, improvements, and crucial fixes to enhance deployment flexibility, customization, and reliability. Here are the highlights: +* Sidecar containers support +* Dashboard enhancements: Configurable audit log storage, Open Policy Agent (OPA) settings +* Gateway enhancements: Custom liveness and readiness probes, enhanced logging configuration, customizable HPA behavior +* Operator updates: Custom deployment annotations, + +For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v2.2.0) below. + +### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + +### Dependencies {#dependencies-2.2} + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +There are no deprecation in this release. + + + +### Upgrade instructions + + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.2.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.2.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.2.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.2.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.2.0) + +### Changelog {#Changelog-v2.2.0} + +#### Added + +
      + +
    • +
      +Global: Configurable Tyk streams setting + +User can enable or disable Tyk Streams feature via `global.streaming.enabled`. This option is enabled by default. +
      +
    • + +
    • +
      +Dashboard: Configurable audit log storage + +Introduced new configuration options to manage audit logging for the Tyk Dashboard. This enhancement allows users to enable, customize, and specify how audit logs are stored and formatted. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Dashboard: Configurable Open Policy Agent (OPA) settings + +Introduced new options to enable and manage Open Policy Agent (OPA) support directly from the Helm chart. This feature simplifies the configuration process, guiding users to use the correct settings without relying on extraEnvs. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Gateway: Configurable liveness and readiness probes + +Support for configuring liveness and readiness probes for the Tyk Gateway via Helm charts. + +Users can now define custom configurations for these probes, providing more flexibility and control over health checks in Kubernetes deployments. Defaults are provided if custom configurations are not specified. + +This enhancement improves deployment reliability and ensures better integration with Kubernetes health monitoring systems. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Gateway: Enhanced log configuration + +Support for configuring the Tyk Gateway logging level and format through new fields under `.Values.gateway.log` in the Helm chart values.yaml. + +This enhancement enables fine-tuned control over logging behavior directly from the Helm chart, simplifying deployment customization. +
      +
    • + +
    • +
      +Gateway: Customizable HPA behavior + +Users can now define custom HPA behavior settings directly in the Helm values file via a new field a new field: `.Values.gateway.autoscaling.behavior`. + +This enhancement provides more flexibility in configuring HPA scaling behavior, allowing tailored performance tuning for Gateway deployments. +
      +
    • + +
    • +
      +Operator: Support for adding custom annotations to the Tyk Operator deployment + +Users can now specify annotations directly in the Helm values field `.Values.annotations`, enabling better integration with external tools and systems that rely on metadata annotations. +
      +
    • + +
    • +
      +Configurable sidecar containers + +Support for adding sidecar containers for Tyk components, enhancing flexibility and integration capabilities. This feature allows for the addition of auxiliary containers through `extraContainers` field to the following components: + +- Tyk Gateway +- Tyk Dashboard +- Tyk MDCB +- Tyk Pump +- Tyk Enterprise Developer Portal + +
      +
    • + +
    + +#### Changed + +
      + +
    • +
      +Updated default versions of Tyk components + + Tyk Charts 2.2 will install the following Tyk component versions by default. + + - Tyk Gateway v5.3.8 + - Tyk Dashboard v5.3.8 + - Tyk Pump v1.11.1 + - Tyk MDCB v2.7.2 + - Tyk Developer Portal v1.12.0 + - Tyk Operator v1.1.0 + +
      +
    • + +
    + +#### Fixed + +
      + +
    • +
      +Gateway: Corrected template name for OpenTelemetry caFilePath + +Corrected the template name for the OpenTelemetry caFilePath in the Gateway configuration. +Updated template reference from `otel-CAPath` to `otel-tlsCAPath` to ensure proper functionality. +This fix addresses misconfigurations related to the OpenTelemetry TLS CA path and ensures accurate rendering of Gateway templates. +
      +
    • + +
    • +
      +MDCB: Fixed MDCB service configuration when using LoadBalancer as the service type + +The `externalTrafficPolicy` field is now correctly set under the spec section instead of selectors. +This fix ensures proper functionality and alignment with Kubernetes service configuration requirements. +
      +
    • + +
    • +
      +Tyk Operator license key handling in tyk-oss chart + +Resolved an issue where the Tyk OSS chart did not set the Operator license key in the secret created for the Operator. This fix ensures seamless configuration of the license key when deploying Tyk Operator. +
      +
    • + +
    + + + + +--- + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index c37127a750..fcbe1fbca9 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -689,6 +689,25 @@ Optional Steps, if needed: - If the `tyk-bootstrap` chart is used to bootstrap the Tyk Dashboard, ensure that bootstrap app can validate certificate of Tyk Dashboard or enable `insecureSkipVerify` in the `tyk-bootstrap` chart. - If the Tyk Gateway connects to the Tyk Dashboard, confirm that the Tyk Gateway has appropriate certificates for connecting to the Tyk Dashboard +#### Audit Log Configurations + +You can manage audit logging for Tyk Dashboard via `auditLogs`: + +- `auditLogs.enabled`: Enables or disables audit logging. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_ENABLED`. Disabled by default. +- `auditLogs.type`: Specifies the storage type for audit logs (`db` or `file`). It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_STORETYPE`. Set to `file` by default. +- `auditLogs.format`: Defines the format of audit log files (`json` or `text`). It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_FORMAT`. Set to `text` by default. +- `auditLogs.path`: Sets the path to the audit log file. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_PATH`. Set to "" by default. +- `auditLogs.enableDetailedRecording`: Enables detailed logging, including HTTP requests (headers only) and full HTTP responses. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_DETAILEDRECORDING`. Disabled by default. + +#### OPA Configurations{#opa-configurations} + +You can manage OPA (Open Agent Policy) for Tyk Dashboard via `opa`: + +- `opa.enabled`: Enables OPA support. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_ENABLED`. Disabled by default. +- `opa.debug`: Activates OPA debug mode for detailed logging of policy execution. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_DEBUG`. Disabled by default. +- `opa.api`: Enables OPA API mode to manage policies via the Dashboard API. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_ENABLEAPI`. Disabled by default. +- `opa.allowAdminPasswordReset`: Required if OPA is enabled with its default policies. It sets corresponding Dashboard environment `TYK_DB_SECURITY_ALLOWADMINRESETPASSWORD`. Enabled by default. + ### Tyk MDCB Configurations #### Tyk MDCB License (Required) diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md index ba2e51e469..5ae7e5d6a4 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md @@ -443,6 +443,18 @@ Configure the gateways to load APIs with specific tags only by enabling `tyk-gat tags: "edge,dc1,product" ``` +#### OpenTelemetry +To enable OpenTelemetry for Gateway set `gateway.opentelemetry.enabled` flag to true. It is disabled by default. + +You can also configure connection settings for it's exporter. By default `grpc` exporter is enabled on `localhost:4317` endpoint. + + To enable TLS settings for the exporter, you can set `gateway.opentelemetry.tls.enabled` to true. + +#### Liveness and readiness probes +Gateway liveness probes can be customised via `gateway.livenessProbe` field. All fields from PodLivenessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + +Gateway readiness probes can be customised via `gateway.readinessProbe` field. All fields from PodReadinessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + For further details for configuring Tyk Gateway, please consult the [Tyk Gateway Configuration Options]({{}}) guide. ### Pump Configurations diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md index f4953c688c..8f9e7549aa 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md @@ -374,6 +374,18 @@ You can configure persistent volume for APIs, Policies, and middlewares using `e For further details for configuring Tyk Gateway, consult the [Tyk Gateway Configuration Options]({{}}) guide. +#### OpenTelemetry +To enable OpenTelemetry for Gateway set `gateway.opentelemetry.enabled` flag to true. It is disabled by default. + +You can also configure connection settings for it's exporter. By default `grpc` exporter is enabled on `localhost:4317` endpoint. + + To enable TLS settings for the exporter, you can set `gateway.opentelemetry.tls.enabled` to true. + +#### Liveness and readiness probes +Gateway liveness probes can be customised via `gateway.livenessProbe` field. All fields from PodLivenessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + +Gateway readiness probes can be customised via `gateway.readinessProbe` field. All fields from PodReadinessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + ### Pump Configurations To enable Pump, set `global.components.pump` to true, and configure below inside `tyk-pump` section. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index 4279060b18..60074430c6 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -661,6 +661,11 @@ You can also configure connection settings for it's exporter. By default `grpc` To enable TLS settings for the exporter, you can set `gateway.opentelemetry.tls.enabled` to true. +#### Liveness and readiness probes{#gateway-probes} +Gateway liveness probes can be customised via `gateway.livenessProbe` field. All fields from PodLivenessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + +Gateway readiness probes can be customised via `gateway.readinessProbe` field. All fields from PodReadinessProbe object can be added here. If set to empty or nil, the default health check on /health will be performed. + ### Pump Configurations To enable Pump, set `global.components.pump` to true, and configure below inside `tyk-pump` section. @@ -785,6 +790,25 @@ Optional Steps, if needed: - If the `tyk-bootstrap` chart is used to bootstrap the Tyk Dashboard, ensure that it has certificates to send requests to the Tyk Dashboard or enable `insecureSkipVerify` in the `tyk-bootstrap` chart. - If the Tyk Gateway connects to the Tyk Dashboard, confirm that the Tyk Gateway has appropriate certificates for connecting to the Tyk Dashboard +#### Audit Log Configurations + +You can manage audit logging for Tyk Dashboard via `auditLogs`: + +- `auditLogs.enabled`: Enables or disables audit logging. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_ENABLED`. Disabled by default. +- `auditLogs.type`: Specifies the storage type for audit logs (`db` or `file`). It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_STORETYPE`. Set to `file` by default. +- `auditLogs.format`: Defines the format of audit log files (`json` or `text`). It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_FORMAT`. Set to `text` by default. +- `auditLogs.path`: Sets the path to the audit log file. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_PATH`. Set to "" by default. +- `auditLogs.enableDetailedRecording`: Enables detailed logging, including HTTP requests (headers only) and full HTTP responses. It sets corresponding Dashboard environment variable `TYK_DB_AUDIT_DETAILEDRECORDING`. Disabled by default. + +#### OPA Configurations{#opa-configurations} + +You can manage OPA (Open Agent Policy) for Tyk Dashboard via `opa`: + +- `opa.enabled`: Enables OPA support. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_ENABLED`. Disabled by default. +- `opa.debug`: Activates OPA debug mode for detailed logging of policy execution. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_DEBUG`. Disabled by default. +- `opa.api`: Enables OPA API mode to manage policies via the Dashboard API. It sets corresponding Dashboard environment `TYK_DB_SECURITY_OPENPOLICY_ENABLEAPI`. Disabled by default. +- `opa.allowAdminPasswordReset`: Required if OPA is enabled with its default policies. It sets corresponding Dashboard environment `TYK_DB_SECURITY_ALLOWADMINRESETPASSWORD`. Enabled by default. + ### Tyk Bootstrap Configurations To enable [bootstrapping](#bootstrapping), set `global.components.bootstrap` to `true`. It would run [tyk-k8s-bootstrap](https://github.com/TykTechnologies/tyk-k8s-bootstrap) to bootstrap `tyk-stack` and to create Kubernetes secrets that can be utilized in Tyk Operator and Tyk Developer Portal. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md index 3d22f1e621..6700190c04 100644 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md +++ b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md @@ -93,7 +93,7 @@ If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions] docker pull tykio/tyk-dashboard:v5.7.0 ``` - Helm charts - - [tyk-charts v2.2.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.1.md" >}}) + - [tyk-charts v2.2.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.2.md" >}}) ### Changelog {#Changelog-v5.7.0} + -### Release Highlights +### X.Y.Z Release Notes + +#### Release Date DD Mon YYYY <> + +#### Release Highlights -### Breaking Changes +#### Breaking Changes This release has no breaking changes. - - + -### Dependencies {#dependencies-X.Y.Z} +#### Dependencies {#dependencies-X.Y.Z} -#### Compatibility Matrix For Tyk Components +##### Compatibility Matrix For Tyk Components There are no deprecations in this release. - -### Upgrade instructions +#### Upgrade instructions -### Downloads +#### Downloads - <> - Helm chart - TBP (To Be Published separately after the release) -### Changelog {#Changelog-vX.Y.Z} +#### Changelog {#Changelog-vX.Y.Z} -#### Added +##### Added -#### Community Contributions +##### Community Contributions There are no breaking changes in this release -### Downloads +#### Downloads - [latest version of Mserv](https://github.com/TykTechnologies/mserv/releases/latest) -### Deprecations +#### Deprecations There are no deprecations in this release -### Changelog {#Changelog-v1.23.0} +#### Changelog {#Changelog-v1.23.0} -#### Added +##### Added + +**This page contains all release notes for Dashboard displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 5.7 Release Notes + +### 5.7.0 Release Notes + +#### Release Date 03 December 2024 + +#### Release Highlights + +We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0" >}}) below. + +##### Tyk Streams can be configured through Tyk Dashboard + +With this release we are adding a possibility for users to configure their Stream & Events APIs using Tyk Dashboard. +The new API designer leads users step-by-step to create a new Stream configuration easily. Pre-filled stream configurations for different inputs and outputs make it easy to make sure that the Stream is configured correctly. + +##### Improved Audit Log Management + +Tyk 5.7.0 enhances Audit Log management with new features designed for efficiency and security. Users can now store Dashboard Audit Logs in a database for persistent retention and access them via the new /audit-logs API, which supports advanced filtering by attributes like action, IP, status, and user. Additionally, a dedicated Audit Log RBAC group ensures secure access to sensitive log data. These improvements simplify monitoring and compliance workflows, particularly in containerized environments. + +#### Breaking Changes + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.7.0} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.7.0 | MDCB v2.7.2 | MDCB v2.5.1 | +| | Operator v1.1.0 | Operator v0.17 | +| | Sync v2.0.1 | Sync v1.4.3 | +| | Helm Chart v2.2 | Helm all versions | +| | EDP v1.12 | EDP all versions | +| | Pump v1.11.1 | Pump all versions | +| | TIB (if using standalone) v1.6.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.7.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). + +Additionally, SQLite has reached its End of Life in this release, enabling a fully static, CGO-free Tyk Dashboard optimised for RHEL8. Sqlite was previously recommended only to be used in basic proofs of concept. Now, for such scenarios and for production, we recommend migrating to PostgreSQL or MongoDB for better scalability and support. + + +#### Upgrade instructions {#upgrade-5.7.0} +If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.7.0) + - ```bash + docker pull tykio/tyk-dashboard:v5.7.0 + ``` +- Helm charts + - [tyk-charts v2.2.0]({{< ref "developer-support/release-notes/helm-chart#220-release-notes" >}}) + +#### Changelog {#Changelog-v5.7.0} + +##### Added + +
      +
    • +
      +Added confirmation prompt for Stream deletion + +Introduced a confirmation prompt when deleting a stream, notifying users that this action will stop all data streaming and cannot be undone. This change ensures users are fully aware of the impact before proceeding with deletion. +
      +
    • +
    • +
      +Displayed Streaming API in API overview table + +Added "Streams" as an API type in the API Overview table, making it easier for API developers to identify APIs categorised as Streams & Events. +
      +
    • +
    • +
      +Implemented logic for config framework selection in Streaming API creation + +Added logic for the Streaming API creation process, allowing users to select config frameworks for inputs, processors, and outputs. An 'Advanced' option is also available, which leaves the code editor empty while generating and displaying the YAML Bento config based on the user's selections. +
      +
    • +
    • +
      +Enhanced info messages for securing Streaming & Events APIs in policies & keys + +Included new info messages and tooltips in the Policies & Keys section to guide users on securing Streaming & Events APIs. Updated messaging clarifies the combination of API types and revised copy in the Global Rate Limiting and Quota sections to better explain usage limits for keys and plans. +
      +
    • +
    • +
      +Enabled URL view and copy functionality in external playgrounds tab + +Enabled URL view and copy functionality in the External Playgrounds tab, supporting scenarios with multiple organisations and URLs for playgrounds. +
      +
    • +
    • +
      +Introduced /streams endpoint to Tyk Dashboard API + +Rolled out the `/streams` endpoint to the Tyk Dashboard API, dedicated to creating Stream and Events APIs in Tyk Streams. Documentation for the endpoint and its methods is available in the Tyk Docs. +
      +
    • +
    • +
      +Split Streaming API into new type in API designer + +Separated Streaming API into its own type in the API Designer, introducing a new selection card for easier creation and configuration. Navigation enhancements, including a shortcut menu item, provide quicker access to the streaming configuration UI. +
      +
    • +
    • +
      +Integrated step-by-step UI for Config framework selection in Streaming API creation + +Developed a step-by-step UI for Streaming API creation, enabling users to select a config framework for inputs, processors, and outputs. The dynamic wizard steps are integrated into the Tyk UI library to prefill configurations based on selections and prevent the combination of 'Custom' with other frameworks. +
      +
    • +
    • +
      +Easily contact Tyk Support during Tyk Cloud trial + +Introduced a form on the Tyk Dashboard that allows users to easily contact Tyk support during their trial period. +
      +
    • +
    • +
      +Support for JWE in OIDC SSO + +We have enhanced security for customers in highly regulated industries by introducing JSON Web Encryption (JWE) support for OIDC single sign-on (SSO). This ensures that tokens used in authentication flows are securely encrypted, providing an additional layer of protection. + +[Setup guide for JWE OIDC SSO]({{< ref "tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth" >}}) +
      +
    • +
    • +
      +Store Audit Logs in a Database + +Users can now choose to store Dashboard Audit Logs directly in a database, enabling efficient and reliable log storage. This feature is particularly beneficial for organizations needing persistent audit log retention to meet compliance requirements or for forensic purposes. +
      +
    • +
    • +
      +Access Audit Logs via /audit-logs endpoint + +A new API endpoint, `/audit-logs`, has been introduced to provide programmatic access to audit logs stored in database. This allows users to retrieve, filter, and analyze logs more effectively. The API supports filtering logs by key attributes like action, IP address, URL accessed, date range, user, and page number. + +For detail usage of the `/audit-logs` endpoint, please see [Dashboard API documentation]({{< ref "tyk-dashboard-api" >}}). +
      +
    • +
    • +
      +New Role-Based Access Control (RBAC) for Audit Logs + +To secure access to audit logs, we’ve added a new Audit Log RBAC group. This ensures that only authorized users can view or retrieve sensitive log information. Administrators can assign this permission as part of their security and compliance strategy. +
      +
    • +
    + +##### Changed + +
      +
    • +
      +Removed AJV validation for Streams config editor + +Eliminated AJV validation in the Streams Config Editor to prevent false positives on valid YAML configurations. The frontend now solely checks the YAML structure, providing users with greater flexibility without enforcing strict Bento-specific schema rules +
      +
    • +
    • +
      +Hide unnecessary field from API Designer page for Streams + +Removed an unnecessary field from the API Designer page under the Streams section to enhance clarity. This update impacts the Event Handlers, Detailed Activity Logs, Caching, and Endpoints tabs. +
      +
    • +
    • +
      +Automatic configuration of request validation for path-level parameters during import of OpenAPI description + +Tyk will now detect path-level parameters in the OpenAPI description and can be set to enable and configure the [Request Validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-oas" >}}) middleware automatically for these. Previously this automatic detection only worked for method-level parameters in the OpenAPI description. +
      +
    • +
    • +
      +Deprecated SQLite support from Dashboard for RHEL8 compatibility + +Removed SQLite support to enhance portability and security, ensuring the released binary can now be built statically and no longer relies on system libraries. This change supports continued compatibility with RHEL8. +
      +
    • +
    • +
      +Deprecated External OAuth and OpenID Connect Options in Tyk Dashboard + +The External OAuth and OpenID Connect authentication options have been deprecated in the Tyk Dashboard. Users are advised to utilize JWT Auth with external IDPs for a more complete integration, while existing functionality remains operational to avoid breaking changes. +
      +
    • +
    • +
      +Updated NPM package dependencies + +Updated NPM package dependencies of Dashboard, to address security vulnerabilities. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Fixed navigation issue with "Back to APIs Page" Button on Streams API page + +Resolved an issue where the "Back to APIs Page" button was unresponsive on the Streams API page. The button now correctly redirects users to the main APIs page for all API types. +
      +
    • +
    • +
      +Resolved search box limitation on Tyk OAS and Streams API pages + +Corrected an issue where the search box on the Tyk OAS and Streams API pages only accepted a single character. Users can now input complete search terms, allowing for more accurate searches. +
      +
    • +
    • +
      +Unable to see all *user groups* in Dashboard dropdown + +Fixed an issue with the *user group* dropdown in the Dashboard UI, ensuring that all available user groups are displayed when creating a new user. +
      +
    • +
    + + + + +## 5.6 Release Notes + +### 5.6.1 Release Notes + +#### Release Date 18 October 2024 + +#### Release Highlights + +This is a version bump to align with Gateway v5.6.1, no changes have been implemented in this release. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.6.1} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.6.1 | MDCB v2.7.1 | MDCB v2.5.1 | +| | Operator v1.0.0 | Operator v0.17 | +| | Sync v2.0 | Sync v1.4.3 | +| | Helm Chart v2.1 | Helm all versions | +| | EDP v1.11 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.6.1} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.6.1} + +If you are upgrading to 5.6.1, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.6.1) +- ```bash + docker pull tykio/tyk-dashboard:v5.6.1 + ``` +- Helm charts + - [Tyk Charts v2.0.0]({{}}) + +#### Changelog {#Changelog-v5.6.1} + +No changes in this release. + + +--- +### 5.6.0 Release Notes + +#### Release Date 10 October 2024 + +#### Release Highlights + +We are thrilled to announce new updates and improvements in Tyk 5.6.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.6.0">}}) below. + +##### Per endpoint Rate Limiting for clients + +Now you can configure rate limits at the [endpoint level per client]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}), using new configuration options in the access key. Use Tyk's powerful [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) to create templates to set appropriate rate limits for your different categories of user. + +##### Go upgrade to 1.22 + +We’ve upgraded the Tyk Dashboard to Golang 1.22, bringing improved performance, better security, and enhanced stability to the core system. + +##### Strengthened Role-Based Access Controls (RBAC) to combat privilege escalation risks + +We’ve tightened up the rules that govern a user's ability to create admin users and to reset other users' passwords when using Tyk's RBAC function. Now, only super-admins can create new admins, admin roles can't be assigned to user groups, and only admin users can reset another user's password (and only within their Tyk organization). + +#### Breaking Changes + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.6.0} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.6.0 | MDCB v2.7.1 | MDCB v2.5.1 | +| | Operator v1.0.0 | Operator v0.17 | +| | Sync v2.0 | Sync v1.4.3 | +| | Helm Chart v2.1 | Helm all versions | +| | EDP v1.11 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.6.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + + +We are deprecating support for SQLite, External OAuth Middleware, and OpenID Connect (OIDC) Middleware in Tyk Dashboard to simplify the platform and enhance overall performance. These changes will take effect from 5.7.0. + +#### Why the Change? + +#### SQLite + +While useful for testing, SQLite is not designed for production environments. By focusing on PostgreSQL and MongoDB, we can provide users with more scalable and reliable options. + +#### External OAuth Middleware + +This feature serves a similar purpose to our JWT Authentication and may lead to confusion. We recommend transitioning to JWT Authentication for a more streamlined experience. + +#### OpenID Connect (OIDC) Middleware + +The low adoption of this option, along with its functional overlap with other supported authentication methods, prompts us to deprecate OIDC middleware to reduce complexity within the platform. We recommend users transition to JWT Authentication. + + +We encourage users to switch to the recommended alternatives. For more detailed information, please refer to the [Documentation](https://tyk.io/docs//api-management/authentication-authorization#use-openid-connect/) + + + + +#### Upgrade instructions {#upgrade-5.6.0} +If you are upgrading to 5.6.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.6.0) +- ```bash + docker pull tykio/tyk-dashboard:v5.6.0 + ``` +- Helm charts + - [tyk-charts v2.1.0]({{}}) + +#### Changelog {#Changelog-v5.6.0} + +##### Added + +
      +
    • +
      +Per endpoint client rate limiting + +Building on the [per-endpoint upstream rate limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have now added [per-endpoint client rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature allows for more granular control over client consumption of API resources by associating the rate limit with the access key, enabling you to manage and optimize API usage more effectively. +
      +
    • +
    + +##### Changed + + +
      +
    • +
      +Upgrade to Go 1.22 for Tyk Dashboard + +The Tyk Dashboard has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, and access to the latest features available in the new Golang release. +
      +
    • +
    • +
      +Improved documentation and schema for Tyk Dashboard API + +We have updated the swagger.yml schema for Tyk Dashboard API to reflect the latest changes in product endpoints, payloads, and responses. This update includes new fields and endpoints, improved examples, documentation adjustments, and fixes for schema issues. These enhancements aim to improve usability and ensure that the documentation accurately represents the current code state. +
      +
    • + +
    • +
      +Renamed GraphQL "Playground" tab to "Playgrounds" + +The "Playground" tab in the GraphQL API Designer has been renamed to "Playgrounds." This change consolidates access to both internal and external playgrounds within a single section, offering a more streamlined and intuitive experience for API design and testing. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Addressed some display issues in Dashboard Analytics and Classic Portal when using PostgreSQL storage + +- Resolved an issue where HTTP 429 status codes were not being displayed on the Activity Overview page. +- Fixed portal graphs by adding a default "day" grouping resolution to the query. +- Corrected issues with the Error Breakdown related to date parameters, ensuring accurate date handling and display. + +
      +
    • + +
    • +
      +Dashboard didn't display correctly if more than 10 policies assigned to a key + +We have resolved an issue where the Keys page would display a blank screen if a key was associated with more than 10 policies. The UI has been fixed to display the page properly, regardless of the number of policies attached to a key. + +
      +
    • + +
    • +
      +Dashboard UI did not prevent multiple versions of a Tyk Classic API from being assigned to a policy + +When working with Tyk Classic APIs, you cannot permit access to multiple versions of the same API from a single policy. We have fixed an issue in the Dashboard UI where users were able to attach multiple versions to a policy leading to an unusable policy. The UI now correctly prevents the addition of multiple versions of an API to a single policy. + +
      +
    • + +
    • +
      +Dashboard didn't correctly record scope to policy mappings for JWTs + +We have fixed an issue in the Dashboard UI when assigning multiple claim to policy mappings while configuring JWT auth for an API. The scope name was incorrectly recorded instead of the policy ID for the second and subsequent JWT scope mappings. The UI now correctly associates the defined claim with the appropriate policy, ensuring accurate JWT scope to policy mappings. + +
      +
    • + +
    • +
      +Gateway logs page not displaying correctly + +We have fixed an issue in the Monitoring section of the Dashboard UI where the *Gateway logs* page was not displaying correctly. The page is now rendered properly, ensuring users with appropriate permissions can view and manage *Gateway logs* as expected. + +
      +
    • + +
    + +--- + +## 5.5 Release Notes + +### 5.5.2 Release Notes + +#### Release Date 03 October 2024 + +#### Release Highlights + +This release replaces Tyk Dashboard 5.5.1 which was accidentally released as a non-distroless image. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.5.2} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.2 | MDCB v2.7 | MDCB v2.5.1 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v2.0.0 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.2} + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.5.2} + +If you are upgrading to 5.5.2, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.2) +- ```bash + docker pull tykio/tyk-dashboard:v5.5.2 + ``` +- Helm charts + - [Tyk Charts v2.0.0]({{}}) + +#### Changelog {#Changelog-v5.5.2} + +No changes in this release. + +--- + +### 5.5.1 Release Notes + +#### Release Date 26 September 2024 + +#### Release Highlights + +This is a version bump to align with Gateway v5.5.1, no changes have been implemented in this release. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.5.1} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.1 | MDCB v2.7 | MDCB v2.5.1 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v2.0.0 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.1} + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.5.1} + +If you are upgrading to 5.5.1, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.1) +- ```bash + docker pull tykio/tyk-dashboard:v5.5.1 + ``` +- Helm charts + - [Tyk Charts v2.0.0]({{}}) + +#### Changelog {#Changelog-v5.5.1} + +No changes in this release. + +--- + +### 5.5.0 Release Notes + +#### Release Date 12 August 2024 + +#### Release Highlights + +We are excited to announce Tyk Dashboard 5.5, featuring a brand-new dashboard identity, advanced rate-limiting capabilities, and enhanced security options. For a comprehensive list of changes, please refer to the [changelog]({{< ref "#Changelog-v5.5.0">}}) below. + +##### New Tyk brand identity + +Experience a refreshed and modern look with our updated brand identity. The new design enhances usability and provides a cleaner, more intuitive interface for managing your APIs. + +##### Per Endpoint Rate Limiting + +Now configure rate limits at the endpoint level for both [Tyk OAS]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas" >}}) and [Tyk Classic APIs]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic" >}}), providing granular protection for upstream services against overloading and abuse. + +#### Breaking Changes + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.5.0} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.0 | MDCB v2.7 | MDCB v2.5.1 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v1.6 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + + +#### Upgrade instructions {#upgrade-5.5.0} +If you are upgrading to 5.5.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.0) +- ```bash + docker pull tykio/tyk-dashboard:v5.5.0 + ``` +- Helm charts + - [tyk-charts v1.6]({{< ref "/developer-support/release-notes/helm-chart#160-release-notes" >}}) + +#### Changelog {#Changelog-v5.5.0} + +##### Added + +
      +
    • +
      +Configure the new endpoint level rate limits in API Designer + +Rate limits can now be configured at the endpoint level in Tyk OAS and Tyk Classic API definitions. Configure these new more granular controls from the API Designer. +
      +
    • +
    • +
      +Improved handling of requests to non-existent versions of APIs when using URL path versioning + +When configuring API versioning settings for Tyk OAS APIs, you can now set a *Version Identifier Pattern* when using the URL path to indicate the API version (for example `/v1/my-api`). This will be used to avoid accidentally stripping part of the target URL (and failed upstream proxy) if the client doesn't provide any version identifier. If you're using Tyk Classic APIs you can set the `url_versioning_pattern` field in the API definition using the raw API editor. +
      +
    • +
    • +
      +Improved schema editor functionality for GQL APIs + +We've expanded the functionality of the schema editor for GQL APIs. Users can now easily import their schema from a file, export it, or quickly clean the entire editor if a mistake is made. +
      +
    • +
    + +##### Changed + +
      +
    • +
      +Updated NPM packages dependencies + +Updated npm package dependencies of Dashboard, to address security vulnerabilities. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Resolved an issue seen when using reponse plugins with Tyk OAS APIs + +Addressed a problem where Response Plugins were not being invoked for Tyk OAS APIs. +
      +
    • +
    • +
      +Save API button now visible for SSO users + +Addressed an issue for SSO users where user permissions were not correctly applied. This led to the Save API button not being visible to all appropriate users in the API Designer. +
      +
    • +
    • +
      +Public playground schema exposure fixed with Introspection disabled + +Resolved an issue where the Public GQL Playground displayed schema information despite introspection being turned off. Now, schema details are hidden unless valid authentication credentials are provided, ensuring a secure and consistent user experience. +
      +
    • +
    • +
      + Resolved issue with no analytics data showing on Endpoint Popularity page + +Addressed an issue where the Dashboard displayed a blank pane when accessing the Activity by Endpoint page after upgrading to Tyk 5.3.1. +
      +
    • +
    + +##### Security Fixes + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + +--- + +## 5.4 Release Notes +### 5.4.0 Release Notes +#### Release Date 2 July 2024 +#### Breaking Changes + +**Attention: Please read this section carefully** +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.4.0} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.4.0 | MDCB v2.6.0 | MDCB v2.5.1 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5.0 | Sync v1.4.3 | +| | Helm Chart v1.5.0 | Helm all versions | +| | EDP v1.10.0 | EDP all versions | +| | Pump v1.10.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.4.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + + +#### Upgrade instructions {#upgrade-5.4.0} +If you are upgrading to 5.4.0, please follow the detailed [upgrade instructions](#upgrading-tyk). +Add upgrade steps here if necessary. + +#### Release Highlights + +We're thrilled to introduce exciting enhancements in Tyk Dashboard 5.4, aimed at improving your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the change log below. + +#### Event handling for Tyk OAS APIs + +We’ve added support for you to register webhooks with your Tyk OAS APIs so that you can handle events triggered by the Gateway, including circuit breaker and quota expiry. You can also assign webhooks to be fired when using the new smoothing rate limiter to notify your systems of ongoing traffic spikes. For more details see the [documentation]({{< ref "basic-config-and-security/report-monitor-trigger-events/webhooks" >}}). + +#### Enhanced Header Handling in GraphQL APIs + +Introduced a features object in API definitions for GQL APIs, including the `use_immutable_headers` attribute. This allows advanced header control, enabling users to add new headers, rewrite existing ones, and selectively remove specific headers. Existing APIs will have this attribute set to `false` by default, ensuring no change in behavior. For new APIs, this attribute is true by default, facilitating smoother migration and maintaining backward compatibility. + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.4.0) +- ```bash + docker pull tykio/tyk-dashboard:v5.4.0 + ``` +- Helm charts + - [tyk-charts v1.5]({{< ref "/developer-support/release-notes/helm-chart#150-release-notes" >}}) + +#### Changelog {#Changelog-v5.4.0} + +##### Added + +
      +
    • +
      +Introduced Rate Limit Smoothing for Redis Rate Limiter + +Implemented a [rate limit smoothing mechanism]({{< ref "getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) to gradually adjust the rate limit as the request rate increases and decreases between an intermediate threshold and the maximum rate limit. New `RateLimitSmoothingUp` and `RateLimitSmoothingDown` events will be triggered as this smoothing occurs, supporting auto-scaling of upstream capacity. The smoothing process gradually increases the rate, thereby unblocking clients that exceed the current request rate in a staggered manner. +
      +
    • +
    • +
      +Updated API designer toolbar for GraphQL and Universal Data Graph + +Revamped the API designer toolbar for GraphQL and Universal Data Graph, consolidating all relevant actions for each API type under a single menu dropdown for improved usability. +
      +
    • +
    • +
      +Updated API designer toolbar for HTTP and TCP + +Revamped the API designer toolbar for HTTP and TCP, consolidating all relevant actions for each API type under a single menu dropdown for improved usability. +
      +
    • +
    • +
      +New Tyk OAS features + +We’ve added some more features to the Tyk OAS API, moving closer to full parity with Tyk Classic. In this release we’ve added controls that allow you: to enable or prevent generation of traffic logs at the API-level; to enable or prevent the availability of session context to middleware and to pin public key certificates to an API. We’ve also added the facility to register webhooks that will be fired in response to Gateway events. +
      +
    • +
    • +
      +New Dashboard API endpoints + +We have added a new `/oas/dry-run` endpoint to the Tyk Dashboard API. This uses the Dashboard’s logic to create or update a Tyk OAS API definition using an OpenAPI document without instantiating the API on the Tyk platform. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Fixed template inheritance issue in API Designer + +Resolved a bug in the API Designer where certain properties, such as `use_immutable_headers`, were not correctly inherited from the new API template. This fix ensures all default settings from the template are properly applied when creating a new API. +
      +
    • +
    • +
      +Corrected assignment issue for API Templates in Tyk organizations + +Fixed an issue where API Templates were not correctly assigned to Tyk Organizations, preventing potential accidental sharing of secret data between Organizations through the use of incorrect templates. +
      +
    • +
    • +
      +Addressed keyboard shortcut issues in Universal Data Graph URL field configuration + +Fixed an issue where common keyboard shortcuts (Cmd + X, A, C, V) were not functioning correctly when configuring the URL field for a UDG data source. +
      +
    • +
    • +
      +Streamlined data source import endpoint in Dashboard API + +Improved the data source import endpoint in the Dashboard API by removing the need for users to convert OpenAPI/AsyncAPI documents into strings before submission. Users can now provide the documents directly, enhancing the overall user experience. +
      +
    • +
    • +
      +Enhanced password reset security + +Modified default OPA rules to fix an issue where admins were unable to reset their own password. Tyk Dashboard clients using custom OPA rules should update their rule set accordingly. Contact your assigned Tyk representative for assistance. +
      +
    • +
    • +
      +Corrected filtering for Dashboard Analytics with PostgreSQL + +Addressed an issue in the api/usage endpoint where Dashboard analytics with PostgreSQL returned unfiltered results. The endpoint now correctly filters results, eliminating the need for duplicating parameters to handle multiple tags. +
      +
    • +
    • +
      +Minor Dashboard UI fixes and improvements + +We have made some improvements to the wording used in the Dashboard user interface and fixed some minor usability issues. +
      +
    • +
    + +##### Security Fixes + +
      +
    • +
      +High priority CVEs fixed +Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + +--- + + + +## 5.3 Release Notes +### 5.3.8 Release Notes + +#### Release Date 07 November 2024 + +#### Release Highlights +This release focuses mainly on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.8">}}) below. + +#### Breaking Changes + +This release has no breaking changes. + +#### Dependencies {#dependencies-5.3.8} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.8 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.8} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. + +#### Upgrade Instructions +If you are upgrading to 5.3.8, please follow the detailed [upgrade instructions](#upgrading-tyk). + + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.8) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.8 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{< ref "developer-support/release-notes/helm-chart#200-release-notes" >}}) + +#### Changelog {#Changelog-v5.3.8} + +##### Added + +
      +
    • +
      +Advanced notice of deprecation of dedicated External OAuth and OpenID Connect auth options + +The UI now displays a deprecation notice for the dedicated [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect (OIDC)]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}) authentication mechanisms. This provides advanced notification that these authentication options will be deprecated in version 5.7.0. Users are advised to migrate to the [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method, which supports integration with both OAuth and OIDC providers, in preparation for future upgrade. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +User Group dropdown limitations in Dashboard + +Fixed an issue with the user group dropdown in the Dashboard UI, ensuring that all available user groups are displayed when creating a new user. +
      +
    • +
    • +
      +Rate Limiting settings not saved when Upstream Certificates enabled for Tyk OAS API + +Fixed an issue in the Tyk OAS API Designer where Rate Limiting settings were not saved when Upstream Certificates were enabled. This fix ensures that both Rate Limits and Upstream Certificates configurations can now be saved together +
      +
    • +
    + +--- +### 5.3.7 Release Notes + +#### Release Date 22 October 2024 + +#### Release Highlights + +This is a version bump to align with Gateway v5.3.7, no changes have been implemented in this release. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.3.7} + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.7 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.7} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.3.7} + +If you are upgrading to 5.3.7, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.7) +- ```bash + docker pull tykio/tyk-dashboard:v5.3.7 + ``` +- Helm charts + - [Tyk Charts v2.0.0]({{}}) + +#### Changelog {#Changelog-v5.3.7} + +No changes in this release. + +--- + +### 5.3.6 Release Notes + +#### Release Date 04 October 2024 + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.6">}}) below. + +#### Breaking Changes +**Attention**: Please read this section carefully. +Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in the image. + +If moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +When upgrading to 5.3.6, please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Dependencies {#dependencies-5.3.6} + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.6). + + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.6). + + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.6 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.6} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.6) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.6 + ``` +- Helm charts + - [tyk-charts v2.0]({{< ref "developer-support/release-notes/helm-chart#200-release-notes" >}}) + +#### Changelog {#Changelog-v5.3.6} + + +##### Changed + +
      +
    • +
      +Upgrade to Go 1.22 for Tyk Dashboard +The Tyk Dashboard has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, and access to the latest features available in the new Golang release. +
      +
    • +
    • +
      + Introducing Distroless Containers for Tyk Dashboard (2024 LTS) + + In this release, we've enhanced the security of the Tyk Dashboard image by changing the build process to support [distroless](https://github.com/GoogleContainerTools/distroless) containers. This significant update addresses critical CVEs associated with Debian, ensuring a more secure and minimal runtime environment. Distroless containers reduce the attack surface by eliminating unnecessary packages, which bolsters the security of your deployments. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Gateway secret could be exposed in debug logs + + +Resolved an issue where the Gateway secret was inadvertently included in the log generated by the Dashboard for a call to the `/api/keys` endpoint when in debug mode. This issue has been fixed to prevent sensitive information from appearing in system logs. +
      +
    • + +
    • +
      +Dashboard didn't display correctly if more than 10 policies assigned to a key + + +We have resolved an issue where the Keys page would display a blank screen if a key was associated with more than 10 policies. The UI has been fixed to display the page properly, regardless of the number of policies attached to a key. +
      +
    • + +
    • +
      +Dashboard UI did not prevent multiple versions of a Tyk Classic API from being assigned to a policy + +When working with Tyk Classic APIs, you cannot permit access to multiple versions of the same API from a single policy. We have fixed an issue in the Dashboard UI where users were able to attach multiple versions to a policy leading to an unusable policy. The UI now correctly prevents the addition of multiple versions of an API to a single policy. +
      +
    • + +
    • +
      +Dashboard didn't correctly record scope to policy mappings for JWTs + + +We have fixed an issue in the Dashboard UI when assigning multiple claim to policy mappings while configuring JWT auth for an API. The scope name was incorrectly recorded instead of the policy ID for the second and subsequent JWT scope mappings. The UI now correctly associates the defined claim with the appropriate policy, ensuring accurate JWT scope to policy mappings. +
      +
    • + +
    + +##### Security Fixes + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high-priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: +- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) +
      +
    • + +
    + +--- + +### 5.3.5 Release Notes + + +#### Release Date 26 September 2024 + + +#### Release Highlights + +This is a version bump to align with Gateway v5.3.5, no changes have been implemented in this release. + +#### Breaking Changes + +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + + +#### Deprecations + +There are no deprecations in this release. + + +#### Upgrade Instructions + +When upgrading to 5.3.5, please follow the [detailed upgrade instructions](#upgrading-tyk). + + +#### Dependencies {#dependencies-5.3.5} + + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.5). + + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.5). + + +##### Compatibility Matrix For Tyk Components + + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.5| MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.5} + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Downloads + +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.5) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.5 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{}}) + +#### Changelog {#Changelog-v5.3.5} + + No changes in this release. + +--- + +### 5.3.4 Release Notes + +#### Release Date August 26 2024 + +#### Breaking Changes +**Attention**: Please read this section carefully. +There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +When upgrading to 5.3.4 please follow the [detailed upgrade instructions](#upgrading-tyk). + + +#### Release Highlights +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.4">}}) below. + +#### Dependencies {#dependencies-5.3.0} + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). + + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). + + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.4 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.4} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.4) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.4 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) + +#### Changelog {#Changelog-v5.3.4} + + +##### Fixed + +
      +
    • +
      +Fixed display issue for API stats + +Fixed API’s stats not being shown when adding 2 or more tags in the Activity page and using Postgres +
      +
    • + +
    • +
      +Fixed display issue of 429 status codes on the Activity page + +Fixed 429 status codes not being shown on the Activity page when using Postgres +
      +
    • + +
    • +
      +Fixed display of graphs and requests counter on Portal + +Fixed wrong graphs and incorrect requests counter on Portal when using Postgres +
      +
    • + +
    • +
      +Fixed Error Breakdown display issues with dates + +Fixed Error Breakdown issues with dates (it was showing errors that happened on different dates than the one that was actually displayed) +
      +
    • +
    + +--- +### 5.3.3 Release Notes + +#### Release Date August 2nd 2024 + +#### Breaking Changes +**Attention**: Please read this section carefully. +There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +When upgrading to 5.3.3 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Release Highlights + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.3">}}) below. + +#### Dependencies {#dependencies-5.3.0} + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). + + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). + + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.3 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.3} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.3) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.3 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) + +#### Changelog {#Changelog-v5.3.3} + + +##### Added + +
      +
    • +
      +Corrected ordering of Tyk OAS API paths to prevent Middleware misapplication + +Fixed an issue where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered, preventing this middleware misapplication and ensuring both the HTTP method and URL match accurately. +
      +
    • +
    + +--- + +##### Fixed + +
      +
    • +
      +Save API button now visible for all users + +Addressed an issue in SSO where user permissions were not correctly applied, ensuring the Save API button is visible to all users in the Dashboard UI. +
      +
    • +
    • +
      +Dashboard blank page issue when retrieving key for API with mTLS and dynamic JWT Auth fixed + +Resolved a bug causing the Dashboard UI to display a blank page when creating a key for an API using static mTLS with dynamic JWT authentication. +
      +
    • +
    • +
      +Empty Endpoint popularity page issue resolved in version 5.3.1 + +Addressed an issue where the Dashboard displayed an empty page when accessing Activity by Endpoint information after upgrading to Tyk 5.3.1. Users can now see all necessary information. +
      +
    • +
    + +--- + +### 5.3.2 Release Notes + + +#### Release Date 5th June 2024 + + +#### Breaking Changes +**Attention**: Please read this section carefully. + + +There are no breaking changes in this release, however if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + + +#### Deprecations +There are no deprecations in this release. + + +#### Upgrade Instructions +When upgrading to 5.3.2 please follow the [detailed upgrade instructions](#upgrading-tyk). + + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.2">}}) below. + + +#### Dependencies {#dependencies-5.3.0} + + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.2). + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.2). + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.2 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.2} + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.2) + - ```bash + docker pull tykio/tyk-dashboard:v5.3.2 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) + + +#### Changelog {#Changelog-v5.3.2} + + +##### Fixed + +
      +
    • +
      +Fixed Dashboard Analytics for PostgreSQL + +Resolved an issue in the `api/usage` endpoint where the Dashboard with PostgreSQL integration returned unfiltered results when one valid tag was used. Corrected the need for duplicating the same parameter as a workaround for filtering by multiple tags. Results are now properly filtered as expected, improving the accuracy and reliability of analytics data. +
      +
    • +
    • +
      +Enhanced Password Reset security + +Modified default OPA rules to prevent unauthorized admins from modifying other admins' passwords, mitigating potential 'rogue admin' behavior. Tyk Dashboard clients using custom OPA rules should update their rule set accordingly. Contact your assigned Tyk representative for assistance. +
      +
    • +
    • +
      +Fixed Universal Data Graph Schema Editor Import Issue + +Resolved an issue in the GQL schema editor for Data Graphs, where users couldn't utilize the 'Import Schema' button. Now, it's possible to import files containing GQL schemas into the Dashboard. +
      +
    • +
    • +
      +Enhanced Dashboard UI language + +Adjusted wording in Tyk's Dashboard UI to ensure inclusivity and clarity, removing any potentially oppressive language. +
      +
    • +
    • +
      +API Template not associated with Tyk Organization + +Fixed an issue where API Templates were not correctly assigned to Tyk Organizations allowing the potential for accidental sharing of secret data between Organizations through use of the incorrect template. +
      +
    • +
    • +
      +Added control over access to context variables from middleware when using Tyk OAS APIs + +Addressed a potential issue when working with Tyk OAS APIs where request context variables are automatically made available to relevant Tyk and custom middleware. We have introduced a control in the Tyk OAS API definition to disable this access if required. +
      +
    • +
    • +
      +Resolved PostgreSQL Dashboard Analytics issue + +Fixed an issue in the api/usage endpoint where Dashboard+Postgres returned unfiltered results with one valid tag, requiring duplication of the parameter as a workaround for multiple tags. Analytics now correctly filter results as expected. +
      +
    • +
    + +--- + +### 5.3.1 Release Notes + +#### Release Date 24 April 2024 + +#### Breaking Changes +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +When upgrading to 5.3.1, please follow the [detailed upgrade instructions](#upgrading-tyk). + + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.1">}}) below. + +#### Dependencies {#dependencies-5.3.0} + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.1). + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.1 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.1} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.1) +- ```bash + docker pull tykio/tyk-dashboard:v5.3.1 + ``` +- Helm charts + - [tyk-charts v1.3]({{< ref "developer-support/release-notes/helm-chart#130-release-notes" >}}) + +#### Changelog {#Changelog-v5.3.1} + +##### Fixed + +
      +
    • +
      +Improved security: user search method transitioned to POST + +Improved the behavior of the Dashboard when searching for users to avoid transmitting sensitive information (user email addresses) in the request query parameters. Deprecated the `GET` method for the `/api/users/search` endpoint in favor of a `POST` method with the same logic but with parameters supplied in the request body. +
      +
    • +
    • +
      +Improved security: removal of Access-Control-Allow-Credentials header + +As Tyk Dashboard and Tyk Classic Portal do not accept cross origin requests we have removed the `Access-Control-Allow-Credentials` header from Dashboard API responses to prevent any potential misuse of the header by attackers. This allows simplification of the web application's security configuration. +
      +
    • +
    • +
      +Improved security: mitigation against brute force attacks based on login response time analysis + +Implemented a randomised delay to obscure login response times, mitigating brute force attacks that rely on response time analysis. +
      +
    • +
    • +
      +Improved security: now unable to log into deleted Orgs + +Fixed a bug where a user was still able to log into an Organization on the Tyk Dashboard after that Organization had been deleted. Now, when an Organization is deleted, it will not be offered as an option when logging in. +
      +
    • +
    • +
      +Improved security: suppressed accidental exposure of access keys to stdout + +Fixed an issue where access keys could accidentally also be printed to the Dashboard's stdout when a call was made to `/api/keys` to retrieve the keys. This has now been suppressed. +
      +
    • +
    • +
      +Endpoint Designer does not handle wildcards in GraphQL policy allow/block lists + +The Endpoint Designer did not correctly display a GraphQL policy's allow or block list if a wildcard character (`*`) was used in the list's definition. This has been fixed and now, if the wildcard (`*`) is present in the allow/block list definition, the UI correctly displays the list of allowed/blocked fields. +
      +
    • +
    • +
      +Open Policy Agent editor fails to open on Windows platform + +Fixed an issue that was preventing the OPA editor from being visible using the keyboard shortcut when using Microsoft Windows. +
      +
    • +
    • +
      +Common keyboard shortcuts not working with UDG URL field in Data Graph Designer + +Fixed an issue where common keyboard shortcuts (Cmd + X, A, C, V) were not working correctly when configuring the URL field for a UDG data source. +
      +
    • +
    • +
      +Unexplained HTTP 400 error reported in Tyk OAS API Designer + +Fixed an issue in the Tyk OAS API Designer where there was no input validation of the OAuth Introspection URL. The Gateway reported an HTTP 400 error when attempting to save an API with an illegal value, however the API Designer did not guide the user to the source of the error. Now there is automatic validation of the text entered in the Introspection URL field. +
      +
    • +
    • +
      +Replaced the text editor used in Tyk Dashboard to address cursor issues + +Fixed an issue with the text editor in the Tyk OAS API Designer where the cursor was misaligned with where characters would be entered. We have replaced the text editor module throughout the Tyk Dashboard to use a more modern, supported library. +
      +
    • +
    • +
      +Activity by Graph chart sometimes had display issues + +The 'Top 5 Errors by Graph' bar chart in the Activity by Graph dashboard experienced display issues with long graph names and sometimes showed empty bars. This has been resolved, and the chart now displays accurately. +
      +
    • +
    • +
      +Analytics screens fail when too many requests are aggregated + +Fixed a bug where some Tyk Dashboard analytics screens stopped working when the analytics aggregates collection grew too large. +
      +
    • +
    • +
      +Unable to delete APIs from DocumentDB storage + +In [Tyk 5.2.2]({{< ref "#Changelog-v5.2.2" >}}) we fixed an issue when using MongoDB and Tyk Security Policies where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This introduced an unintended side-effect for users of DocumentDB such that they were unable to delete APIs from the persistent storage. We identified that this was due to the use of the `$expr` operator in the solution - and discovered that this is supported by MongoDB but not by DocumentDB. We have now reimplemented the fix and removed the limitation introduced for DocumentDB users. +
      +
    • +
    • +
      +Unable to clear the API cache in distributed data plane Gateways from the control plane Dashboard + +Addressed a bug where clearing the API cache from the Tyk Dashboard failed to invalidate the cache in distributed data plane gateways. +
      +
    • +
    + +--- + +### 5.3.0 Release Notes + +#### Release Date 5 April 2024 + +#### Deployment Options for Tyk Dashboard + +##### Tyk Cloud +Tyk Dashboard 5.3.0 is available on Tyk Cloud since 5th April 2024. + +##### Self-Managed +This release is ready for installation on your own infrastructure. + +#### Breaking Changes + +**Attention: Please read this section carefully.** + +##### Tyk OAS APIs Compatibility Caveats {#TykOAS-v5.3.0} + +This upgrade transitions Tyk OAS APIs out of [Early Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}). + +- **Out of Early access** + - This means that from now on, all Tyk OAS APIs will be backwards compatible and in case of a downgrade from 5.3.X to 5.3.0, the Tyk OAS API definitions will always work. +- **Not Backwards Compatible** + - Tyk OAS APIs in Tyk Dashboard v5.3.0 are not [backwards compatible](https://tinyurl.com/3xy966xn). This means that the new Tyk OAS API format used by Tyk Gateway/Dashboard v5.3.X does not work with older versions of Tyk Gateway/Dashboard, i.e. you cannot export these API definitions from a v5.3.X Tyk Dashboard and import to an earlier version. + - The upgrade of Tyk OAS API definitions is **not reversible**, i.e. you cannot use version 5.3.X Tyk OAS API definitions with an older version of Tyk Dashboard. + - This means that if you wish to downgrade or revert to your previous version of Tyk, you will need to restore these API definitions from a backup. Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed instructions on backup before upgrading to v5.3.0. + - When using MongoDB as your persistent data store, Tyk OAS APIs from v5.3.0 require a minimum version of MongoDB 5.0. + - If you are not using Tyk OAS APIs, Tyk will maintain backward compatibility standards. +- **Not Forward Compatible** + - Tyk OAS API Definitions prior to v5.3.0 are not [forward compatible](https://tinyurl.com/t3zz88ep) with Tyk Gateway v5.3.X. + - This means that any Tyk OAS APIs created in any previous release (4.1.0-5.2.x) cannot work with the new Tyk Dashboard v5.3.X without being migrated to its [latest format]({{}}). +- **MDCB deployment and Tyk OAS APIs** + - Tyk OAS APIs created in Tyk v5.3.0 will not be loaded by the data plane gateways if you are using MDCB v2.4 or older. This means that MDCB users already working with Tyk OAS APIs **must wait for the release of MDCB v2.5** before upgrading Tyk Gateway and Dashboard to v5.3.0. + - Tyk Dashboard v5.3.0 managing Tyk OAS APIs requires Tyk Gateway v5.3.0 and MDCB v2.5.X for proper functionality. Older versions of Tyk Gateway may experience compatibility issues with Tyk OAS API definitions from v5.3.0. +- **After upgrade (the good news)** + - If you had a Tyk OAS API prior to v5.3.0 then Tyk Dashboard will automatically update the API definition to [latest format]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}). + - This means that you do not have to do anything to make your Tyk OAS APIs compatible with the new 5.3.0 release as Tyk Dashboard will take care of that during start-up. + - As mentioned above, this upgrade of Tyk OAS API definitions is irreversible. + +**Important:** Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for essential instructions on how to backup before upgrading to v5.3.0 + +#### Dependencies {#dependencies-5.3.0} + + +With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database and recommend upgrading to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.0). + +##### Compatibility Matrix For Tyk Components + +| Dashboard Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.3.0 | MDCB v2.5 | MDCB v2.5 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.0} + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions {#upgrade-5.3.0} + +**The following steps are essential to follow before upgrading** + +1. For Self Managed deployments - Backup Your environment using the [usual guidance]({{}}) documented with every release (this includes backup config file and database). +2. For all deployments - Backup all your API definitions (Tyk OAS API and Classic Definitions): + - For Tyk Cloud deployments - To perform the backup please use our guide for [exporting APIs and policies]({{}}). + - For Self-Managed deployments - To perform the backup please use [Tyk Sync]({{}}). +4. Performing the upgrade - For all deployments, follow the instructions in the [upgrade guide](#upgrading-tyk) when upgrading Tyk. + +#### Release Highlights + +We are excited to announce the release of 5.3.0, packed with new features, improvements and bug fixes to enhance your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v5.3.0) below. + +##### Tyk OAS Feature Maturity + +Tyk OAS is now out of [Early Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}) as we have reached feature maturity. You are now able to make use of the majority of Tyk's features from your Tyk OAS APIs, so they are a credible alternative to the legacy Tyk Classic APIs. +From Tyk 5.3.0 we support the following features when using Tyk OAS APIs with Tyk Dashboard: +- Security + - All Tyk-supported client-gateway authentication methods including custom auth plugins + - Automatic configuration of authentication from the OpenAPI description + - Gateway-upstream mTLS + - CORS + +- API-level (global) middleware including: + - Response caching + - Custom plugins for PreAuth, Auth, PostAuth, Post and Response hooks + - API-level rate limits + - Request transformation - headers + - Response transformation - headers + - Service discovery + - Internal API + +- Endpoint-level (per-path) middleware including: + - Request validation - headers and body (automatically configurable from the OpenAPI description) + - Request transformation - method, headers and body + - Response transformation - headers and body + - URL rewrite and internal endpoints + - Mock responses (automatically configurable from the OpenAPI description) + - Response caching + - Custom Go Post-Plugin + - Request size limit + - Virtual endpoint + - Allow and block listing + - Do-not-track + - Circuit breakers + - Enforced timeouts + - Ignore authentication + +- Observability + - Open Telemetry tracing + - Detailed log recording (include payload in the logs) + - Do-not-track endpoint + +- Governance + - API Versioning + - API Categories + - API Ownership + +##### API Templates + +Exclusively for Tyk OAS APIs, we are pleased to announce the introduction of API Templates: an API governance feature provided to streamline the process of creating APIs. An API template is an asset managed by Tyk Dashboard that is used as the starting point - a blueprint - from which you can create a new Tyk OAS API definition. With templates you can standardize configuration of your APIs more easily, combining your service-specific OpenAPI descriptions with enterprise requirements such as health endpoints, caching and authorization. + +##### Enhanced User Permissions + + Introducing allow list in field-based permissions via the Dashboard specifically tailored for GraphQL APIs. Users can now define granular access control for API key holders based on types and fields from a GraphQL schema. This feature enhances security and flexibility in managing API access, providing a more tailored and secure experience for users. + + ##### Global Header Management + + We've introduced global header management specifically for UDG, simplifying header configuration across all data sources. Users can now effortlessly add, adjust, and delete multiple global headers, ensuring consistency and efficiency throughout API management, ultimately saving developers time and effort + +##### GraphQL focused analytics +We have made the first step towards bringing our users GraphQL-focused monitoring capabilities. Users can now gain valuable insights into error trends and usage patterns for GraphQL APIs, when storing graph analytics in SQL databases. With the addition of popularity and error bar charts, users can delve deeper into their data, facilitating optimization and troubleshooting efforts. + +##### Redis v7.x Compatibility +We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible with Redis v7.x. + +##### MongoDB v7.0.x Compatibility +We have upgraded `mongo-go` driver to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that both Tyk 5.0.x+ and Tyk 5.3 are compatible with MongoDB v7.0.x. + +#### Downloads +- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.0) +- ```bash + docker pull tykio/tyk-dashboard:v5.3.0 + ``` +- Helm charts + - [tyk-charts GH Repo](https://github.com/TykTechnologies/tyk-charts/releases) + +#### Changelog {#Changelog-v5.3.0} + + +##### Added + +
      +
    • +
      +Additional features now supported in Tyk OAS API Designer when working with Tyk OAS APIs + +The following features have been added in 5.3.0 to bring Tyk OAS to feature maturity: + - Detailed log recording (include payload in the logs) + - Enable Open Telemetry tracing + - API-level header transforms (request and response) + - Endpoint-level cache + - Circuit breakers + - Track endpoint logs for inclusion in Dashboard aggregated data + - Do-not-track endpoint + - Enforced upstream timeouts + - Configure endpoint as Internal (not available externally) + - URL rewrite + - Per-endpoint request size limit + - Request transformation - method, header + - Response transformation - header + - Custom domain certificates +
      +
    • +
    • +
      +Implemented Design Elements for GraphQL Permissions + +Support for field-based permissions allow list has been added in the Dashboard. Users can now define which types and fields from a GraphQL schema an API key holder can access by simply putting a tick next to them in the policy/key definition screens. +
      +
    • +
    • +
      +Added API Categories support for Tyk OAS APIs + +In this update, we've added support for API Categories for Tyk OAS APIs in the Tyk Dashboard, enhancing portfolio management by enabling efficient categorization and organization of APIs. +
      +
    • +
    • +
      +Added API Ownership support for Tyk OAS APIs + +We’ve extended the API ownership capabilities of Tyk Dashboard to Tyk OAS APIs. This feature allows you to manage visibility of APIs deployed on the Dashboard, streamlining governance processes and enhancing internal security. +
      +
    • +
    • +
      +Added API Templates for Tyk OAS APIs + +Extended Tyk Dashboard API to support CRUD operations on API Templates, enabling users to create, apply, and manage templates programmatically. + +Added Dashboard UI functionality for creation and management of API Templates, including the ability to create templates from existing Tyk OAS APIs. You can apply templates during API creation, including when importing OpenAPI documents. Access to API templates is controlled through the introduction of a new user permission. +
      +
    • +
    • +
      +Import OpenAPI Documents from File or URL + +Now you can import the OpenAPI description from a file or URL when creating or updating your Tyk OAS APIs. +
      +
    • +
    • +
      +Introduced Global Header Management for GraphQL + +Access the new Global Header Management feature directly through the Headers Management tab. Swiftly add and configure multiple global headers or remove them with a single click, ensuring they're forwarded to all GraphQL data sources. This enhancement streamlines header management, providing a more user-friendly experience. +
      +
    • +
    • +
      +Added monitoring capabilities for GraphQL APIs in the Dashboard + +We’ve enabled basic Graph monitoring in the Dashboard. Due to the specificity of GQL APIs, monitoring them as you would REST, is not enough. One endpoint vs multiple endpoints, multiple queries/mutations vs HTTP methods, errors that happen not only in HTTP layer but also come back in response body - that all makes monitoring GQL slightly more complex than just looking at request and error rates. + +A new section of the Dashboard offers the following information: +- top 5 most popular graphs and operations requested within them within a specified period of time +- top 5 graphs with errors within a specified period of time +- summary of number of requests, number of successful responses, number of errors, average latency and last access date within a specified period of time for all graphs +
      +
    • + +
    • +
      +Support MongoDB v7.0.x + +Tyk 5.3 integrates with [storage v1.2.2](https://github.com/TykTechnologies/storage), which updated mongo-go driver we use from v1.11.2 to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that Tyk 5.0.x+ is compatible with MongoDB v7.0.x +
      +
    • + +
    • +
      +Support Redis v7.0.x + +Tyk 5.3 refactors Redis connection logic by using [storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), which integrates with [go-redis](https://github.com/redis/go-redis) v9. Subsequently, support now exists for Redis v7.0.x. +
      +
    • +
    + + +##### Changed + +
      +
    • +
      +Enhanced Dashboard Navigation: Introducing Favorite Screens + +Every Dashboard menu item can now be flagged as a favorite so that it is pinned to the top of the menu navigation bar for easier access. We've also made a few changes in styling, so that the navigation menu is nicer to look at. +
      +
    • +
    • +
      +Improved UI for GraphQL Data Source Headers Management + +We have moved data source header management to a separate tab, so that it is easy to configure global headers that will be forwarded to all data sources by default. The data source configuration screen displays all headers that will be sent with the upstream request in read-only mode now and changes can be made by switching to Headers Management tab. +
      +
    • +
    • +
      +Go 1.21 upgrade for Dashboard + +We have updated Tyk Dashboard to use Go 1.21, matching the upgrade in Tyk Gateway 1.21. Remember to recompile any custom Go plugins with the matching version of Go to avoid incompatibility problems. +
      +
    • +
    • +
      +The internal TIB session secret defaults to admin_secret if it is not set explicitly + +If internal TIB is enabled in Dashboard and the TYK_IB_SESSION_SECRET environment variable is not set, it will be default to Dashboard admin_secret. It provides better security and user experience because SSO flow would not work if TYK_IB_SESSION_SECRET is not set. +
      +
    • +
    • +
      +Set default MongoDB driver to mongo-go + +Tyk uses `mongo-go` as the default MongoDB driver from v5.3. This provides support for MongoDB 4.4.x, 5.0.x, 6.0.x and 7.0.x. If you are using older MongoDB versions e.g. 3.x, please set MongoDB driver to `mgo`. The [MongoDB supported versions](https://tyk.io/docs/planning-for-production/database-settings/mongodb/#supported-versions) page provides details on how to configure MongoDB drivers in Tyk. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Resolved OPA rule restriction on UDG OAS import endpoint + +We fixed an issue where OPA rules were preventing users from importing an OpenAPI document as a UDG data source using the /api/data-graphs/data-sources/import endpoint. The endpoint has now been included into the correct user permission group and will be accessible for users who have `api:write` permissions. +
      +
    • +
    • +
      +Optimized Policy Creation Endpoint + +Fixed an issue where applying security policies to large numbers of APIs took a long time. We’ve implemented bulk processing in the validation step at the api/portal/policies/POLICY_ID endpoint, resulting in an 80% reduction in the time taken to apply a policy to 2000 APIs. +
      +
    • +
    • +
      +Improved Security for Classic Portal + +Moved all HTML inline scripts to their own script files, to accommodate the content security policies that have been enabled, to increase security. +
      +
    • +
    • +
      +Errors importing larger OpenAPI Documents + +Fixed an issue when importing reasonably large OpenAPI documents via the Dashboard would fail due to MongoDB storage limitation of 16 MB per document. +
      +
    • +
    • +
      +Removed the need for a Description to be provided in the OpenAPI schema when autogenerating a Tyk OAS mock response + +Relaxed the strict validation for mock response so that the `Description` field is now optional for `response`, `responses` and `schema` within the OpenAPI description. Automatically configuring mock responses when using [Tyk OAS APIs]({{< ref "product-stack/tyk-gateway/middleware/mock-response-openapi" >}}) is now even easier. +
      +
    • +
    • +
      +Fixed SSO flow for Classic Developer Portal + +For Classic Portal cookies and Dashboard, use `SameSite = SameSiteLaxMode` so that SSO flows can be performed +
      +
    • +
    • +
      +Remove unnecessary warning output from `tyk-dashboard --version` + +Remove the following unnecessary warning output when users use the `tyk-dashboard --version` command to check dashboard version. +> `WARN toth/tothic: no TYK_IB_SESSION_SECRET environment variable is set. The default cookie store is not available and any calls will fail. Ignore this warning if you are using a different store.` +
      +
    • +
    + +##### Security Fixes + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + + + +--- + + + + + + +## 5.2 Release Notes +### 5.2.5 Release Notes + +**Release Date 19 Dec 2023** + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +Dashboard 5.2.5 was version bumped only, to align with Gateway 5.2.5. Subsequently, no changes were encountered in release 5.2.5. Gateway 5.2.5 was a critical patch release. For further information please see the release notes for Gateway [v5.2.5]({{< ref "developer-support/release-notes/gateway.md" >}}) + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.5/images/sha256-c09cb03dd491e18bb84a0d9d4e71177eb1396cd5debef694f1c86962dbee10c6?context=explore) + +#### Changelog {#Changelog-v5.2.5} +Since this release was version bumped only to align with Gateway v5.2.5, no changes were encountered in this release. + +--- + + + +--- + +### 5.2.4 Release Notes + +**Release Date 7 Dec 2023** + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.4">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.4/images/sha256-8862e98c6ffd67d47b496275b228f4f8faae4359b9c8e42bcd8bd8a47d0c45e4?context=explore) + +#### Changelog {#Changelog-v5.2.4} + +##### Fixed + +
      +
    • +
      + Poor experience when using the Open Policy Agent (OPA) editor + + Fixed two UI issues with the [OPA editor]({{< ref "tyk-dashboard/open-policy-agent#using-the-open-policy-agent-in-the-dashboard" >}}) in the Tyk Dashboard to improve experience when using this feature. Scrolling beyond the end of the OPA window does not now start to scroll the API Designer window, and minimizing then re-expanding the OPA editor no longer limits the text to one line. +
      +
    • +
    • +
      + Annoying bugs when setting Dashboard user access controls + + Fixed minor issues in the Dashboard UI when configuring the user access controls for the Identity Management (TIB) and Real Time Notifications permissions. +
      +
    • +
    • +
      + Unable to select Mutual TLS version 1.3 from the API Designer dropdown + + Fixed an issue where TLS 1.3 was not offered as an option in the "Minimum TLS version" dropdown in the API Designer. Also we gave better (human readable) names to the options, like TLS 1.0, TLS 1.1 etc. instead of their corresponding numbers 769, 770 etc. +
      +
    • +
    • +
      + Tyk Dashboard panic when using mongo-go driver + + Fixed a situation where Tyk Dashboard could panic when using the mongo-go driver. +
      +
    • +
    • +
      + Confusing error message if user tries to modify Tyk OAS API using a Tyk Classic API endpoint/summary> + + Improved the error message that is returned when user tries to update a Tyk OAS API using a Tyk Classic API endpoint when `allow_unsafe_oas` is not enabled. +
      +
    • +
    + +##### Added + +
      +
    • +
      + Implemented a `tyk version` command that provides more details about the Tyk Dashboard build + + This prints the release version, git commit, Go version used, architecture and other build details. +
      +
    • +
    + +--- + +### 5.2.3 Release Notes + +**Release Date 21 Nov 2023** + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.3">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.3/images/sha256-7d61ed3ee3f03ff0e2f91be71a9113b90ef6637b1cef1f30d4c3e04ead09fa6a?context=explore) + +#### Changelog {#Changelog-v5.2.3} + +##### Fixed + +
      +
    • +
      +Unable to resize OPA editor in Tyk Dashboard + +Fixed an issue where the [OPA editor]({{< ref "tyk-dashboard/open-policy-agent#using-the-open-policy-agent-in-the-dashboard" >}}) was not resizable. The fix ensures the floating OPA editor is now resizable and the resizing operation is smooth, improving user experience. +
      +
    • +
    • +
      +User Search not working unless you enter the full email address + +Fixed an issue where the [User Search]({{< ref "basic-config-and-security/security/dashboard/search-users" >}}) was not working unless the full email address was entered. The fix restores the functionality of showing suggestions for names as they are typed in, improving user experience and search efficiency. +
      +
    • +
    • +
      +Dashboard 4.1.0+ cannot retrieve certificates from downrev gateways + +Fixed an issue where Dashboard 4.1.0+ was unable to retrieve certificates from a Tyk Gateway with a version lower than 4.1.0. This was due to a change made in the 4.1 versions relating to the way certificate details are retrieved in the dashboard; in the newer versions, we can view more details of the certificates. Now you can use Tyk Dashboard with any version of the Tyk Gateway and still retrieve and view certificate details; the fix ensures smooth staged upgrades and prevents potential issues for customers who have weeks or months between upgrading components. +
      +
    • +
    • +
      +Authentication Mode changes after changing API Protocol in API Designer + +Fixed an issue in the Tyk Classic API Designer where if you changed the protocol for an API (for example from HTTP to HTTPS) then the authentication mechanism would be automatically set to Authentication Token. +
      +
    • +
    • +
      +Unable to configure external OAuth flow using Raw API editor + +Fixed an issue in the Classic API Designer where the 'use_standard_auth' value was constantly reverting to 'true' when editing an API with an [external OAuth flow]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}). This fix ensures the 'use_standard_auth' value remains consistent, enabling the use of external OAuth via the Raw API editor. +
      +
    • +
    • +
      +If the GraphQL subscription upstream disconnects, the UI is unaware of the reconnection event + +Fixed an issue with failed GraphQL subscriptions between the upstream and the Dashboard. When an upstream subscription was disconnected and later reconnected, the UI did not update to reflect the reconnection, preventing the seamless consumption of messages. Now the Dashboard can continue consuming messages after upstream reconnects. +
      +
    • +
    + +--- + +### 5.2.2 Release Notes + +**Release Date 31 Oct 2023** + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.2">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.2/images/sha256-c6e701e270ebb2fed815483723375c454d0479ae41b5be2e1a6198b8d1e1a154?context=explore) + +#### Changelog {#Changelog-v5.2.2} + +##### Added + +
      +
    • +
      +Added new Dashboard configuration option `allow_unsafe_oas` + +Added a new Dashboard configuration option `allow_unsafe_oas`. This permits the modification of Tyk OAS APIs via the Tyk Classic API endpoints. This is not a recommended action due to the risk of inconsistent behavior and potential for breaking changes while Tyk OAS is in [Early Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}). This is provided for early adopters and will be deprecated later, once Tyk OAS reaches full maturity. + +
      +
    • +
    + +##### Fixed +
      +
    • +
      +Fixed security policy grant permissions issue encountered with MongoDB + +Fixed an issue when using MongoDB and [Tyk Security Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This was due to the policy cleaning operation that is triggered when an API is deleted from a policy in a MongoDB installation. With this fix, the policy cleaning operation will not remove the final (deleted) API from the policy; Tyk recognizes that the API record is invalid and denies granting access rights to the key. +
      +
    • +
    • +
      +User might not correctly inherit all permissions from their user group + +Fixed an issue in the Tyk Dashboard where a user might not correctly inherit all permissions from their user group, and could incorrectly be granted visibility of Identity Management. +
      +
    • +
      +Tyk would not store Policy ID in the API Definition for a policy that did not exist + +Fixed an issue where Tyk would not store the *Policy Id* in the *API Definition* for a policy that did not exist. When using *JWT Authentication*, the *JWT Default Policy Id* is stored in the *API Definition*. If this policy had not been created in Tyk at the time the *API Definition* was created, Tyk Dashboard would invalidate the field in the *API Definition*. When the policy was later created, there would be no reference to it from the *API Definition*. This was a particular issue when using *Tyk Operator* to manage the creation of assets on Tyk. +
      +
    • +
    • +
      +Service Uptime page did not report the number of success hits correctly + +Fixed an issue in the Dashboard *Service Uptime* page where the number of success hits was being incorrectly reported as the total number of hits, inclusive of failures. After this fix, the *Success Column* displays only the number of success hits. +
      +
    • +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: + +- [CVE-2022-33082](https://nvd.nist.gov/vuln/detail/CVE-2022-33082) +- [CVE-2022-28946](https://nvd.nist.gov/vuln/detail/CVE-2022-28946) +- [CVE-2021-23409](https://nvd.nist.gov/vuln/detail/CVE-2021-23409) +- [CVE-2021-23351](https://nvd.nist.gov/vuln/detail/CVE-2021-23351) +- [CVE-2023-28119](https://nvd.nist.gov/vuln/detail/CVE-2023-28119) +- [CVE-2022-21698](https://nvd.nist.gov/vuln/detail/CVE-2022-21698) +- [CVE-2020-26160](https://nvd.nist.gov/vuln/detail/CVE-2020-26160) +- [CVE-2019-19794](https://nvd.nist.gov/vuln/detail/CVE-2019-19794) +- [CVE-2010-0928](https://nvd.nist.gov/vuln/detail/CVE-2010-0928) +- [CVE-2007-6755](https://nvd.nist.gov/vuln/detail/CVE-2007-6755) +- [CVE-2018-5709](https://nvd.nist.gov/vuln/detail/CVE-2018-5709) +
      +
    • +
    • +
      +Azure SAML2.0 Identity Provider was preventing users from authenticating + +Fixed an issue encountered with *Azure SAML2.0 Identity Provider* that was preventing users from authenticating. +
      +
    • +
    • +
      +Fields defined in Uptime_Tests.Check_List were not correctly handled in API Designer + +Fixed an issue encountered with the *API Designer* where fields defined in *Uptime_Tests.Check_List* were not correctly handled. Uptime tests can now be configured for *Tyk Classic APIs* using the *Raw API Definition* editor. +
      +
    • +
    • +
      +Tyk Dashboard API security vulnerability + +Fixed a security vulnerability with the Tyk Dashboard API where the `api_version` and `api_id` query parameters were potential targets for SQL injection attack. +
      +
    • +
    + +##### Updated + +
      +
    • +
      +Renamed License Limit to License Entitlement on Tyk Dashboard's Licensing Statistics screen + +On Tyk Dashboard's Licensing Statistics screen, we have renamed the License Limit to License Entitlement. We've also improved the experience when there is no limit in the license by hiding the License Entitlement line if no limit is set. +
      +
    • +
    + +--- + +### 5.2.1 Release Notes + +**Release Date 10 Oct 2023** + +#### Breaking Changes + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible result in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are on a 5.2.0 we advise you to upgrade ASAP and if you are on an older version skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.1/images/sha256-2f9d8af0e57f7fe4afb618dcf34772c001104dc0ec62a27541d12dc9ae90d5c8?context=explore) + +#### Changelog {#Changelog-v5.2.1} + +##### Added + +
      +
    • +
      +Support added to Tyk Dashboard API for Tyk Sync to fully support OAS API Definitions + +Added support to Tyk Dashboard API so that Tyk Sync can fully support Tyk OAS API Definitions; this will be enabled from Tyk Sync version 1.4.1. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Pagination in APIs screen was breaking for API of type GraphQL/UDG + +Fixed a bug in the *Tyk Dashboard* UI where pagination in the APIs screen was breaking for API of type GraphQL/UDG. This resulted in the page failing to load data and displaying a 'No data to display' message. +
      +
    • + +
    • +
      +Unable to disable Add Graph Operation checkbox in the GraphQL data source configuration screen + +Fixed an issue where the 'Add GraphQL Operation' checkbox in the GraphQL data source configuration screen couldn't be disabled, even when no operation was added. Now, its state can be adjusted based on the presence of GraphQL operations and variables. +
      +
    • +
    + +--- + +### 5.2.0 Release Notes + +**Release Date 29 Sep 2023** + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights + +We're thrilled to bring you some exciting enhancements and crucial fixes to improve your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. + +Configure Caching Timeouts Per API Endpoint and Enable Advanced Caching Options From Within Dashboard + +We’ve added the ability to [configure]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}) per-endpoint timeouts for Tyk’s response cache, giving you increased flexibility to tailor your APIs to your upstream services. While doing this, we’ve also fixed a longstanding issue within the *Tyk Dashboard* so that you can configure more of the [advanced caching]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-api-designer" >}}) options from within the UI. + +##### Added Body Transform Middleware to Tyk OAS API Definition + +With this release, we are adding the much requested *Body Transformations* to *Tyk OAS API Definition*. You can now [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) middleware for both [request]({{< ref "transform-traffic/request-body" >}}) and [response]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) *Body Transformations* and - as a *Tyk Dashboard* user - you’ll be able to do so from within our simple and elegant API Designer tool. Visually test and preview *Body Transformations* from within the API Designer. + +##### Track Usage Of License APIs, Gateways And Distributed Data Planes Over Time + +Within the Dashboard UI, we’ve enhanced the *Licensing* information page, so that you can visualise your usage of licensed APIs, *Gateways* and distributed *Data Planes* over time. This allows the visualisation of deployed and active APIs using a range of different types of interactive charts. + + +#### Downloads + +Tyk Dashboard 5.2 - [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.0/images/sha256-28ff62e1e1208d02fec44cf84c279a5f780207ccbb7c3bdef23d1bf8fc6af3b8?context=explore) + + +#### API Changes + +The following is a list of API changes in this release. Please visit our [Postman collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) for further information on our APIs. + +
      +
    • +
      +Added /system/stats endpoint to provide statistics for total and active APIs deployed + +Added a new [endpoint]({{< ref "/tyk-dashboard-api" >}}), */system/stats*, to provide insight and operational statistics on total and active APIs deployed. The endpoint's flexible date filtering options, equip users to obtain comprehensive insights into usage trends. +
      +
    • +
    + + +#### Changelog {#Changelog-v5.2.0} + +##### Added + +
      +
    • +
      +Configure request and response body transformations + +Added support for API developers to easily [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) both request and response *Body Transformations* for more precise data management when working with *Tyk OAS* APIs. Define input data, craft transformation templates and test them against specific inputs for reliable customization. +
      +
    • +
    • +
      +Adding a new data source is simpler when working with UDG + +Adding a new [data source]({{< ref "universal-data-graph/udg-getting-started/connect-datasource#3-configure-datasource-details" >}}) is simpler when working with *UDG*. The default value for the *data source name* is pre-filled, saving time. The *data source name* is pre-filled in the format *fieldName_typeName*, with *typeName* being the name of any GraphQL type. +
      +
    • +
    • +
      +Added /system/stats endpoint to provide statistics for total and active APIs deployed + +Added a new [endpoint]({{< ref "/tyk-dashboard-api" >}}), */system/stats*, to provide insight and operational statistics on total and active APIs deployed. The endpoint's flexible date filtering options, equip users to obtain comprehensive insights into usage trends. +
      +
    • +
    + +##### Changed +
      +
    • +
      +Saving operation is simpler when creating an API within the API Designer + +Improved the flow when creating an API within the *API Designer* so that you remain on the same screen after saving. This means you can continue editing without having to navigate back to the screen to make subsequent changes. +
      +
    • +
    • +
      +Saving a UDG data source is simpler and quicker + +Updated the [screen]({{< ref "/universal-data-graph/udg-getting-started/connect-datasource" >}}) for configuring and saving *UDG* data sources. The *Save* button has been replaced with *Save & Update API* button and users no longer need to click *Update* at the top of the screen to persist changes. Saving a *UDG* data source is now simpler and quicker. +
      +
    • +
    • +
      +Enhanced API usage monitoring added to Dashboard + +Updated the *Dashboard* with enhanced API usage monitoring. Users now benefit from an insightful chart on the *Licensing Statistics* page, detailing: maximum, minimum and average counts of created and active APIs. Flexible date filtering, license limit reference lines and the ability to toggle between line and bar graphs empower users to monitor usage effortlessly, ensuring license adherence. +
      +
    • +
    • +
      +New chart introduced on License Statistics page to show number of deployed Data Planes + +A new chart has been introduced on the *License Statistics* page that presents the number of deployed *Data Planes*. This addition enables users to easily monitor their *Data Plane* usage and nearness to their contract limits. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Advanced cache config data was absent in the Raw Editor + +Fixed an issue where *advanced_cache_config* data was absent in the *Raw Editor*. This fix now ensures that *advanced_cache_config* can be configured. Furthermore, API modifications in the *Designer* no longer lead to data loss, safeguarding cache configuration consistency. The UI now offers a clear view of advanced cache settings, including the new *Timeout* field and *Cache* response codes fields. +
      +
    • +
    • +
      +403 errors were raised with JWT claim names containing spaces + +Fixed an issue with *JWT claim names* containing spaces. Previously 403 errors were raised when using tokens containing such claims. +
      +
    • +
    • +
      +Popular endpoints were not displayed in Tyk Dashboard when SQL aggregated analytics was enabled + +Fixed an issue where *popular endpoints* data was not displayed in *Tyk Dashboard* with *SQL aggregated analytics* enabled. Users can now view *popular endpoints* when viewing *Traffic Activity* per API or filtering by API with *SQL aggregated analytics* enabled. +
      +
    • +
    • +
      +Fixed security issue with expired certificates + +Fixed a potential security vulnerability where *static* or *dynamic mTLS* requests with expired certificates could be proxied upstream. +
      +
    • +
    • +
      +Users were unable to view request analytics for a specific date in the API Activity dashboard + +Fixed an issue in the *API Activity* dashboard where users were unable to view request analytics for a specific date. Subsequently, users can now make informed decisions based on access to this data. +
      +
    • +
    • +
      +Enforced timeout configuration parameter for an API endpoint was not validated + +Fixed an issue where the [Enforced Timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) configuration parameter of an API endpoint accepted negative values, without displaying validation errors. With this fix, users receive clear feedback and prevent unintended configurations. +
      +
    • +
    • +
      +Duplicate APIs could be created when click save button multiple times in API Designer + +Fixed an issue in *Tyk Dashboard* where duplicate APIs could be created with the same names and listen paths if you clicked multiple times on the *save* button in the API Designer. Now, this is not possible anymore and there is no risk of creating multiple APIs with the same name. +
    • + +
    • +
      +Connection issues were encountered with MongoDB connection strings + +Fixed an issue with *MongoDB* connection strings. To ensure consistent compatibility with both *mgo* and *mongo-go* drivers, users should now utilize URL-encoded values within the *MongoDB* connection string's username and password fields when they contain characters like "?", "@". This resolves the need for different handling across *MongoDB* drivers. +
      +
    • +
    + +--- + +## 5.1 Release Notes +### 5.1.0 Release Notes + +#### Release Date 23 June 2023 + +#### Breaking Changes +**Attention warning*: Please read carefully this section. We have two topics to report: + +###### Golang Version upgrade +Our Dashboard is using [Golang 1.19](https://tip.golang.org/doc/go1.19) programming language starting with the 5.1 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. Don’t forget that, if you’re using GoPlugins, you'll need to [recompile]({{< ref "plugins/supported-languages/golang#upgrading-your-tyk-gateway" >}}) these to maintain compatibility with the latest Gateway. + +###### Tyk OAS APIs +To provide a superior experience with OAS APIs, we have made some changes which include various security fixes, improved validation etc. Upgrading to v5.1 from v4.x.x may be irreversible, rollback to v4.x.x could break your OAS API definitions. For this reason, we recommend making a database backup so you can always restore from the backup (of v4.X.X) in case you encounter a problem during the upgrade. Please refer to our guides for detailed information on [upgrading Tyk]({{}}) and [how to back up tyk]({{}}) + +#### Deprecation +There are no deprecations in this release. + +#### Upgrade Instructions +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights + +##### Dashboard Analytics for API Ownership + +When we implemented Role Based Access Control and API Ownership in Tyk +Dashboard, we unlocked great flexibility for you to assign different roles to +different users and user groups with visibility and control over different +collections of APIs on your Gateway. Well, from 5.1 we have added a new Role, +which layers on top of the existing “Analytics” role and can be used to restrict +a user’s access, within the Dashboard Analytics screens, to view only the +statistics from APIs that they own; we’ve called this “Owned Analytics”. Due to +the way the analytics data are aggregated (to optimize storage), a user granted +this role will not have access to the full range of charts. Take a look at the +documentation for a full description of this new [user role]({{< ref "basic-config-and-security/security/dashboard/user-roles" >}}). + +##### Import API examples from within the Dashboard + +In 5.0 we introduced the possibility to import API examples manually or via +[_Tyk Sync_]({{< ref "/api-management/automations#synchronize-tyk-environment-with-github-repository" >}}). We have now extended this feature and it is now possible to do this without +leaving the Dashboard. When having an empty “Data Graphs” section you will be +presented with 3 icon buttons with one of them offering you to import an Example +API. + +If you already have Data Graphs in your Dashboard you can either click on +the “Import” button or click on the “Add Data Graph“ button and select “Use +example data graph“ on the next screen. The examples UI will present you with a +list of available examples. You can navigate to the details page for every +example and import it as well from the same page. + +##### Improved nested GraphQL stitching + +Before this release, it was only possible to implement nested GraphQL stitching +(GraphQL data source inside another data source) by using a REST data source and +providing the GraphQL body manually. We have now extended the GraphQL data source so +that you can provide a custom operation and therefore access arguments or object +data from parent data sources. + +To use this feature you will only need to check the “Add GraphQL operation“ checkbox when creating a GraphQL data source. + +##### Import UDG API from OAS 3.0.0 + +We added a [Dashboard API Endpoint]({{< ref "universal-data-graph/datasources/rest#automatically-creating-rest-udg-configuration-based-on-oas-specification" >}}) that is capable of taking an OAS 3.0.0 document and converting it into a UDG API. + +This will generate the full schema as well as the data sources that are defined inside the OAS document. + +##### Changed default RPC pool size for MDCB deployments + +We have reduced the default RPC pool size from 20 to 5. This can reduce the CPU and +memory footprint in high throughput scenarios. Please monitor the CPU and memory +allocation of your environment and adjust accordingly. You can change the pool +size using [slave_options.rpc_pool_size]({{< ref "tyk-oss-gateway/configuration#slave_optionsrpc_pool_size" >}}) + +#### Downloads + +[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.1/images/sha256-8cde3c6408b9a34daa508a570539ca6cd9fcb8ee5c4790abe907eaecddc1bd9b?context=explore) + + +#### Changelog + +##### Added + +- Added two endpoints to the dashboard to support the retrieval of example API definitions. One for fetching all examples and another for fetching a single example. +- Added a way to display UDG examples from the [tyk-examples](https://github.com/TykTechnologies/tyk-examples) repository in the Dashboard UI +- Added screens in Dashboard New Graph flow, that allows users to choose between creating a graph from scratch or importing one of our example graphs +- Added a screen to display details of a UDG example API +- Added a feature to display a full [_Tyk Sync_]({{}}) command that will allow a user to import an example UDG into their Dashboard +- Added `/examples` endpoint to Dashboard API that returns a list of available API examples that can later be imported into the Dashboard `GET /api/examples` +- Added `/data-graphs/data-sources/import` endpoint to Dashboard API that transforms an OpenAPI document into UDG config and publishes it in Dashboard `POST /api/data-graphs/data-sources/import` +- Added query param `apidef=true` to example detail endpoint in Dashboard API to retrieve the API definition of an example +- Added new `owned_analytics` user permission which restricts the user's access only to analytics relating to APIs they own. These are the _API Activity Dashboard Requests_ and _Average Errors Over Time_ charts in the Tyk Dashboard. Note that it is not currently possible to respect API Ownership in other aggregated charts + +##### Changed + +- Tyk Dashboard updated to Go 1.19 +- Updated npm package dependencies of Dashboard, to address critical and high CVEs +- Changed the field mapping tickbox description in GUI to be 'Use default field mapping' + +##### Fixed + +- Fixed an issue when using custom authentication with multiple authentication methods. Custom authentication could not be selected to provide the base identity +- Fixed an issue where the login URL was displayed as undefined when creating a TIB Profile using LDAP as a provider +- Fixed an issue where it was not possible to download Activity by API or Activity by Key from the Dashboard when using PostgreSQL for the analytics store +- Fixed an issue where a new user could be stuck in a password reset loop in the dashboard if TYK_DB_SECURITY_FORCEFIRSTLOGINPWRESET was enabled +- Fixed an issue where the `ssl_force_common_name_check` flag was disappearing. The flag was disappearing after being updated via dashboard UI raw API editor and a subsequent page reload. It was also disappearing when updating the API Definition via the GW/DB API. +- Fixed an issue where a user could update their email address to match that of another user within the same organization +- Fixed an issue where users without `user:write` permission were able to update their permissions through manipulation of Dashboard API calls +- Fixed an issue where the versions endpoint returned APIs that were not owned by the logged-in user +- Fixed an issue where the log browser showed analytics for APIs not owned by the logged-in user +- Fixed an issue that prevented non-admin users from seeing _Endpoint Popularity_ data in the Tyk Dashboard +- Fixed an issue where additional data was returned when requesting analytics with p=-1 query when using SQL for the analytics store +- Fixed an issue so that filtering by API now respects API Ownership in three Dashboard charts. + + - Gateway Dashboard - API Activity Dashboard - Requests + - Activity by API - Traffic Activity per API + - Errors - Average Errors Over Time + +- Fixed an issue so that the Log Browser now respects API Ownership. A user will now only be able to see logs for the APIs that they are authorized to view +- Fixed filters for the Log Browser, Errors - Average Errors Over Time and API Activity Dashboard - Requests so that a user can only select from versions of APIs for which they have visibility +- Fixed UI bug so that data graphs created with multiple words are [sluggified](https://www.w3schools.com/django/ref_filters_slugify.php#:~:text=Definition%20and%20Usage,ASCII%20characters%20and%20hyphens%20(%2D).), i.e. spaces are replaced with a hyphen `-` +- Fixed an issue with routing, which was sending the user to a blank screen while creating a new Data Graph or importing an example API + +## 5.0 Release Notes +### 5.0.15 Release Notes + +#### Release Date 24 October 2024 + +#### Release Highlights + +This is a version bump to align with Gateway v5.0.15, no changes have been implemented in this release. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Upgrade instructions {#upgrade-5.0.15} + +If you are upgrading to 5.0.15, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Changelog {#Changelog-v5.0.15} + +No changes in this release. + + +--- + +### 5.0.14 Release Notes {#rn-v5.0.14} + +#### Release Date 18th September 2024 + +#### Upgrade Instructions + +This release is not tightly coupled with Tyk Gateway v5.0.14, so you do not have to upgrade both together. + + +Go to the [Upgrading Tyk](https://tyk.io/docs/developer-support/release-notes/gateway#upgrading-tyk) section for detailed upgrade instructions. + + +#### Release Highlights + +This release fixes some display issues in Tyk Dashboard and Tyk Classic Portal when using PostgreSQL. + +#### Changelog {#Changelog-v5.0.14} + +##### Fixed + +
      +
    • +
      +Tyk Dashboard UI: Fixed display issue for API statistics + +Fixed an issue where API statistics were not being shown when using PostgreSQL and adding two or more tags in the Activity page +
      +
    • +
    • +
      +Tyk Dashboard UI: Fixed issue with display of HTTP 429 status codes on the Activity page + +Fixed an issue where HTTP 429 status codes were not being shown on the Activity page when using PostgreSQL +
      +
    • +
    • +
      +Tyk Classic Portal UI: Fixed display of graphs and requests counter + +Fixed wrong graphs and incorrect requests counter on Tyk Classic Portal when using PostgreSQL +
      +
    • +
    • +
      +Tyk Dashboard UI: fixed issues with the Error Breakdown display, specifically related to date handling + +Fixed Error Breakdown issue showing errors that happened on different dates than selected date +
      +
    • +
    + +--- + +### 5.0.13 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.13) + +--- + +### 5.0.12 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.12) + +--- + +### 5.0.11 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.11) + +--- + +### 5.0.10 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.10) + +--- + +### 5.0.9 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.9) + +--- + +### 5.0.8 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.8) + +--- + +### 5.0.7 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.7). + +--- + +### 5.0.6 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.6). + +--- + +### 5.0.5 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.5). + +--- + +### 5.0.4 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.4). + +--- + +### 5.0.3 Release Notes +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.3). + +--- + +### 5.0.2 Release Notes + +##### Release Date 29 May 2023 + +##### Release Highlights + +###### Support for MongoDB 5 and 6 +From Tyk 5.0.2, we added support for MongoDB 5.0.x and 6.0.x. To enable this, you have to set new Dashboard config option driver to *mongo-go*. +The driver setting defines the driver type to use for MongoDB. It can be one of the following values: +- [mgo](https://github.com/go-mgo/mgo) (default): Uses the *mgo* driver. This driver supports MongoDB versions <= v4.x (lower or equal to v4.x). You can get more information about this driver in the [mgo](https://github.com/go-mgo/mgo) GH repository. To allow users more time for migration, we will update our default driver to the new driver, *mongo-go*, in next major release. +- [mongo-go](https://github.com/mongodb/mongo-go-driver): Uses the official MongoDB driver. This driver supports MongoDB versions >= v4.x (greater or equal to v4.x). You can get more information about this driver in [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) GH repository. + +See how to [Choose a MongoDB driver]({{< ref "planning-for-production/database-settings/mongodb#choose-a-mongodb-driver" >}}) + +**Note: Tyk Pump 1.8.0 and MDCB 2.2 releases have been updated to support the new driver option** + +##### Downloads + +[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0.2/images/sha256-fe3009c14ff9096771d10995a399a494389321707e951a3c46f944afd28d18cd?context=explore) + + +##### Changelog {#Changelog-v5.0.2} + +###### Fixed +- Fixed a bug on migration of a portal catalog with deleted policy to SQL +- Fixed: Redirect unregistered user to new page when SSOOnlyForRegisteredUsers is set to true + +--- + +### 5.0.1 Release Notes + +##### Release Date 25 Apr 2023 + +##### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.0.1">}}) below. + +##### Downloads +- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0.1/images/sha256-013d971fc826507702f7226fa3f00e1c7e9d390fc0fb268bed42e410b126e89d?context=explore) + +##### Changelog {#Changelog-v5.0.1} + +###### Added +- Improved security for people using the Dashboard by adding the Referrer-Policy header with the value `no-referrer` +- Added ability to select the plugin driver within the Tyk OAS API Designer + +###### Changed +- When creating a new API in the Tyk OAS API Designer, caching is now disabled by default + +###### Fixed +- Fixed a bug where a call to the `/hello` endpoint would unnecessarily log `http: superfluous response.WriteHeader call` +- Fixed a bug where the Dashboard was showing *Average usage over time* for all Developers, rather than just those relevant to the logged in developer +- Fixed a bug where logged in users could see Identity Management pages, even if they didn't have the rights to use these features +- Fixed a bug that prevented Tyk Dashboard users from resetting their own passwords +- Fixed issue with GraphQL proxy headers added via UI +- Fixed a bug where the Dashboard would not allow access to any screens if a logged in user didn’t have access to the APIs resource regardless of other access rights +- Fixed a bug on the key management page where searching by `key_id` did not work - you can now initiate the search by pressing enter after typing in the `key_id` +- Fixed a bug where Dashboard API could incorrectly return HTTP 400 when deleting an API +- Fixed UDG UI bug that caused duplicate data source creation on renaming +- Fixed schema validation for custom domain in Tyk OAS API definition +- Fixed a bug where the left menu did not change when Dashboard language was changed +- Fixed a bug that caused the Dashboard to report errors when decoding multiple APIs associated with a policy +- Fixed a bug where it was not possible to disable the Use Scope Claim option when using JWT authentication +- Fixed a bug in the default OPA rule that prevented users from resetting their own password +- Fixed a bug where authToken data was incorrectly stored in the JWT section of the authentication config when a new API was created + +--- + +### 5.0.0 Release Notes + +#### Release Date 28 Mar 2023 + +#### Release Highlights + +##### Improved OpenAPI support + +Tyk Dashboard has been enhanced with **all the custom middleware options** for Tyk OAS APIs, so **for the first time** you can configure your custom middleware from the Dashboard; this covers the full suite of custom middleware from pre- to post- and response plugins. We’ve got support for middleware bundles, Go plugins and Tyk Virtual Endpoints, all within the new and improved Tyk Dashboard UI. + +[Versioning your Tyk OAS APIs]({{< ref "getting-started/key-concepts/oas-versioning" >}}) is easier than ever, with the Tyk OSS Gateway now looking after the maintenance of the list of versions associated with the base API for you; we’ve also added a new endpoint on the Tyk API that will return details of the versions for a given API. + +Tyk Dashboard hasn’t been left out, we’ve implemented a brand new version management UI for Tyk OAS APIs, to make it as easy as possible for you to manage those API versions as you develop and extend your API products with Tyk. + +We’ve improved support for [OAS Mock Responses]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}), with the Tyk OAS API definition now allowing you to register multiple Mock Responses in a single API, providing you with increased testing flexibility. + +Another new feature in the Tyk OAS API Designer is that you can now update (PATCH) your existing Tyk OAS APIs through the Dashboard API without having to resort to curl. That should make life just that little bit easier. +Of course, we’ve also addressed some bugs and usability issues as part of our ongoing ambition to make Tyk OAS API the best way for you to create and manage your APIs. + +##### GraphQL and Universal Data Graph improvements + +This release is all about making things easier for our users with GraphQL and Universal Data Graph. + +In order to get our users up and running with a working Universal Data Graph quickly, we’ve created a repository of examples that anyone can import into their Dashboard or Gateway and see what Universal Data Graph is capable of. Import can be done in two ways: +- manually, by simply copying a Tyk API definition from GitHub - [TykTechnologies/tyk-examples](https://TykTechnologies/tyk-examples): A repository containing example API definitions and policies for Tyk products. +- via command line [using tyk-sync]({{< ref "universal-data-graph/udg-examples" >}}) + +To make it easier for our users to find their way to Universal Data Graph, we’ve also given it its own space in the Dashboard. From now on you can find UDG under Data Graphs section of the menu. + +It also got a lot easier to turn a Kafka topic into a GraphQL subscription. Using our new Dashboard API endpoint, users will be able to transform their AsyncAPI documentation into Universal Data Graph definition with a single click. Support for OAS coming soon as well! + +With this release we are also giving our users [improved headers for GQL APIs]({{< ref "graphql/gql-headers" >}}). It is now possible to use context variables in request headers and persist headers needed for introspection separately for improved security. + +Additionally we’ve added Dashboard support for introspection control on policy and key level. It is now possible to allow or block certain consumers from being able to introspect any graph while creating a policy or key via Dashboard. + +#### Downloads + +[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0/images/sha256-3d736b06b023e23f406b1591f4915b3cb15a417fcb953d380eb8b4d71829f20f?tab=vulnerabilities) + +#### Changelog {#Changelog-v5.0.0} + +##### Added +- Numerous UX improvements +- New UI for custom middleware for Tyk OAS APIs +- Significantly improved Tyk OAS API versioning user experience +- It now possible to use PATCH method to modify Tyk OAS APIs via the Dashboard API +- Now you can turn a Kafka topic into a GraphQL subscription by simply [importing your AsyncAPI definition]({{< ref "tyk-apis/tyk-dashboard-api/data-graphs-api" >}}) +- Way to control access to introspection on policy and key level + +##### Changed +- Universal Data Graph moved to a separate dashboard section + +--- + +## 4.3 Release Notes +### 4.3.0 Release Notes + +#### Release Highlights + +##### Tyk OAS APIs - Versioning via the Dashboard + +Tyk v4.3 adds API versioning to the Dashboard UI, including: + +- Performing CRUD operations over API versions +- Navigate seamlessly between versions +- A dedicated manage versions screen +- easily identify the default version and the base API. + +##### Importing OAS v3 via the Dashboard + +Importing OpenAPI v3 documents in order to generate Tyk OAS API definition is now fully supported in our Dashboard UI. Our UI automatically detects the version of your OpenAPI Document, and will suggest options that you can pass or allow Tyk to read from the provided document, in order to configure the Tyk OAS API Definition. Such as: + +- custom upstream URL +- custom listen path +- authentication mechanism +- validation request rules and limit access only to the defined paths. + +[Importing OAS v3 via the Dashboard]({{< ref "/content/getting-started/using-oas-definitions/import-an-oas-api.md#tutorial-7-using-the-tyk-dashboard-ui" >}}) + +##### Updated the Tyk Dashboard version of Golang, to 1.16. + +**Our Dashboard is using Golang 1.16 version starting with 4.3 release. This version of the Golang release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** + +The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. + +Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. + + +#### Changelog + +##### Added + +- Added an option for using multiple header/value pairs when configuring GraphQL API with a protected upstream and persisting those headers for future use. +- Added documentation on how edge endpoints Dashboard configuration can be used by users to add tags for their API Gateways. +- When retrieving the Tyk OAS API Definition of a versioned API, the base API ID is passed on the GET request as a header: `x-tyk-base-api-id`. +- If Edge Endpoints Dashboard configuration is present, when users add segment/tags to the Tyk OAS API Definition, their corresponding URLs are populated in the servers section of the OAS document. +- Listen path field is now hidden from the API Designer UI, when the screen presents a versioned or internal API. + +##### Changed + +- Extended existing `x-tyk-gateway` OAS documentation and improved the markdown generator to produce a better-formatted documentation for `x-tyk-gateway` schema. +- Complete change of Universal Data Graph configuration UI. New UI is now fully functional and allows configuration of all existing datasources (REST, GraphQL and Kafka). +- Changed look & feel of request logs for GraphQL Playground. It is now possible to filter the logs and display only the information the user is interested in. + +##### Fixed + +- Fixed: OAS API definition showing management gateway URL even if segment tags are present in cloud. From now on OAS servers section would be filled with edge endpoint URLs if configured. +- Adding a path that contains a path parameter, doesn’t throw an error anymore on the Dashboard UI, and creates default path parameter description in the OAS. + +#### Updated Versions + +Tyk Dashboard 4.3 ([docker images](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=1&name=4.3.0)) + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +{{< note success >}} +**Note** + +Note: Upgrading the Golang version implies that all the Golang custom plugins that you are using need to be recompiled before migrating to 4.3 version of the Gateway. Check our docs for more details [Golang Plugins]({{< ref "/content/plugins/supported-languages/golang.md" >}}). +{{< /note >}} + +## 4.2 Release Notes +### 4.2.0 Release Notes + +#### Release Highlights + +##### GraphQL Federation improvements + +###### Changed GUI in Universal Data Graph configuration section. + +A new GUI introduces enhancements to the user experience and more consistent user journey for UDG. +This change does not yet cover all possible use cases and is released with a feature flag. To enable the new GUI, analytics.conf needs the following setting: + +``` +"ui": { + "dev": true +} +``` + +What’s possible with this change: +- Importing GraphQL schema created outside of Tyk (formats accepted .json, .graphql, .grahqls) +- Creating GraphQL schema in Tyk using schema editor +- Hide/Unhide schema editor to focus on graphical representation of the schema +- Resizing schema editor to adjust workspace look & feel to user preferences +- Improved search in schema editor (search and search & replace available) +- Quick link to UDG documentation from schema editor + +> Note: Full configuration of new Universal Data Graph is not yet possible in the GUI, however any UDGs created earlier will not be broken and will work as previously. + +##### Changes to federation entities +###### Defining the base entity +Entities must be defined with the `@key` directive. The fields argument must reference a field by which the entity can be uniquely identified. Multiple primary keys are possible. For example: + +Subgraph 1 (base entity): +``` +type MyEntity @key(fields: "id") @key(fields: "name") { + id: ID! + name: String! +} +``` + Attempting to extend a non-entity with an extension that includes the @key directive or attempting to extend a base entity with an extension that does not include the @key directive will both result in errors. + +###### Entity stubs + +Entities cannot be shared types (be defined in more than one single subgraph). +If one subgraph references a base entity (an entity defined in another subgraph), that reference must be declared as a stub (stubs look like an extension without any new fields in federation v1). This stub would contain the minimal amount of information to identify the entity (referencing exactly one of the primary keys on the base entity regardless of whether there are multiple primary keys on the base entity). For example, a stub for MyEntity from Subgraph 1 (defined above): + +Subgraph 2 (stub) +``` +extend type MyEntity @key(fields: "id") { + id: ID! @external +} +``` + +###### Supergraph extension orphans +It is now possible to define an extension for a type in a subgraph that does not define the base type. +However, if an extension is unresolved (an extension orphan) after an attempted federation, the federation will fail and produce an error. + +###### Improved Dashboard UI and error messages +GraphQL-related (for example when federating subgraphs into a supergraph) errors in the Dashboard UI will show a lean error message with no irrelevant prefixes or suffixes. + +Changed the look & feel of request logs in Playground tab for GraphQL APIs. New component presents all logs in a clearer way and is easier to read for the user + +###### Shared types +Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is identical. +Shared types cannot be extended outside of the current subgraph, and the resolved extension must be identical to the resolved extension of the shared type in all other subgraphs (see subgraph normalization notes). Attempting to extend a shared type will result in an error. +The federated supergraph will include a single definition of a shared type, regardless of how many times it has been identically defined in its subgraphs. + +###### Subgraph normalization before federation +Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. A valid example involving a shared type: + +Subgraph 1: +``` +enum Example { + A, + B +} + +extend enum Example { + C +} +``` + +Subgraph 2: +``` +enum Example { + A, + B, + C +} +``` + +The enum named “Example” defined in Subgraph 1 would resolve to be identical to the same-named enum defined in Subgraph 2 before federation takes place. The resulting supergraph would include a single definition of this enum. + +###### Validation +Union members must be both unique and defined. +Types must have bodies, e.g., enums must contain at least one value; inputs, interfaces, or objects must contain at least one field + +##### OpenAPI +Added support for the Request Body Transform middleware, for new Tyk OAS API Definitions. + +##### Universal Data Graph + +Added support for Kafka as a data source in Universal Data Graph. Configuration allows the user to provide multiple topics and broker addresses. + +#### Changelog + +##### Added +- Added support for Kafka as a data source in Universal Data Graph. +- Added support for the Request Body Transform middleware for OAS based APIs + +##### Changed +- Improved GraphQL Dashboard UI error messages +- Changed GUI in Universal Data Graph +- Changed look & feel of request logs in Playground tab for GraphQL APIs. + +##### Fixed +- Fixed an issue with key lookup where keys were not being found when using the search field +- Fixed an issue with object types dropdown in Universal Data Graph config, where it wasn’t working correctly when object type UNION was chosen +- Fixed an issue in Universal Data Graph which prevented users from injecting an argument value or parameter value in the domain part of the defined data source upstream URL + +#### Updated Versions + +Tyk Dashboard 4.2 + + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 4.1 Release Notes +### 4.1.0 Release Notes + +#### Release Highlights + +##### OpenAPI as a native API definition format +Tyk has always had a proprietary specification for defining APIs. From Tyk v4.1 we now support defining APIs using the Open API Specification (OAS) as well, which can offer significant time and complexity savings. [This is an early access capability]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}). + +As we extend our OAS support, we would very much like your feedback on how we can extend and update to best meet your needs: . + +This capability is available in both the open source and paid versions of Tyk. See our [High Level Concepts]({{< ref "getting-started/key-concepts/high-level-concepts" >}}) for more details, or jump to [OAS Getting Started documentation]({{< ref "getting-started/using-oas-definitions/create-an-oas-api" >}}). + + +##### MDCB Synchroniser + +Tyk Gateway v4.1 enables an improved synchroniser functionality within Multi Data Center Bridge (MDCB) v2.0. Prior to this release, the API keys, certificates and OAuth clients required by worker Gateways were synchronised from the controller Gateway on-demand. With Gateway v4.1 and MDCB v2.0 we introduce proactive synchronisation of these resources to the worker Gateways when they start up. + +This change improves resilience in case the MDCB link or controller Gateway is unavailable, because the worker Gateways can continue to operate independently using the resources stored locally. There is also a performance improvement, with the worker Gateways not having to retrieve resources from the controller Gateway when an API is first called. + +Changes to keys, certificates and OAuth clients are still synchronised to the worker Gateways from the controller when there are changes and following any failure in the MDCB link. + +##### Go Plugin Loader +When upgrading your Tyk Installation you need to re-compile your plugin with the new version. At the moment of loading a plugin, the Gateway will try to find a plugin with the name provided in the API definition. If none is found then it will fallback to search the plugin file with the name: `{plugin-name}_{Gw-version}_{OS}_{arch}.so` + +From v4.1.0 the plugin compiler automatically names plugins with the above naming convention. It enables you to have one directory with different versions of the same plugin. For example: + +- `plugin_v4.1.0_linux_amd64.so` +- `plugin_v4.2.0_linux_amd64.so` + +So, if you upgrade from Tyk v4.1.0 to v4.2.0 you only need to have the plugins compiled for v4.2.0 before performing the upgrade. + +#### Changelog + +##### Added +- Added support for new OAS api definition format, and new API creation screens +- Dashboard boostrap instalation script extended to support SQL databases +- Added `TYK_DB_OMITCONFIGFILE` option for Tyk Dashboard to ignore the values in the config file and load its configuration only from environment variables and default values +- Added a new config option `identity_broker.ssl_insecure_skip_verify` that will allow customers using the embedded TIB to use IDPs exposed with a self signed certificate. Not intended to be used in production, only for testing and POC purposes. +- Added option to configure certificates for Tyk Dashboard using [environment variables](https://tyk.io/docs/tyk-dashboard/configuration/#http_server_optionscertificates). + +##### Changed +- Detailed information about certificates can be viewed from certificates listing page +- Dashboard APIs GQL Playground now shows additional information about certificates +- Dashboard will now use default version of GraphiQL Playground which can switch between light and dark modes for more accessibility +- Banner for resyncing GraphQL schema has been given a new, more accessible look in line with the rest of Dashboard design + +##### Fixed +- Fixed an issue with key lookup where keys were not being found when using the search field +- Fixed an issue with object types dropdown in Universal Data Graph config, where it wasn’t working correctly when object type UNION was chosen +- Fixed an issue in Universal Data Graph which prevented users from injecting an argument value or parameter value in the domain part of the defined data source upstream URL + +#### Updated Versions +Tyk Dashboard 4.1 +Tyk MDCB 2.0.1 + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 4.0 Release Notes +### 4.0.0 Release Notes + +#### Release Highlights + +##### GraphQL federation + +As we know, ease-of-use is an important factor when adopting GraphQL. Modern enterprises have dozens of backend services and need a way to provide a unified interface for querying them. Building a single, monolithic GraphQL server is not the best option. It is hard to maintain and leads to a lot of dependencies and over-complication. + +To remedy this, Tyk 4.0 offers GraphQL federation that allows the division of GraphQL implementation across multiple backend services, while still exposing them all as a single graph for the consumers. Subgraphs represent backend services and define a distinct GraphQL schema. A subgraph can be queried directly, as a separate service or federated in the Tyk Gateway into a larger schema of a supergraph – a composition of several subgraphs that allows execution of a query across multiple services in the backend. + +[Federation docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md" >}}) + +[Subgraphs and Supergraphs docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md#subgraphs-and-supergraphs" >}}) + +##### GraphQL subscriptions + +Subscriptions are a way to push data from the server to the clients that choose to listen to real-time messages from the server, using the WebSocket protocol. There is no need to enable subscriptions separately; Tyk supports them alongside GraphQL as standard. + +With release 4.0, users can federate GraphQL APIs that support subscriptions. Federating subscriptions means that events pushed to consumers can be enriched with information from other federated graphs. + +[Subscriptions docs]({{< ref "/content/getting-started/key-concepts/graphql-subscriptions.md" >}}) + +##### SQL database support +The other major capability in Tyk 4.0 is that the Tyk Dashboard can store its data in a SQL  relational database.  + +Until now, Tyk Dashboard has used MongoDB for storing everything from data such as APIs, policies and users through to analytics and logs. MongoDB is still a great storage choice for most projects. However, not all users have MongoDB as part of their tech stack. Some are in heavily regulated industries which means adding it would be a pain. For others, the document storage type and lack of proper ACID transaction support may not be the best solution. These users can now choose a SQL database solution instead.  + +From version 4.0, Tyk Dashboard and Tyk Pump will support four data storage layers, which can be configured separately, each with a different officially supported database solution (if needed). All data stored in SQL databases will provide the same information in the Dashboard that MongoDB did. + +While SQL support for Tyk products does not depend on specific database features, with this release, we will provide official support for [PostgreSQL DB for production purposes]({{< ref "/content/planning-for-production/database-settings.md" >}}), and SQLite for development and PoC environments. Note that SQL support is available for self-managed setups only. + +As part of SQL support we are also providing tooling to perform seamless migration of your Dashboard data from Mongo to SQL. However, at the moment migration of analytics data is not supported. +[MongoDB to SQL migration docs]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}) + +#### Changelog +- Now it is possible to configure GraphQL upstream authentification, in order for Tyk to work with its schema +- JWT scopes now support arrray and comma delimeters +- Go plugins can be attached on per-endpoint level, similar to virtual endpoints + +#### Updated Versions +Tyk Dashboard 4.0 +Tyk Pump 1.5 + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 3.2 Release Notes +### 3.2.0 Release Notes + +#### Release Notes + +##### Bring your own Identity Provider - Dynamic Client Registration now available! + +DCR is a protocol of the Internet Engineering Task Force put in place to set standards in the dynamic registration of clients with authorization servers. This feature is a way for you to integrate your Tyk Developer Portal with an external identity provider such as Keycloak, Gluu, Auth0 or Okta. +The portal developer won't notice a difference. However, when they create the app via Tyk Developer portal, Tyk will dynamically register that client on your authorization server. This means that it is the Authorization Server that will issue the Client ID and Client Secret for the app. + +Check our DCR docs [here]({{< ref "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration" >}}) + +We also took this opportunity to give a refresh to the portal settings UI so let us know if you like it! + +##### GraphQL and UDG improvements + +We've updated the GraphQL functionality of our [Universal Data Graph]({{< ref "universal-data-graph" >}}). You’re now able to deeply nest GraphQL & REST APIs and stitch them together in any possible way. + +Queries are now possible via WebSockets and Subscriptions are coming in the next Release (3.3.0). + +You're also able to configure [upstream Headers dynamically]({{< ref "universal-data-graph/udg-getting-started/header-forwarding" >}}), that is, you’re able to inject Headers from the client request into UDG upstream requests. For example, it can be used to acccess protected upstreams. + +We've added an easy to use URL-Builder to make it easier for you to inject object fields into REST API URLs when stitching REST APIs within UDG. + +Query-depth limits can now be configured on a per-field level. + +If you’re using GraphQL upstream services with UDG, you’re now able to forward upstream error objects through UDG so that they can be exposed to the client. + + +##### Extendable Tyk Dashboard permissions system + +The Tyk Dashboard permission system can now be extended by writing custom rules using an Open Policy Agent (OPA). The rule engine works on top of the Tyk Dashboard API, which means you can control not only access rules, but also the behavior of all Dashboard APIs (except your public developer portal). You can find more details about OPA [here]({{< ref "/content/tyk-dashboard/open-policy-agent.md" >}}). + +In addition, you can now create your own custom permissions using the Additional Permissions API or by updating `security.additional_permissions` map in the Tyk Dashboard config, and writing Opa rule containing logic for the new permission. + +#### Changelog + +In addition to the above, version 3.2 includes all the fixes that are part of 3.0.5 +https://github.com/TykTechnologies/tyk/releases/tag/v3.0.5 + +#### Updated Versions +Tyk Dashboard 3.2 + +#### Upgrade process +If you already have GraphQL or UDG APIs you need to follow this upgrade guide https://tyk.io/docs/graphql/migration-guide/ + +## 3.1 Release Notes +### 3.1.0 Release Notes + +#### Release Highlights + +##### Identity Management UX and SAML support +You will notice that the experience for creating a new profile in the Identity management section of the dashboard was changed to a ‘wizard’ approach which reduces the time it takes to get started and configure a profile. +In addition, users are now able to use SAML for the dashboard and portal login, whether you use TIB(Tyk Identity Broker) internally or externally of the dashboard. + +This follows the recent changes that we have made to embed TIB (Tyk Identity Broker)in the dashboard. See 3.0 [release notes](https://tyk.io/docs/release-notes/version-3.0/) for more information regarding this. + +To learn more [see the documentation](https://tyk.io/docs/getting-started/tyk-components/identity-broker/) + +##### UDG (Universal Data Graph) & GraphQL +###### Schema Validation + +For any GraphQL API that is created via Dashboard or through our API, the GraphQL schema is now validated before saving the definition. Instant feedback is returned in case of error. + +###### Sync / Update schema with upstream API (Proxy Only Mode) + +If you’ve configured just a proxy GraphQL API, you can now keep in sync the upstream schema with the one from the API definition, just by clicking on the `Get latest version` button on the `Schema` tab from API Designer + +Docs [here](https://tyk.io/docs/graphql/syncing-schema/) + +###### Debug logs + +You can now see what responses are being returned by the data sources used while configuring a UDG (universal data graph). These can be seen by calling the `/api/debug` API or using the playground tab within API designer. + +The data that will be displayed will show information on the query before and after the request to a data source happens, as follows: + +Before the request is sent: + +Example log message: "Query.countries: preSendHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Fieldname and Upstream url; + + +After the request is sent: + +Example log message: "Query.countries: postReceiveHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Filename, response body, status code. + +Example: + +```{"typename": "Query", "fielname": "countries", "response_body": "{\"data\":{}}", "status_code": 200}``` + +Docs [here](https://tyk.io/docs/graphql/graphql-playground/) + +##### Portal +###### GraphQL Documentation + +Documentation for the GraphQL APIs that you are exposing to the portal is available now through a GraphQL Playground UI component, same as on the playground tab of API Designer. + +Also to overcome the CORS issues that you might encounter while testing documentation pages on the portal, we have pre-filled the CORS settings section in API Designer with explicit values from the start. All you need to do is to check the “Enable CORS” option. + +###### Portal - API key is hidden in email +You now have the option to hide the API key in the email generated after you approve the key request for a developer. + +[Docs here](https://tyk.io/docs/tyk-developer-portal/key-requests/) + + +#### Changelog +The 3.1 version includes the fixes that are part of 3.0.1. +https://github.com/TykTechnologies/tyk/releases/tag/v3.0.1 + + +#### Updated Versions +- Tyk Dashboard 3.1 + +## 3.0 Release Notes +### 3.0.0 Release Notes + +#### Release Highlights + +##### Version changes and LTS releases + +We have bumped our major Tyk Gateway version from 2 to 3, a long overdue change as we’ve been on version 2 for 3 years. We have also changed our Tyk Dashboard major version from 1 to 3, and from now on it will always be aligned with the Tyk Gateway for major and minor releases. The Tyk Pump has also now updated to 1.0, so we can better indicate major changes in future. + +Importantly, such a big change in versions does not mean that we going to break backward compatibility. More-over we are restructuring our internal release strategy to guarantee more stability and to allow us to deliver all Tyk products at a faster pace. We aim to bring more clarity to our users on the stability criteria they can expect, based on the version number. +Additionally we are introducing Long Term Releases (also known as LTS). + +Read more about this changes in our blogpost: https://tyk.io/introducing-long-term-support-some-changes-to-our-release-process-product-versioning/ + +##### New Look and Feel + +We have a brand new look to our Tyk Dashboard. About half a year ago, we made some changes to our visual branding to better express our love for creativity and great UX. Those changes started with our website and now we are also incorporating these visual changes into the UI of our products. We do this to keep our brand consistent across the whole Tyk experience and to enhance your experience using our products. + +See our updated [Tutorials]({{< ref "getting-started/installation" >}}) section. + +##### Universal Data Graph and GraphQL + +Tyk now supports GraphQL **natively**. This means Tyk doesn’t have to use any external services or process for any GraphQL middleware. You can securely expose existing GraphQL APIs using our GraphQL core functionality. + +In addition to this you can also use Tyk’s integrated GraphQL engine to build a Universal Data Graph. The Universal Data Graph (UDG) lets you expose existing services as one single combined GraphQL API. + +All this without even have to build your own GraphQL server. If you have existing REST APIs all you have to do is configure the UDG and Tyk has done the work for you. + +With the Universal Data Graph Tyk becomes your central integration point for all your internal as well as external APIs. In addition to this, the UDG benefits from all existing solutions that already come with your Tyk installation. That is, your Data Graph will be secure from the start and there’s a large array of out of the box middlewares you can build on to power your Graph. + +Read more about the [GraphQL]({{< ref "graphql" >}}) and [Universal Data Graph]({{< ref "universal-data-graph" >}}) + + +##### Policies and Keys UX changes + +We have a lot to update you on with our UX & UI revamp, but one thing we want to highlight here are the updates to the policies and keys Dashboard pages. We know there was confusion in the way we set policies and keys up in the Tyk Dashboard, so we redesigned the UI workflow to make it less error-prone, simpler and more intuitive when you create, view and edit security policies and keys. + +When you create, view or edit a key the steps are in a more logical order. We’ve removed the long form that needed to be filled out and replaced it with tabs so you can find and enter information easily. We’ve also grouped all information within each API so you know the exact set up of each of your access rights without any confusion. The new workflow should allow tasks to be completed faster and more efficiently. + +See updated tutorials on how to [create a policy]({{< ref "getting-started/create-security-policy" >}}) and [keys]({{< ref "getting-started/create-api-key" >}}) + +We also have a [blog post](https://tyk.io/the-transformation-of-policies-and-keys/) that explains what we've done, and why we did it. + + +##### Tyk Identity broker now built-in to the Dashboard + +Previously you had to run a separate process to setup SSO (single sign on). Now this functionality is built-in to the dashboard and got UI revamp. So now you can just start the dashboard, and via UI, create a SSO flow, without installing 3-rd party components. Including SSO via social logins, OpenID Connect and LDAP (with SAML coming very soon!) including integration with the Dashboards RBAC and your Identity Provider. + +See [updated flow details]({{< ref "tyk-identity-broker" >}}) + + +##### Using external secret management services + +Want to reference secrets from a KV store in your API definitions? We now have native Vault & Consul integration. You can even pull from a tyk.conf dictionary or environment variable file. + +[Read more]({{< ref "tyk-configuration-reference/kv-store" >}}) + + +##### Co-Process Response Plugins + +We added a new middleware hook allowing middleware to modify the response from the upstream. Using response middleware you can transform, inspect or obfuscate parts of the response body or response headers, or fire an event or webhook based on information received by the upstream service. + +At the moment the Response hook is supported for [Python and gRPC plugins]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-work#coprocess-dispatcher---hooks" >}}). + + +##### Enhanced Gateway health check API + +Now the standard Health Check API response include information about health of the dashboard, redis and mdcb connections. +You can configure notifications or load balancer rules, based on new data. For example, you can be notified if your Tyk Gateway can’t connect to the Dashboard (or even if it was working correctly with the last known configuration). + +[Read More]({{< ref "planning-for-production/ensure-high-availability/health-check" >}}) + +##### Enhanced Detailed logging +Detailed logging is used in a lot of the cases for debugging issues. Now as well as enabling detailed logging globally (which can cause a huge overhead with lots of traffic), you can enable it for a single key, or specific APIs. + +New detailed logging changes are available only to our Self-Managed customers currently. + +[Read More]({{< ref "tyk-stack/tyk-pump/useful-debug-modes" >}}) + +##### Better Redis failover + +Now, if Redis is not available, Tyk will be more gracefully handle this scenario, and instead of simply timing out the Redis connection, will dynamically disable functionality which depends on redis, like rate limits or quotas, and will re-enable it back once Redis is available. The Tyk Gateway can even be started without Redis, which makes possible scenarios, such as when the Gateway proxies Redis though itself, like in a Redis Sentinel setup. + +##### Weight-Based Load Balancing + +The Tyk Dashboard now allows you to control weighting of the upstreams, when using load balancing functionality. For example now you can configure Tyk to send 20% of traffic to one upstream, with 80% to another upstream service. + +This enables you to perform Canary or A/B tests of their APIs and services. Similarly, if caches require warming, then we can send a low % of traffic to these services, and when confident that they can handle the load, start incrementally sending a higher % of traffic to these services. + +[Read More]({{< ref "planning-for-production/ensure-high-availability/load-balancing#configure-load-balancing-and-weighting-via-the-dashboard" >}}) + +##### Ability to shard analytics to different data-sinks + +In a multi-org deployment, each organization, team, or environment might have their preferred analytics tooling. At present, when sending analytics to the Tyk Pump, we do not discriminate analytics by org - meaning that we have to send all analytics to the same database - e.g. MongoDB. Now the Tyk Pump can be configured to send analytics for different organizations to different places. E.g. Org A can send their analytics to MongoDB + DataDog. But Org B can send their analytics to DataDog + expose the Prometheus metrics endpoint. + +It also becomes possible to put a {{}}blocklist{{}} in-place, meaning that some data sinks can receive information for all orgs, whereas others will not receive OrgA’s analytics if blocked. + +This change requires updating to new Tyk Pump 1.0 + +[Read More]({{< ref "tyk-pump/configuration" >}}) + +##### 404 Error logging - unmatched paths + +Concerned that client’s are getting a 404 response? Could it be that the API definition or URL rewrites have been misconfigured? Telling Tyk to track 404 logs, will cause the Tyk Gateway to produce error logs showing that a particular resource has not been found. + +The feature can be enabled by setting the config `track_404_logs` to `true` in the gateway's config file. + + +#### Changelog +- Fixed the bug when tokens created with non empty quota, and quota expiration set to `Never`, were treated as having unlimited quota. Now such tokens will stop working, once initial quota is reached. + +#### Updated Versions + +- Tyk Dashboard 3.0 +- Tyk Pump 1.0 + +#### Upgrading From Version 2.9 + +No specific actions required. +If you are upgrading from version 2.8, pls [read this guide]({{< ref "developer-support/release-notes/archived#upgrading-from-version-28" >}}) + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### API Documentation + +- [OpenAPI Document]({{}}) +- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) + +### FAQ + +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. + + + diff --git a/tyk-docs/content/developer-support/release-notes/gateway.md b/tyk-docs/content/developer-support/release-notes/gateway.md new file mode 100644 index 0000000000..58c6154566 --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/gateway.md @@ -0,0 +1,4850 @@ +--- +title: Tyk Gateway Release Notes +date: 2024-10-08T15:51:11Z +description: + "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.6.X series." +tags: ["Tyk Gateway", "Release notes", "v5.6", "5.6.0", "5.6.1", "5.6", "changelog"] +aliases: + - /product-stack/tyk-gateway/release-notes/overview + - /product-stack/tyk-gateway/release-notes/version-3.0 + - /product-stack/tyk-gateway/release-notes/version-3.1 + - /product-stack/tyk-gateway/release-notes/version-3.2 + - /product-stack/tyk-gateway/release-notes/version-4.0 + - /product-stack/tyk-gateway/release-notes/version-4.1 + - /product-stack/tyk-gateway/release-notes/version-4.2 + - /product-stack/tyk-gateway/release-notes/version-4.3 + - /product-stack/tyk-gateway/release-notes/version-5.0 + - /product-stack/tyk-gateway/release-notes/version-5.1 + - /product-stack/tyk-gateway/release-notes/version-5.2 + - /product-stack/tyk-gateway/release-notes/version-5.3 + - /product-stack/tyk-gateway/release-notes/version-5.4 + - /product-stack/tyk-gateway/release-notes/version-5.5 + - /product-stack/tyk-gateway/release-notes/version-5.6 + - /product-stack/tyk-gateway/release-notes/version-5.7 + - /release-notes/version-3.0 + - /release-notes/version-3.1 + - /release-notes/version-3.2 + - /release-notes/version-4.0 + - /release-notes/version-4.1 + - /release-notes/version-4.2 + - /release-notes/version-4.3 + - /release-notes/version-5.0 + - /release-notes/version-5.1 +--- + +**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) + +**This page contains all release notes for Gateway displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 5.7 Release Notes + +### 5.7.0 Release Notes + +#### Release Date 03 December 2024 + +#### Release Highlights + +We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0">}}) below. + +##### Tyk Streams - asynchronous API management with Tyk + +Tyk is now entering the asynchronous API management space with a bang by delivering Tyk Streams to our users! +Many API management solutions fail to fully support event-driven architectures, causing fragmented management, inconsistent security practices, and increased operational complexity. With event-driven architectures on the rise recently, keeping everything under control and enforcing standards at the organizational level has become a challenge. + +**Tyk Streams** is an event streaming solution available within the Tyk API Management Platform, which applies proven API management principles to simplify event and streams handling. +This release brings capabilities to stream data and events using Kafka, Websocket, SSE and HTTP protocols. It also becomes possible to mediate the message format between Avro and JSON on the fly. + +- Merge together various sources of events to present to consumers as a unified stream. +- Apply authentication and authorization to streams of messages, just as you do for your RESTful APIs +- Expose async APIs via Tyk Portal, so that they are easily discoverable + +All of this possible in self-managed and k8s deployments of Tyk! + +#### Breaking Changes + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.7.0} + + +##### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.7.0 | MDCB v2.7.2 | MDCB v2.4.2 | +| | Operator v1.1.0 | Operator v0.17 | +| | Sync v2.0.1 | Sync v1.4.3 | +| | Helm Chart v2.2 | Helm all versions | +| | EDP v1.12 | EDP all versions | +| | Pump v1.11.1 | Pump all versions | +| | TIB (if using standalone) v1.6.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). + + +#### Upgrade instructions {#upgrade-5.7.0} +If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.7.0) + - ```bash + docker pull tykio/tyk-gateway:v5.7.0 + ``` +- Helm charts + - [tyk-charts v2.2.0]({{}}) + +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.7.0} + + +##### Added + +
      +
    • +
      +Added Stream Analytics Error Handling + +Added to Streams analytics capability to capture and report common error scenarios, including broker connectivity issues and standard HTTP errors, ensuring comprehensive request tracking for Streams-processed requests. +
      +
    • +
    • +
      +Integrated Streams Validator with Streams API + +Connected the new OAS validator to the /streams endpoint, adding proper error handling and validation responses for invalid stream configurations. +
      +
    • +
    • +
      +Extended Streams Configuration Validation + +Extended the OAS validator to include Streams configuration validation, enforcing allowlisted components and validating nested broker configurations while implementing schema validation for Streams configurations. +
      +
    • +
    • +
      +New Streams Configuration Validator + +Introduced a new validator derived from the existing OAS schema, adapting it for Streams validation with modified requirements for upstreamURL and x-tyk-streaming fields. This validator is now used by both the Dashboard API streams endpoint and streams configuration validator. +
      +
    • +
    • +
      +Added Logging for Streams + +Refined streams logging behavior to match Tyk's logging patterns, reducing unnecessary log output and improving log clarity. +
      +
    • +
    • +
      +Simplified Streams Configuration Support + +Implemented allowlist-based validation for components in streams configurations, replacing the previous blocklist approach. Supported components now include Kafka, WebSocket, SSE, and HTTP for both inputs and outputs (including broker combinations), along with JSON-Avro bidirectional conversion processors, while other components like scanners, caches, and buffers are blocked by default. This validation is enforced consistently across Gateway, Dashboard API, and UI. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Resolved HTTP Input Timeout in Tyk Streams + +When using Tyk Streams and sending input via http, the requests sometimes timed out causing a problem for the consumers. The issue has been fixed and now inputs via http for Tyk Streams work as intended. +
      +
    • +
    • +
      +Improved backwards compatibility when working with Tyk OAS APIs + +Fixed a backwards compatibility issue with Tyk OAS API schema validation. When downgrading from a Tyk version, schema validation could fail if new fields had been added to the Tyk OAS API definition. This change relaxes the strictness of validation to allow additional properties. +
      +
    • +
    • +
      +Fixed Policy Merge Issue with Path-Based Permissions + +Resolved a bug where path-based permissions in policies were not preserved when policies were combined, potentially omitting URL values and incorrectly restricting access. The updated behavior ensures that URL access rights from all applicable policies are merged, regardless of policy order, allowing seamless enforcement of combined permissions. +
      +
    • +
    • +
      +Resolved API Routing Issue with Trailing Slashes and Overlapping Listen Paths + +Fixed a routing issue that caused incorrect API matching when dealing with APIs that lacked a trailing slash, used custom domains, or had similar listen path patterns. Previously, the router prioritized APIs with longer subdomains and shorter listen paths, leading to incorrect matches when listen paths shared prefixes. This fix ensures accurate API matching, even when subdomains and listen paths overlap. +
      +
    • +
    • +
      +Optimized Gateway Handling for Large Payloads + +Fixed an issue that caused increased memory consumption when proxying large response payloads. The Gateway now handles large payloads more efficiently in terms of speed and memory usage. +
      +
    • +
    + +## 5.6 Release Notes + +### 5.6.1 Release Notes + +#### Release Date 18 October 2024 + +#### Release Highlights + + + +This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data +plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.6.1 to +avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.6.1">}}) below. + +#### Breaking Changes + + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.6.1} + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | -------------------------------- | ----------------------- | +| 5.6.1 | MDCB v2.7.1 | MDCB v2.4.2 | +| | Operator v1.0.0 | Operator v0.17 | +| | Sync v2.0 | Sync v1.4.3 | +| | Helm Chart v2.1 | Helm all versions | +| | EDP v1.11 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------- | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + + + +There are no deprecations in this release. + + + + +#### Upgrade instructions {#upgrade-5.6.1} + +If you are upgrading to 5.6.1, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.6.1) + - ```bash + docker pull tykio/tyk-gateway:v5.6.1 + ``` +- Helm charts + + - [tyk-charts v2.1.0]({{}}) + +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.6.1} + + + +##### Fixed + + +
      +
    • +
      +Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud + +In version 5.6.0, Tyk Gateway could encounter a panic when attempting to reconnect to the control plane after it was +restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control +plane following reconnections and reducing the need for manual intervention. + +
      +
    • +
    + + + + + +### 5.6.0 Release Notes + +#### Release Date 10 October 2024 + +{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when +reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk +Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    + +

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. +

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    +Recommendations:
    +

      +
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      +We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. + +
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      +Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      +
    +

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. +{{< /note >}} + +#### Release Highlights + + + +We are thrilled to announce new updates and improvements in Tyk 5.6.0, bringing more control, flexibility, and +performance. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.6.0">}}) below. + +##### Per endpoint Rate Limiting for clients + +Building on the [per-endpoint upstream rate +limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have +now added [per-endpoint client +rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature allows +for more granular control over client consumption of API resources by associating the rate limit with the access key, +enabling you to manage and optimize API usage more effectively. + +##### Gateway logs in JSON format + +You can now output Tyk Gateway system logs in JSON format. This allows for easier integration with logging systems and +more structured log data. + +##### Go upgrade to 1.22 + +We’ve upgraded the Tyk Gateway to Golang 1.22, bringing improved performance, better security, and enhanced stability to +the core system. + +#### Breaking Changes + + + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.6.0} + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | -------------------------------- | ----------------------- | +| 5.6.0 | MDCB v2.7.1 | MDCB v2.4.2 | +| | Operator v1.0.0 | Operator v0.17 | +| | Sync v2.0 | Sync v1.4.3 | +| | Helm Chart v2.1 | Helm all versions | +| | EDP v1.11 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------- | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + + + +There are no deprecations in this release. + + + + +#### Upgrade instructions {#upgrade-5.6.0} + +If you are upgrading to 5.6.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.6.0) + - ```bash + docker pull tykio/tyk-gateway:v5.6.0 + ``` +- Helm charts + + - [tyk-charts v2.1.0]({{}}) + +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.6.0} + + + +##### Added + + +

      +
    • +
      +Per endpoint client rate limiting + +Building on the [per-endpoint upstream rate +limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have +added [per-endpoint client +rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature +provided users with more precise control over API resource consumption by linking rate limits to access keys, allowing +for better management and optimization of API usage. + +
      +
    • +
    • +
      +New option to generate Gateway system logs in JSON format + +The Tyk Gateway now supports logging in JSON format. To enable this feature, set the environment variable +`TYK_GW_LOGFORMAT` to `json`. If a different value is provided, the logs will default to the standard format. This +enhancement allows for improved log processing and integration with various monitoring tools. + +
      +
    • +
    + +##### Changed + + +
      +
    • +
      +Upgrade to Go 1.22 for Tyk Dashboard + +The Tyk Gateway and Tyk Dashboard have been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, +strengthened security, and access to the latest features available in the new Golang release. + +
      +
    • +
    + +##### Fixed + + +
      +
    • +
      +Data plane gateways sometimes didn't synchronise policies and APIs on start-up + +We have enhanced the initial synchronization of Data Plane gateways with the Control Plane to ensure more reliable +loading of policies and APIs on start-up. A synchronous initialization process has been implemented to avoid sync +failures and reduce the risk of service disruptions caused by failed loads. This update ensures smoother and more +consistent syncing of policies and APIs in distributed deployments. + +
      +
    • +
    • +
      +Quota wasn't respected under extreme load + +We have fixed an issue where the quota limit was not being consistently respected during request spikes, especially in +deployments with multiple gateways. The problem occurred when multiple gateways cached the current and remaining quota +counters at the end of quota periods. To address this, a distributed lock mechanism has been implemented, ensuring +coordinated quota resets and preventing discrepancies across gateways. + +
      +
    • + + +
    • +
      +Rate limits were incorrectly combined when multiple policies were applied to a key + +We have fixed an issue where API-level rate limits set in multiple policies were not correctly applied to the same key. +With this update, when multiple policies configure rate limits for a key, the key will now receive the highest rate +limit from the combined policies, ensuring proper enforcement of limits. + +
      +
    • +
    • +
      +Restored key creation performance to Gateway 4.0.12/4.3.3 levels + +We have addressed a performance regression where key creation for policies with a large number of APIs (100+) became +significantly slower in Tyk 4.0.13/5.0.1. The operation, which previously took around 1.5 seconds, has been taking over +20 seconds since versions 4.0.13/5.0.1. This issue has been resolved by optimizing Redis operations during key creation, +restoring the process to the previous duration, even with a large number of APIs in the policy. + +
      +
    • +
    + +##### Security Fixes + + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security +vulnerabilities: + +- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) +
      +
    • +
    + + + + + + + +## 5.5 Release Notes + +### 5.5.2 Release Notes + +#### Release Date 03 October 2024 + +#### Release Highlights +This release replaces Tyk Gateway 5.5.1 which was accidentally released as a non-distroless image. + + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.5.2} + +##### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.2 | MDCB v2.7 | MDCB v2.4.2 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v2.0.0 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.5.2} +If you are upgrading to 5.5.2, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.2) + - ```bash + docker pull tykio/tyk-gateway:v5.5.2 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{< ref "developer-support/release-notes/helm-chart#200-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +--- + +### 5.5.1 Release Notes + +#### Release Date 26 September 2024 + +#### Release Highlights +This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway configuration options to control path matching strictness. + +For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v5.5.1) below. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Dependencies {#dependencies-5.5.1} + +##### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.1 | MDCB v2.7 | MDCB v2.4.2 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v2.0.0 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions {#upgrade-5.5.1} +If you are upgrading to 5.5.1, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.1) + - ```bash + docker pull tykio/tyk-gateway:v5.5.1 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{< ref "developer-support/release-notes/helm-chart#200-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.5.1} + +##### Added + +
      +
    • +
      +Implemented Gateway configuration options to set URL path matching strictness + +We have introduced two new options in the `http_server_options` [Gateway configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching when Tyk performs checks on whether middleware or other logic should be applied to a request: + +- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API definition +- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API definition +- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is performed + +These configuration options provide control to avoid unintended matching of paths from Tyk's default *wildcard* match. Use of regex special characters when declaring the endpoint path in the API definition will automatically override these settings for that endpoint. + +Tyk recommends that exact matching is employed, but both options default to `false` to avoid introducing a breaking change for existing users. + +The example Gateway configuration file `tyk.conf.example` has been updated to set the recommended *exact matching* with: + + - `http_server_options.enable_path_prefix_matching = true` + - `http_server_options.enable_path_suffix_matching = true` + - `http_server_options.enable_strict_routes = true` +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Incorrectly configured regex in policy affected Path-Based Permissions authorization + +Fixed an issue when using granular [Path-Based Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly handles both of these scenarios granting access only to the expected resources. +
      +
    • +
    • +
      +Missing path parameter can direct to the wrong endpoint + +Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to `/user/{id}`. +
      +
    • +
    + +--- + +### 5.5.0 Release Notes + +#### Release Date 12 August 2024 + +#### Release Highlights + +We are thrilled to introduce Tyk Gateway 5.5, bringing advanced rate-limiting capabilities, enhanced certificate authentication, and performance optimizations. For a comprehensive list of changes, please refer to the [changelog]({{< ref "#Changelog-v5.5.0">}}) below. + +##### Per Endpoint Rate Limiting + +Now configure rate limits at the endpoint level for both [Tyk OAS]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas" >}}) and [Tyk Classic APIs]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic" >}}), providing granular protection for upstream services against overloading and abuse. + +##### Root CA Support for Client Certificates + +Simplify certificate management with support for root Certificate Authority (CA) certificates, enabling clients to authenticate using certificates signed by the [configured root CA]({{< ref "/api-management/authentication-authorization#faq" >}}). + +##### Optimised AST Document Handling + +Experience improved performance with optimised creation and usage of Abstract Syntax Tree (AST) documents in our GQL library, reducing memory usage and enhancing efficiency. + +#### Breaking Changes + +Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in the image. + +#### Dependencies {#dependencies-5.5.0} + + +##### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.5.0 | MDCB v2.7 | MDCB v2.4.2 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v1.6 | Helm all versions | +| | EDP v1.10 | EDP all versions | +| | Pump v1.11 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + + + + +#### Upgrade instructions {#upgrade-5.5.0} +If you are upgrading to 5.5.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.0) + - ```bash + docker pull tykio/tyk-gateway:v5.5.0 + ``` +- Helm charts + - [tyk-charts v1.6]({{< ref "/developer-support/release-notes/helm-chart#160-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.5.0} + + +##### Added + +
      +
    • +
      +Added root CA support for client certificate authentication + +We've added support for you to register Certificate Authority (CA) certificates in your API definitions when using static mutual TLS (mTLS). Tyk can now authenticate clients presenting certificates signed by the registered root CA, simplifying certificate management for multiple clients sharing a common CA. +
      +
    • +
    • +
      +Optimised creation and usage of AST documents in GQL library + +Optimised the creation and usage of AST documents in our GQL library to reduce significant memory allocations caused by pre-allocations during initial creation. These optimizations free up resources more efficiently, minimising performance penalties with increased requests to the Gateway. +
      +
    • +
    • +
      +Implemented upstream endpoint rate limits + +Introduced new more granular controls for request rate limiting. Rate limits can now be configured at the endpoint level in Tyk OAS and Tyk Classic API definitions. +
      +
    • +
    • +
      +Improved handling of requests to non-existent versions of APIs when using URL path versioning + +When using the URL path to indicate the API version (for example `/v1/my-api`) it is common to strip the version identifier (e.g. `/v1`) from the path before proxying the request to the upstream. If the client doesn't provide any version identifier this could lead to an invalid target URL and failed requests, rather than correctly redirecting to the default version. We have introduced an optional configuration `url_versioning_pattern` where you can specify a regex that Tyk will use to identify if the URL contains a version identifier and avoiding the accidental stripping of valid upstream path. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Fixed an issue where transformation middleware could incorrectly be applied to Tyk OAS API endpoints with nested paths + +Fixed an issue when using Tyk OAS APIs where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered so that the standard behaviour of Tyk is followed, whereby path matching is performed starting from the longest path, preventing middleware misapplication and ensuring both the HTTP method and URL match accurately. +
      +
    • +
    • +
      +Optimised key creation process to avoid unnecessary Redis `DeleteRawKey` commands + +Previously, key creation or reset led to an exponential number of Redis `DeleteRawKey` commands; this was especially problematic for access lists with over 100 entries. The key creation sequence now runs only once, eliminating redundant deletion of non-existent keys in Redis. This optimization significantly reduces deletion events, enhancing performance and stability for larger access lists. +
      +
    • +
    • +
      +Resolved SSE streaming issue + +Addressed a bug that caused Server Side Event (SSE) streaming responses to be considered for caching, which required buffering the response and prevented SSE from being correctly proxied. +
      +
    • +
    • +
      +Fixed analytics latency reporting for MDCB setups + + Resolved an issue where Host and Latency fields (Total and Upstream) were not correctly reported for Tyk Gateways in MDCB data planes. The fix ensures accurate Host values and Latency measurements are now captured and displayed in the generated traffic logs. +
      +
    • +
    + + +##### Security Fixes + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security vulnerabilities: +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + + +--- + + + + + +## 5.4 Release Notes +### 5.4.0 Release Notes + +#### Release Date 2 July 2024 + +#### Breaking Changes + +**Attention: Please read this section carefully** + +We have fixed a bug in the way that Tyk calculates the [key-level rate limit]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}) when multiple policies are applied to the same key. This fix alters the logic used to calculate the effective rate limit and so may lead to a different rate limit being applied to keys generated from your existing policies. See the [change log](#fixed) for details of the change. + +#### Dependencies {#dependencies-5.4.0} + + +##### Compatibility Matrix For Tyk Components + +| Gateway Version | Recommended Releases | Backwards Compatibility | +|---- |---- |---- | +| 5.4.0 | MDCB v2.6 | MDCB v2.4.2 | +| | Operator v0.18 | Operator v0.17 | +| | Sync v1.5 | Sync v1.4.3 | +| | Helm Chart v1.5.0 | Helm all versions | +| | EDP v1.9 | EDP all versions | +| | Pump v1.10.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +The above table needs reviewing and updating if necessary + +##### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +**The above table needs reviewing and updating if necessary** + +#### Deprecations + +There are no deprecations in this release. + + + + +#### Upgrade instructions {#upgrade-5.4.0} +If you are upgrading to 5.4.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +Add upgrade steps here if necessary. + +#### Release Highlights + +We're thrilled to introduce exciting enhancements in Tyk Gateway 5.4, aimed at improving your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the change log below. + +##### Enhanced Rate Limiting Strategies + +We've introducing a [Rate Limit Smoothing]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) option for the spike arresting Redis Rate Limiter to give the upstream time to scale in response to increased request rates. + +##### Fixed MDCB Issue Relating To Replication Of Custom Keys To Dataplanes + +Resolved an issue encountered in MDCB environments where changes to custom keys made via the Dashboard were not properly replicated to dataplanes. The issue impacted both key data and associated quotas, in the following versions: + +- 5.0.4 to 5.0.12 +- 5.1.1 and 5.1.2 +- 5.2.0 to 5.2.6 +- 5.3.0 to 5.3.2 + +###### Action Required +Customers should clear their edge Redis instances of any potentially affected keys to maintain data consistency and ensure proper synchronization across their environments. Please refer to the item in the [fixed](#fixed) section of the changelog for recommended actions. + +##### Fixed Window Rate Limiter + +Ideal for persistent connections with load-balanced gateways, the [Fixed Window Rate Limiter]({{< ref "/getting-started/key-concepts/rate-limiting#fixed-window-rate-limiter" >}}) algorithm mechanism ensures fair handling of requests by allowing only a predefined number to pass per rate limit window. It uses a simple shared counter in Redis so requests do not need to be evenly balanced across the gateways. + +##### Event handling with Tyk OAS + +We’ve added support for you to [register webhooks]({{< ref "/basic-config-and-security/report-monitor-trigger-events/webhooks" >}}) with your Tyk OAS APIs so that you can handle events triggered by the Gateway, including circuit breaker and quota expiry. You can also assign webhooks to be fired when using the new [smoothing rate limiter]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) to notify your systems of ongoing traffic spikes. + +##### Enhanced Header Handling in GraphQL APIs + +Introduced a features object in API definitions for GQL APIs, including the `use_immutable_headers` attribute. This allows advanced header control, enabling users to add new headers, rewrite existing ones, and selectively remove specific headers. Existing APIs will have this attribute set to `false` by default, ensuring no change in behavior. For new APIs, this attribute is true by default, facilitating smoother migration and maintaining backward compatibility. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.4.0) + - ```bash + docker pull tykio/tyk-gateway:v5.4.0 + ``` +- Helm charts + - [tyk-charts v1.5]({{< ref "/developer-support/release-notes/helm-chart#150-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.4.0} + + +##### Added + +
      +
    • +
      +Implemented Fixed Window Rate Limiting for load balancers with keep-alives + +Introduced a [Fixed Window Rate Limiting]({{< ref "/getting-started/key-concepts/rate-limiting#fixed-window-rate-limiter" >}}) mechanism to handle rate limiting for load balancers with keep-alives. This algorithm allows the defined number of requests to pass for every rate limit window and blocks any excess requests. It uses a simple shared counter in Redis to count requests. It is suitable for situations where traffic towards Gateways is not balanced fairly. To enable this rate limiter, set `enable_fixed_window_rate_limiter` in the gateway config or set the environment variable `TYK_GW_ENABLEFIXEDWINDOWRATELIMITER=true`. +
      +
    • +
    • +
      +Introduced Rate Limit Smoothing for scaling + +Implemented [Rate Limit Smoothing]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) as an extension to the existing Redis Rate Limiter to gradually adjust the rate based on smoothing configuration. Two new Gateway events have been created (`RateLimitSmoothingUp` and `RateLimitSmoothingDown`) which will be triggered as smoothing occurs. These can be used to assist with auto-scaling of upstream capacity during traffic spikes. +
      +
    • +
    • +
      +Introduced ‘use_immutable_headers’ for Advanced Header Control in GraphQL APIs + +We've added the `use_immutable_headers` option to the GraphQL API configuration, offering advanced header transformation capabilities. When enabled, users can add new headers, rewrite existing ones, and selectively remove specific headers, allowing granular control without altering the original request. Existing APIs will default to `false`, maintaining current behavior until ready for upgrade. +
      +
    • +
    • +
      +Enhanced manual schema addition for GQL APIs + +Introduced an option for users to manually provide GQL schemas when creating APIs in Tyk, eliminating the dependency on upstream introspection. This feature enables the creation and editing of GQL APIs in Tyk even when upstream introspection is unavailable, providing flexibility for schema management as upstream configurations evolve over time. +
      +
    • +
    • +
      +Introduced Tyk v3 GraphQL Engine in Gateway + +The new GraphQL engine, version 3-preview, is now available in Tyk Gateway. It can be used for any GQL API by using the following enum in raw API definition: *"version": "3-preview"*. This experimental version offers optimized GQL operation resolution, faster response times, and a more efficient data loader. It is currently not recommended for production use and will be stabilised in future releases, eventually becoming the default for new GQL APIs in Tyk. +
      +
    • +
    • +
      +Introduced features Object in API Definition for GQL APIs + +Enhanced request headers handling in API definitions for GQL APIs by introducing a *features* object. Users can now set the `use_immutable_headers` attribute, which defaults to false for existing APIs, ensuring no change in header behavior. For new APIs, this attribute is `true` by default, facilitating smoother migration and maintaining backwards compatibility. +
      +
    • +
    • +
      +New Tyk OAS features + +We’ve added some more features to the Tyk OAS API, moving closer to full parity with Tyk Classic. In this release we’ve added controls that allow you: to enable or prevent generation of traffic logs at the API-level and to enable or prevent the availability of session context to middleware. We’ve also added the facility to register webhooks that will be fired in response to Gateway events. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Resolved an issue where changes to custom keys were not properly replicated to dataplanes + +Resolved a critical issue affecting MDCB environments, where changes to custom keys made via the dashboard were not properly replicated to dataplanes. This affected both the key data and associated quotas. This issue was present in versions: +- 5.0.4 to 5.0.12 +- 5.1.1 and 5.1.2 +- 5.2.0 to 5.2.6 +- 5.3.0 to 5.3.2 + +**Action Required** + +Customers are advised to clear their edge Redis instances of any keys that might have been affected by this bug to ensure data consistency and proper synchronization across their environments. There are several methods available to address this issue: + +1. **Specific Key Deletion via API**: To remove individual buggy keys, you can use the following API call: + +```bash +curl --location --request DELETE 'http://tyk-gateway:{tyk-hybrid-port}/tyk/keys/my-custom-key' \ --header 'X-Tyk-Authorization: {dashboard-key}' +``` + +Replace `{tyk-hybrid-port}`, `my-custom-key` and `{dashboard-key}` with your specific configuration details. This method is safe and recommended for targeted removals without affecting other keys. + +2. **Bulk Key Deletion Using Redis CLI**: For environments with numerous affected keys, you might consider using the Redis CLI to remove keys en masse: + +```bash +redis-cli --scan --pattern 'apikey-*' | xargs -L 1 redis-cli del +redis-cli --scan --pattern 'quota-*' | xargs -L 1 redis-cli del +``` + +This method can temporarily impact the performance of the Redis server, so it should be executed during a maintenance window or when the impact on production traffic is minimal. + +3. **Complete Redis Database Flush**: If feasible, flushing the entire Redis database offers a clean slate: + +```bash +redis-cli FLUSHALL ASYNC +``` + +**Implications** +Regardless of the chosen method, be aware that quotas will be reset and will need to resynchronize across the system. This may temporarily affect reporting and rate limiting capabilities. +
      +
    • +
    • +
      +Resolved service discovery issue when using Consul + +Addressed an issue with service discovery where an IP returned by Consul wasn't parsed correctly on the Gateway side, leading to unexpected errors when proxying requests to the service. Typically, service discovery returns valid domain names, which did not trigger the issue. +
      +
    • +
    • +
      +Corrected naming for semantic conventions attributes in GQL Spans + +Fixed an issue where GQL Open Telemetry semantic conventions attribute names that lacked the 'graphql' prefix, deviating from the community standard. All attributes now have the correct prefix. +
      +
    • +
    • +
      +Fixed missing GraphQL OTel attributes in spans on request validation failure + +Corrected an issue where GraphQL OTel attributes were missing from spans when request validation failed in cases where `detailed_tracing` was set to `false`. Traces now include GraphQL attributes (operation name, type, and document), improving debugging for users. +
      +
    • +
    • +
      +Resolved Gateway panic with Persist GraphQL Middleware + +Fixed a gateway panic issue observed by users when using the *Persist GQL* middleware without defined arguments. The gateway will no longer throw panics in these cases. +
      +
    • +
    • +
      +Resolved issue with GraphQL APIs handling OPTIONS requests + +Fixed an issue with GraphQL API's Cross-Origin Resource Sharing (CORS) configuration, which previously caused the API to fail in respecting CORS settings. This resulted in an inability to proxy requests to upstream servers and handle OPTIONS/CORS requests correctly. With this fix, users can now seamlessly make requests, including OPTIONS method requests, without encountering the previously reported error. +
      +
    • +
    • +
      +Resolved conflict with multiple APIs sharing listen path on different domains + +Fixed an issue where the Gateway did not respect API domain settings when there was another API with the same listen path but no domain. This could lead to the custom domain API not functioning correctly, depending on the order in which APIs were loaded. APIs with custom domains are now prioritised before those without custom domains to ensure that the custom domain is not ignored. +
      +
    • +
    • +
      +Resolved nested field mapping issue in Universal Data Graph + +Addressed a problem with nested field mapping in UDG for GraphQL (GQL) operations. Previously, querying a single nested field caused an error, while including another *normal* field from the same level allowed the query to succeed. This issue has been fixed to ensure consistent behavior regardless of the query composition. +
      +
    • +
    • +
      +Fixed an error in the calculation of effective rate limit from multiple policies + +Fixed a long-standing bug in the algorithm used to determine the effective rate limit when multiple policies are applied to a key. If more than one policy is applied to a key then Tyk will apply the highest request rate permitted by any of the policies that defines a rate limit. + +Rate limits in Tyk are defined using two elements: `rate`, which is the number of requests and `per`, which is the period over which those requests can be sent. So, if `rate` is 90 and `per` is 30 seconds for a key, Tyk will permit a maximum of 90 requests to be made using the key in a 30 second period, giving an effective maximum of 180 requests per minute (or 3 rps). + +Previously, Tyk would take the highest `rate` and the highest `per` from the policies applied to a key when determining the effective rate limit. So, if policy A had `rate` set to 90 and `per` set to 30 seconds (3rps) while policy B had `rate` set to 100 and `per` set to 10 seconds (10rps) and both were applied to a key, the rate limit configured in the key would be: `rate = 100` and `per = 30` giving a rate of 3.33rps. + +With the fix applied in Tyk 5.4.0, the Gateway will now apply the highest effective rate to the key - so in this example, the key would take the rate limit from policy B: `rate = 100` and `per = 10` (10rps). + +Note that this corrected logic is applied when access keys are presented in API requests. If you are applying multiple policies to keys, there may be a change in the effective rate limit when using Tyk 5.4.0 compared with pre-5.4.0 versions. +
      +
    • +
    + + +##### Security Fixes + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security vulnerabilities: +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + + +--- + + + + + + +## 5.3 Release Notes + +### 5.3.8 Release Notes + +#### Release Date 07 November 2024 + +#### Release Highlights + +This release focuses mainly on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.8">}}) below. + +#### Breaking Changes + +This release has no breaking changes. + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.8 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.22 (GW) | 1.22 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. + + +#### Upgrade Instructions + +If you are upgrading to 5.3.8, please follow the detailed [upgrade instructions](#upgrading-tyk). + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.8) + - ```bash + docker pull tykio/tyk-gateway:v5.3.8 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.8} + + + +##### Added +
      +
    • +
      +Deprecation notice of External OAuth and OpenID Connect options +A deprecation notice for External OAuth and OpenID Connect (OIDC) authentication mechanisms has been implemented in the Gateway logs starting from version 5.3.8. This provides advanced notification to users regarding any APIs configured with these authentication methods in preparation for future upgrades where these middleware options may be removed in version 5.7.0. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Memory consumption reduced in Gateway for large payloads + +This update fixes a bug that caused increased memory usage when proxying large response payloads that was introduced in version 5.3.1, restoring memory requirements to the levels seen in version 5.0.6. Users experiencing out-of-memory errors with 1GB+ file downloads will notice improved performance and reduced latency. +
      +
    • +
    • +
      +Path-based permissions in combined policies not preserved + +We resolved an issue that caused path-based permissions in policies to be lost when policies were combined, potentially omitting URL values and restricting access based on the merge order. It ensures that all applicable policies merge their allowed URL access rights, regardless of the order in which they are applied. +
      +
    • +
    • +
      +Enhanced flexibility in Tyk OAS schema validation + +A backwards compatibility issue in the way that the Gateway handles Tyk OAS API definitions has been addressed by reducing the strictness of validation against the expected schema. Since Tyk version 5.3, the Gateway has enforced strict validation, potentially causing problems for users downgrading from newer versions. With this change, Tyk customers can move between versions seamlessly, ensuring their APIs remain functional and avoiding system performance issues. +
      +
    • +
    • +
      +Fix for API key loss on worker Gateways due to keyspace sync interruption + +This update resolves an issue where API keys could be lost if the [keyspace synchronization]({{}}) between control and data planes was interrupted. The solution now enforces a resynchronization whenever a connection is re-established between MDCB and the data plane, ensuring key data integrity and seamless API access. +
      +
    • +
    + +--- + +### 5.3.7 Release Notes + +#### Release Date 22 October 2024 + +#### Release Highlights + +This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data +plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.3.7 to +avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.7">}}) below. + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.7 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.7 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.7) + - ```bash + docker pull tykio/tyk-gateway:v5.3.7 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.7} + +##### Fixed + + +
      +
    • +
      + Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud +In version 5.3.6, Tyk Gateway could encounter a panic when attempting to reconnect to the control plane after it was restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control plane following reconnections and reducing the need for manual intervention. +
      +
    • +
    + + + +--- + +### 5.3.6 Release Notes + +#### Release Date 04 October 2024 + +{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when +reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk +Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    + +

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. +

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    +Recommendations:
    +

      +
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      +We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. + +
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      +Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      +
    +

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. +{{< /note >}} + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.3.6">}}) below. + +#### Breaking Changes + +Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in +the image. + +If moving from an version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.6 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.6 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.6) + - ```bash + docker pull tykio/tyk-gateway:v5.3.6 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.6} + + + +##### Changed + + +

      +
    • +
      +Upgrade to Go 1.22 for Tyk Gateway + +The Tyk Gateway has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, +and access to the latest features available in the new Golang release. + +
      +
    • + +
    • +
      +Introducing Distroless Containers for Tyk Gateway (2024 LTS) + +In this release, we've enhanced the security of the Tyk Gateway image by changing the build process to support +[distroless](https://github.com/GoogleContainerTools/distroless) containers. This significant update addresses critical +CVEs associated with Debian, ensuring a more secure and minimal runtime environment. Distroless containers reduce the +attack surface by eliminating unnecessary packages, which bolsters the security of your deployments. + +
      +
    • + +
    + +##### Fixed + +
      +
    • +
      +Custom Response Plugins not working for Tyk OAS APIs + +We have resolved an issue where custom [response plugins]({{< ref "plugins/plugin-types/response-plugins" >}}) were not being +triggered for Tyk OAS APIs. This fix ensures that all [supported]({{< ref "getting-started/using-oas-definitions/oas-reference" >}}) +custom plugins are invoked as expected when using Tyk OAS APIs. + +
      +
    • + +
    • +
      +Data plane gateways sometimes didn't synchronise policies and APIs on start-up + +We have enhanced the initial synchronization of Data Plane gateways with the Control Plane to ensure more reliable +loading of policies and APIs on start-up. A synchronous initialization process has been implemented to avoid sync +failures and reduce the risk of service disruptions caused by failed loads. This update ensures smoother and more +consistent syncing of policies and APIs in distributed deployments. + +
      +
    • + +
    • +
      +Quota wasn't respected under extreme load + +We have fixed an issue where the quota limit was not being consistently respected during request spikes, especially in +deployments with multiple gateways. The problem occurred when multiple gateways cached the current and remaining quota +counters at the end of quota periods. To address this, a distributed lock mechanism has been implemented, ensuring +coordinated quota resets and preventing discrepancies across gateways. + +
      +
    • + +
    • +
      +Restored Key Creation Speed in Gateway 4.0.13 and Later + +We have addressed a performance regression identified in Tyk Gateway versions 4.0.13 and later, where key creation for +policies with a large number of APIs (100+) became significantly slower. The operation, which previously took around 1.5 +seconds in versions 4.0.0 to 4.0.12, was taking over 20 seconds in versions 4.0.13 and beyond. This issue has been +resolved by optimizing Redis operations during key creation, restoring the process to its expected speed of +approximately 1.5 seconds, even with a large number of APIs in the policy. + +
      +
    • +
    + +##### Security Fixes + + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security +vulnerabilities: + +- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) +
      +
    • +
    + +--- + +### 5.3.5 Release Notes + +#### Release Date 26 September 2024 + +#### Release Highlights + +This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway +configuration options to control path matching strictness. For a comprehensive list of changes, please refer to the +detailed [changelog]({{< ref "#Changelog-v5.3.5">}}) below. + +#### Breaking Changes + +There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the +explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.5 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.5 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.5) + - ```bash + docker pull tykio/tyk-gateway:v5.3.5 + ``` +- Helm charts + - [tyk-charts v2.0.0]({{}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.5} + + + +##### Added + +
      +
    • +
      +Implemented Gateway configuration options to set URL path matching strictness + +We have introduced two new options in the `http_server_options` [Gateway +configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching +when Tyk performs checks on whether middleware or other logic should be applied to a request: + +- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API + definition +- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API + definition +- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is + performed + +These configuration options provide control to avoid unintended matching of paths from Tyk's default _wildcard_ match. +Use of regex special characters when declaring the endpoint path in the API definition will automatically override these +settings for that endpoint. Tyk recommends that exact matching is employed, but both options default to `false` to avoid +introducing a breaking change for existing users. + +The example Gateway configuration file `tyk.conf.example` has been updated to set the recommended exact matching with: + +- `http_server_options.enable_path_prefix_matching = true` +- `http_server_options.enable_path_suffix_matching = true` +- `http_server_options.enable_strict_routes = true` +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Incorrectly configured regex in policy affected Path-Based Permissions authorization + +Fixed an issue when using granular [Path-Based +Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization +incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue +where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly +handles both of these scenarios granting access only to the expected resources. + +
      +
    • +
    • +
      +Missing path parameter could direct to the wrong endpoint + +Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits +the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to +`/user/{id}`. + +
      +
    • +
    + +--- + +### 5.3.4 Release Notes + +#### Release Date August 26th 2024 + +#### Release Highlights + +Gateway 5.3.4 was version bumped only, to align with Dashboard 5.3.4. Subsequently, no changes were encountered in +release 5.3.4. For further information please see the release notes for Dashboard +[v5.3.4]({{< ref "developer-support/release-notes/dashboard#530-release-notes" >}}) + +#### Breaking Changes + +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the +explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.4 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.4 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.4) + - ```bash + docker pull tykio/tyk-gateway:v5.3.4 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.4} + +Since this release was version bumped only to align with Dashboard v5.3.4, no changes were encountered in this release. + +--- + +### 5.3.3 Release Notes + +#### Release Date August 2nd 2024 + +#### Breaking Changes + +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the +explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.3 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Release Highlights + +##### Bug Fixes + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.3.3">}}) below. + +##### FIPS Compliance + +Tyk Gateway now offers [FIPS 140-2](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf) compliance. For further +details please consult [Tyk API Management +FIPS support]({{< ref "developer-support/release-notes/special-releases#fips-releases" >}}). + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.3 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.3) + - ```bash + docker pull tykio/tyk-gateway:v5.3.3 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.3} + + + +##### Added + + +
      +
    • +
      +Added FIPS compliance + +Added [FIPS compliance]({{< ref "developer-support/release-notes/special-releases#fips-releases" >}}) for Tyk Gateway. + +
      +
    • + +
    • +
      +Corrected ordering of Tyk OAS API paths to prevent middleware misapplication + +Fixed an issue where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the +parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered, preventing this +middleware misapplication and ensuring both the HTTP method and URL match accurately. + +
      +
    • +
    + +--- + +##### Fixed + + +
      +
    • +
      + Optimised key creation to reduce redundant Redis commands + +Addressed an issue where creating or resetting a key caused an exponential number of Redis DeleteRawKey commands. +Previously, the key creation sequence repeated for every API in the access list, leading to excessive deletion events, +especially problematic for access lists with over 100 entries. Now, the key creation sequence executes only once, and +redundant deletion of non-existent keys in Redis has been eliminated, significantly improving performance and stability +for larger access lists. + +
      +
    • +
    • +
      +Resolved SSE streaming issue + +Fixed a bug that caused Server Side Event (SSE) streaming responses to be considered for caching, which required +buffering the response and prevented SSE from being correctly proxied. + +
      +
    • +
    • +
      + Fixed Analytics Latency Reporting for MDCB Setups + +Resolved an issue where Host and Latency fields (Total and Upstream) were not correctly reported for edge gateways in +MDCB setups. The fix ensures accurate Host values and Latency measurements are now captured and displayed in analytics +data. + +
      +
    • +
    + +--- + +### 5.3.2 Release Notes + +#### Release Date 5th June 2024 + +#### Breaking Changes + +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the +explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.2 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.3.2">}}) below. + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.2 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.2) + - ```bash + docker pull tykio/tyk-gateway:v5.3.2 + ``` +- Helm charts + - [tyk-charts v1.4]({{< ref "developer-support/release-notes/helm-chart#140-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.2} + + + +##### Fixed + + +
      +
    • +
      + Remove sensitive information leaked from OpenTelemetry traces + +In Gateway version 5.2+ and 5.3+, we discovered a bug within the OpenTelemetry tracing feature that inadvertently +transmits sensitive information. Specifically, `tyk.api.apikey` and `tyk.api.oauthid` attributes were exposing API keys. +We have fixed the issue to ensure that only the hashed version of the API key is transmitted in traces. + +
      +
    • +
    • +
      +APIs with common listen paths but different custom domains + +Addressed an issue where an API with a custom domain might not be invoked if another API with the same listen path but +no custom domain was also deployed on the Gateway. Now APIs with custom domain names are loaded first, so requests will +be checked against these first before falling back to APIs without custom domains. + +
      +
    • +
    • +
      +Gateway service discovery issue with consul + +Addressed an issue in service discovery where an IP:port returned by Consul wasn't parsed correctly on the Gateway side, +leading to errors when proxying requests to the service. The issue primarily occurred with IP:port responses, while +valid domain names were unaffected. + +
      +
    • +
    • +
      +Resolved Universal Data Graph Nested Field Mapping Issue + +Fixed an issue with nested field mapping in UDG when used with GraphQL (GQL) operations for a field's data source. +Previously, querying only the mentioned field resulted in an error, but querying alongside another 'normal' field from +the same level worked without issue. + +
      +
    • +
    • +
      +Added control over access to context variables from middleware when using Tyk OAS APIs + +Addressed a potential issue when working with Tyk OAS APIs where request context variables are automatically made +available to relevant Tyk and custom middleware. We have introduced a control in the Tyk OAS API definition to disable +this access if required. + +
      +
    • +
    + +--- + +### 5.3.1 Release Notes + +#### Release Date 24 April 2024 + +#### Breaking Changes + +**Attention**: Please read this section carefully. + +There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the +explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade Instructions + +When upgrading to 5.3.1 please follow the [detailed upgrade instructions](#upgrading-tyk). + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.3.1">}}) below. + +#### Dependencies + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.1 | MDCB v2.5.1 | MDCB v2.5.1 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.1) + - ```bash + docker pull tykio/tyk-gateway:v5.3.1 + ``` +- Helm charts + - [tyk-charts v1.3]({{< ref "developer-support/release-notes/helm-chart#130-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.1} + +##### Fixed + +
      +
    • +
      +Improved security: don't load APIs into Gateway if custom plugin bundle fails to load + +Issues were addressed where Tyk failed to properly reject custom plugin bundles with signature verification failures, +allowing APIs to load without necessary plugins, potentially exposing upstream services. With the fix, if the plugin +bundle fails to load (for example, due to failed signature verification) the API will not be loaded and an error will be +logged in the Gateway. + +
      +
    • +
    • +
      +Stability: fixed a Gateway panic that could occur when using custom JavaScript plugins with the Ignore Authentication middleware + +Fixed a panic scenario that occurred when a custom JavaScript plugin that requests access to the session metadata +(`require_session:true`) is assigned to the same endpoint as the Ignore Authentication middleware. While the custom +plugin expects access to a valid session, the configuration flag doesn't guarantee its presence, only that it's passed +if available. As such, the custom plugin should be coded to verify that the session metadata is present before +attempting to use it. + +
      +
    • +
    • +
      +Stability: Gateway could crash when custom Python plugins attempted to access storage + +Fixed a bug where the Gateway could crash when using custom Python plugins that access the Redis storage. The Tyk Python +API methods `store_data` and `get_data` could fail due to connection issues with the Redis. With this fix, the Redis +connection will be created if required, avoiding the crash. + +
      +
    • +
    • +
      +Stability: Gateway panics when arguments are missing in persist GraphQL endpoints + +In some instances users were noticing gateway panics when using the **Persist GQL** middleware without arguments +defined. This issue has been fixed and the gateway will not throw panics in these cases anymore. + +
      +
    • +
    • +
      +Missing GraphQL OTel attributes in spans when requests fail validation + +In cases where `detailed_tracing` was set to `false` and the client was sending a malformed request to a GraphQL API, +the traces were missing GraphQL attributes (operation name, type and document). This has been corrected and debugging +GraphQL with OTel will be easier for users. + +
      +
    • +
    • +
      +Incorrect naming for semantic conventions attributes in GQL spans + +GQL Open Telemetry semantic conventions attribute names were missing `graphql` prefix and therefore were not in line +with the community standard. This has been fixed and all attributes have the correct prefix. + +
      +
    • +
    • +
      +URL Rewrite middleware did not always correctly observe quotas for requests using keys created from policies + +Fixed two bugs in the handling of usage quotas by the URL rewrite middleware when it was configured to rewrite to itself +(e.g. to `tyk://self`). Quota limits were not observed and the quota related response headers always contained `0`. + +
      +
    • +
    • +
      +Tyk Dashboard License Statistics page could display incorrect number of data plane gateways + +Resolved an issue in distributed deployments where the MDCB data plane gateway counter was inaccurately incremented when +a Gateway was stopped and restarted. + +
      +
    • +
    • +
      +Unable to clear the API cache in distributed data plane Gateways from the control plane Dashboard + +Addressed a bug where clearing the API cache from the Tyk Dashboard failed to invalidate the cache in distributed data +plane gateways. This fix requires MDCB 2.5.1. + +
      +
    • +
    • +
      +Unable to load custom Go plugins compiled in RHEL 8 + +Fixed a bug where custom Go plugins compiled in RHEL8 environments were unable to load into Tyk Gateway due to a +discrepancy in base images between the Gateway and Plugin Compiler environments. This fix aligns the plugin compiler +base image with the gateway build environment, enabling seamless plugin functionality on RHEL8 environments. + +
      +
    • +
    • +
      +Removed unused packages from plugin compiler image + +Removed several unused packages from the plugin compiler image. The packages include: docker, buildkit, ruc, sqlite, +curl, wget, and other build tooling. The removal was done in order to address invalid CVE reporting, none of the removed +dependencies are used to provide plugin compiler functionality. + +
      +
    • +
    + +--- + +### 5.3.0 Release Notes + +#### Release Date 5 April 2024 + +#### Breaking Changes + + + +**Attention: Please read this section carefully** + +##### Tyk OAS APIs Compatibility Caveats - Tyk OSS {#TykOAS-v5.3.0} + +This upgrade transitions Tyk OAS APIs out of [Early Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}). + +For licensed deployments (Tyk Cloud, Self Managed including MDCB), please refer to the [release notes of Tyk Dashboard 5.3.0]({{}}). + +- **Out of Early Access** + - This means that from now on, all Tyk OAS APIs will be backwards compatible and in case of a downgrade from v5.3.X to + v5.3.0, the Tyk OAS API definitions will always work. +- **Not Backwards Compatible** + - Tyk OAS APIs in Tyk Gateway v5.3.0 are not [backwards compatible](https://tinyurl.com/3xy966xn). This means that the + new Tyk OAS API format created by Tyk Gateway v5.3.X does not work with older versions of Tyk Gateway, i.e. you + cannot export these API definitions from a v5.3.X Tyk Gateway and import them to an earlier version. + - The upgrade is **not reversible**, i.e. you cannot use version 5.3.X Tyk OAS API definitions with an older version + of Tyk Dashboard. + - This means that if you wish to downgrade or revert to your previous version of Tyk, you will need to restore these + API definitions from a backup. Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed + instructions on backup before upgrading to v5.3.0. + - If you are not using Tyk OAS APIs, Tyk will maintain backward compatibility standards. +- **Not Forward Compatible** + - Tyk OAS API Definitions prior to v5.3.0 are not [forward compatible](https://tinyurl.com/t3zz88ep) with Tyk Gateway + v5.3.X. + - This means that any Tyk OAS APIs created in any previous release (4.1.0-5.2.x) cannot work with the new Tyk Gateway + v5.3.X without being migrated to its [latest format]({{}}). +- **After upgrade (the good news)** + - Tyk OAS API definitions that are part of the file system **are not automatically converted** to the [new + format]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}). Subsequently, users will have to manually update their + OAS API Definitions to the new format. + - If users upgrade to 5.3.0, create new Tyk OAS APIs and then decide to rollback then the upgrade is non-reversible. + Reverting to your previous version requires restoring from a backup. + +**Important:** Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed instructions on +backup before upgrading to v5.3.0 + +##### Python plugin support + +Starting from Tyk Gateway version v5.3.0, Python is no longer bundled with the official Tyk Gateway Docker image to +reduce exposure to security vulnerabilities in the Python libraries. + +Whilst the Gateway still supports Python plugins, you must [extend +the image]({{< ref "plugins/supported-languages/rich-plugins/python/python#install-the-python-development-packages" >}}) +to add the language support. + + + + + + + +#### Dependencies {#dependencies-5.3.0} + + + +##### Compatibility Matrix For Tyk Components + + + +| Gateway Version | Recommended Releases | Backwards Compatibility | +| --------------- | ------------------------------------------------------------------ | ----------------------- | +| 5.3.0 | MDCB v2.5 | MDCB v2.4.2 | +| | Operator v0.17 | Operator v0.16 | +| | Sync v1.4.3 | Sync v1.4.3 | +| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | +| | EDP v1.8.3 | EDP all versions | +| | Pump v1.9.0 | Pump all versions | +| | TIB (if using standalone) v1.5.1 | TIB all versions | + +##### 3rd Party Dependencies & Tools + + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | +| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | +| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | + +Given the potential time difference between your upgrade and the release of this version, we recommend users verify the +ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + + + +In 5.3.0, we have simplified the configuration of response transform middleware. We encourage users to embrace the +`global_headers` mechanism as the `response_processors.header_injector` is now an optional setting and will be removed +in a future release. + + + + +#### Upgrade instructions {#upgrade-5.3.0} + +If you are upgrading to 5.3.0, please follow the detailed [upgrade instructions](#upgrading-tyk). + +**The following steps are essential to follow before upgrading** Tyk Cloud (including Hybrid Gateways) and Self Managed +users - Please refer to the [release notes of Tyk Dashboard 5.3.0]({{}}). + +For OSS deployments - + +1. Backup Your environment using the [usual guidance]({{}}) documented with every release (this includes + backup config file and database). +2. Backup all your API definitions (Tyk OAS API and Classic Definitions) by saving your API and policy files or by + exporting them using the `GET /tyk/apis` and `Get /tyk/policies` +3. Performing the upgrade - follow the instructions in the [upgrade + guide]({{}}) when upgrading Tyk. + +#### Release Highlights + + + +We’re thrilled to announce the release of 5.3.0, an update packed with exciting features and significant fixes to +elevate your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the detailed +[changelog](#Changelog-v5.3.0) below. + +##### Tyk OAS Feature Maturity + +Tyk OAS is now out of [Early +Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}) as we have reached feature maturity. +You are now able to make use of the majority of Tyk Gateway's features from your Tyk OAS APIs, so they are a credible alternative +to the legacy Tyk Classic APIs. + +From Tyk 5.3.0 we support the following features when using Tyk OAS APIs with Tyk Gateway: + +- Security + + - All Tyk-supported client-gateway authentication methods including custom auth plugins + - Automatic configuration of authentication from the OpenAPI description + - Gateway-upstream mTLS + - CORS + +- API-level (global) middleware including: + + - Response caching + - Custom plugins for PreAuth, Auth, PostAuth, Post and Response hooks + - API-level rate limits + - Request transformation - headers + - Response transformation - headers + - Service discovery + - Internal API + +- Endpoint-level (per-path) middleware including: + + - Request validation - headers and body (automatically configurable from the OpenAPI description) + - Request transformation - method, headers and body + - Response transformation - headers and body + - URL rewrite and internal endpoints + - Mock responses (automatically configurable from the OpenAPI description) + - Response caching + - Custom Go Post-Plugin + - Request size limit + - Virtual endpoint + - Allow and block listing + - Do-not-track + - Circuit breakers + - Enforced timeouts + - Ignore authentication + +- Observability + + - Open Telemetry tracing + - Detailed log recording (include payload in the logs) + - Do-not-track endpoint + +- Governance + - API Versioning + +##### Enhanced KV storage of API Definition Fields + +Tyk is able to store configuration data from the API definition in KV systems, such as Vault and Consul, and then +reference these values during configuration of the Tyk Gateway or APIs deployed on the Gateway. Previously this was +limited to the Target URL and Listen Path but from 5.3.0 you are able to store any `string` type field from your API +definition, unlocking the ability to store sensitive information in a centralised location. For full details check out +the [documentation]({{< ref "tyk-configuration-reference/kv-store" >}}) of this powerful feature. + +##### Redis v7.x Compatibility + +We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible +with Redis v7.x. + +##### Gateway and Component Upgrades + +We've raised the bar with significant upgrades to our Gateway and components. Leveraging the power and security of Go +1.21, upgrading Sarama to version 1.41.0 and enhancing the GQL engine with Go version 1.19, we ensure improved +functionality and performance to support your evolving needs seamlessly. + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.0) + - ```bash + docker pull tykio/tyk-gateway:v5.3.0 + ``` +- Helm charts + - [tyk-charts v1.3]({{< ref "developer-support/release-notes/helm-chart#130-release-notes" >}}) +- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) + +#### Changelog {#Changelog-v5.3.0} + + + +##### Added + + +
      +
    • +
      +Additional features now supported when working with Tyk OAS APIs + +The following features have been added in 5.3.0 to bring Tyk OAS to feature maturity: + +- Detailed log recording (include payload in the logs) +- Enable Open Telemetry tracing +- Context variables available to middleware chain +- API-level header transforms (request and response) +- Endpoint-level cache +- Circuit breakers +- Track endpoint logs for inclusion in Dashboard aggregated data +- Do-not-track endpoint +- Enforced upstream timeouts +- Configure endpoint as Internal, not available externally +- URL rewrite +- Per-endpoint request size limit +- Request transformation - method, header +- Response transformation - header +- Custom domain certificates + +
      +
    • +
    • +
      +Enhanced KV storage for API Definition fields + +We have implemented support for all `string` type fields in the Tyk OAS and Tyk Classic API Definitions to be stored in +separate KV storage, including Hashicorp Consul and Vault. + +
      +
    • +
    • +
      +Support for Redis v7.0.x + +Tyk 5.3 refactors Redis connection logic by using +[storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), which integrates with +[go-redis](https://github.com/redis/go-redis) v9. Subsequently, Tyk 5.3 supports Redis v7.0.x. + +
      +
    • +
    • +
      +Clearer error messages from GQL engine for invalid variables (JSON Schema) + +Some of the error messages generated by the GQL engine were unclear for users, especially relating to variable +validation. The errors have been changed and are now much more clearer and helpful in cases where engine processing +fails. + +
      +
    • +
    • +
      +Upgraded GQL Engine's Go version to 1.19 + +Upgraded Go version for GraphQL engine to [1.19](https://go.dev/doc/go1.19). + +
      +
    • +
    • +
      +Enhanced semantic conventions for GraphQL spans in Gateway + +We've added OpenTelemetry semantic conventions for GraphQL spans. Spans will now incorporate ``, +`` and `` tags. + +
      +
    • +
    • +
      +Added support for detailed_tracing to be configured via GQL API definitions + +GraphQL APIs can now use the `detailed_tracing` setting in an API definition. With that property set to `true` any call +to a GraphQL API will create a span for each middleware involved in request processing. While it is set to `false`, only +two spans encapsulating the entire request lifecycle will be generated. This setting helps to reduce the size of traces, +which can get large for GraphQL APIs. Furthermore, this gives users an option to customize the level of tracing detail +to suit their monitoring needs. + +
      +
    • +
    • +
      +Enhanced OpenTelemetry trace generation for UDG with mixed data sources + +This release introduces an enhanced trace generation system for Universal Data Graph (UDG). It consolidates all spans +from both Tyk-managed and external data source executions into a single trace when used together. Furthermore, when UDG +solely utilizes Tyk-managed data sources, trace management is simplified and operational visibility is improved. + +
      +
    • +
    • +
      +Disabled normalize and validate in GraphQL Engine + +For GraphQL requests normalization and validation has been disabled in the GraphQL engine. Both of those actions were +performed in the Tyk Gateway and were unnecessary to be done again in the engine. This enhances performance slightly and +makes detailed OTel traces concise and easier to read. + +
      +
    • +
    • +
      +Enhanced OAS-to-UDG converter handling of arrays of objects in OpenAPI Documents + +The Tyk Dashboard API endpoint _/api/data-graphs/data-sources/import_ now handles OpenAPI schemas with arrays of +objects. This addition means users can now import more complex OpenAPI documents and transform them into UDG +configurations. + +
      +
    • +
    • +
      +OAS-to-UDG converter support for allOf/anyOf/oneOf keywords + +The OAS-to-UDG converter now seamlessly handles OpenAPI descriptions that utilize the _allOf_, _anyOf_ and _oneOf_ +keywords, ensuring accurate and comprehensive conversion to a Tyk API definition. The feature expands the scope of +OpenAPI documents that the converter can handle and allows our users to import REST API data sources defined in OAS in +more complex cases. + +
      +
    • +
    • +
      +Improved UDG's handling of unnamed object definitions in OpenAPI descriptions + +The OAS-to-UDG converter can now create GraphQL types even if an object's definition doesn’t have an explicit name. + +
      +
    • +
    • +
      +Refined handling of arrays of objects in endpoint responses by OAS-to-UDG Converter + +The OAS-to-UDG converter was unable to handle a document properly if an object within the OpenAPI description had no +properties defined. This limitation resulted in unexpected behavior and errors during the conversion process. The tool +will now handle such cases seamlessly, ensuring a smoother and more predictable conversion process. + +
      +
    • +
    • +
      +OAS-to-UDG converter support for enumerated types in OpenAPI descriptions + +Previously OAS-to-UDG converter had limitations in handling enums from OpenAPI descriptions, leading to discrepancies +and incomplete conversions. With the inclusion of enum support, the OAS converter now seamlessly processes enums defined +in your OpenAPI descriptions, ensuring accurate and complete conversion to GraphQL schemas. + +
      +
    • +
    • +
      +Expanded handling of HTTP Status Code ranges by OAS-to-GQL converter + +OAS-to-UDG converter can now handle HTTP status code ranges that are defined by the OpenAPI Specification. This means +that code ranges defined as 1XX, 2XX, etc will be correctly converted by the tool. + +
      +
    • +
    • +
      +Added support for custom rate limit keys + +We have added the capability for users to define a [custom rate limit +key]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys" >}}) +within session metadata. This increases flexibility with rate limiting, as the rate limit can be assigned to different entities +identifiable from the session metadata (such as a client app or organization) and is particularly useful for users of Tyk's +Enterprise Developer Portal. + +
      +
    • +
    + +##### Changed + + +
      +
    • +
      +Prefetch session expiry information from MDCB to reduce API call duration in case Gateway is temporarily disconnected from MDCB + +Previously, when operating in a worker configuration (in the data plane), the Tyk Gateway fetched session expiry +information from the control plane the first time an API was accessed for a given organization. This approach led to a +significant issue: if the MDCB connection was lost, the next attempt to consume the API would incur a long response +time. This delay, typically around 30 seconds, was caused by the Gateway waiting for the session-fetching operation to +time out, as it tried to communicate with the now-inaccessible control plane. + +
      Now, the worker gateway fetches the session expiry information up front, while there is an active connection to +MDCB. This ensures that this data is already available locally in the event of an MDCB disconnection. + +
      This change significantly improves the API response time under MDCB disconnection scenarios by removing the need for +the Gateway to wait for a timeout when attempting to fetch session information from the control plane, avoiding the +previous 30-second delay. This optimization enhances the resilience and efficiency of Tyk Gateway in distributed +environments. + +
      +
    • +
    • +
      +Changes to the Tyk OAS API Definition + +We have made some changes to the Tyk OAS API Definition to provide a stable contract that will now be under +breaking-change control for future patches and releases as Tyk OAS moves out of Early Access. Changes include the +removal of the unnecessary `slug` field and simplification of the custom plugin contract. + +
      +
    • +
    • +
      +Optimized Gateway memory usage and reduced network request payload with Redis Rate Limiter + +We have optimized the allocation behavior of our sliding window log rate limiter implementation ([Redis +Rate Limiter]({{< ref "getting-started/key-concepts/rate-limiting#redis-rate-limiter" >}})). Previously the complete +request log would be retrieved from Redis. With this enhancement only the count of the requests in the window is +retrieved, optimizing the interaction with Redis and decreasing the Gateway memory usage. + +
      +
    • +
    + +##### Fixed + + +
      +
    • +
      +Improved OAuth token management in Redis + +In this release, we fixed automated token trimming in Redis, ensuring efficient management of OAuth tokens by +implementing a new hourly job within the Gateway and providing a manual trigger endpoint. + +
      +
    • +
    • +
      +Tyk Gateway now validates RFC3339 Date-Time Formats + +We fixed a bug in the Tyk OAS Validate Request middleware where we were not correctly validating date-time format +schema, which could lead to invalid date-time values reaching the upstream services. + +
      +
    • +
    • +
      +Inaccurate Distributed Rate Limiting (DRL) behavior on Gateway startup + +Fixed an issue when using the Distributed Rate Limiter (DRL) where the Gateway did not apply any rate limit until a DRL +notification was received. Now the rate of requests will be limited at 100% of the configured rate limit until the DRL +notification is received, after which the limit will be reduced to an even share of the total (i.e. 100% divided by the +number of Gateways) per the rate limit algorithm design. + +
      +
    • +
    • +
      +Duplicate fields added by OAS-to-UDG converter + +Fixed an issue where the OAS-to-UDG converter was sometimes adding the same field to an object type many times. This +caused issues with the resulting GQL schema and made it non-compliant with GQL specification. + +
      +
    • +
    • +
      +Gateway issue processing queries with GQL Engine + +Fixed an issue where the Gateway attempted to execute a query with GQL engine version 1 (which lacks OTel support), +while simultaneously trying to validate the same query with the OpenTelemetry (OTel) supported engine. It caused the API +to fail with an error message "Error socket hang up". Right now with OTel enabled, the gateway will enforce GQL engine +to default to version 2, so that this problem doesn't occur anymore. + +
      +
    • +
    • +
      +Handling arrays of objects in endpoint responses by OAS-to-UDG converter + +The OAS-to-UDG converter now effectively handles array of objects within POST paths. Previously, there were instances +where the converter failed to accurately interpret and represent these structures in the generated UDG configuration. + +
      +
    • +
    • +
      +GQL Playground issues related to encoding of request response + +An issue was identified where the encoding from the GQL upstream cache was causing readability problems in the response +body. Specifically, the upstream GQL cache was utilizing brotli compression and not respecting the Accept-Encoding +header. Consequently, larger response bodies became increasingly unreadable for the GQL engine due to compression, +leading to usability issues for users accessing affected content. The issue has now been fixed by adding the brotli +encoder to the GQL engine. + +
      +
    • +
    • +
      +OAS-to-UDG converter issue with "JSON" return type + +OAS-to-UDG converter was unable to correctly process Tyk OAS API definitions where "JSON" was used as one of enum +values. This issue is now fixed and whenever "JSON" is used as one of enums in the OpenAPI description, it will get +correctly transformed into a custom scalar in GQL schema. + +
      +
    • +
    • +
      +Gateway Panic during API Edit with Virtual Endpoint + +Fixed an issue where the Gateway could panic while updating a Tyk OAS API with the Virtual Endpoint middleware +configured. + +
      +
    • +
    • +
      +Gateway panics during API Reload with JavaScript middleware bundle + +Fixed an issue where reloading a bundle containing JS plugins could cause the Gateway to panic. + +
      +
    • +
    • +
      +GraphQL introspection issue when Allow/Block List enabled + +Fixed an issue where the _Disable introspection_ setting was not working correctly in cases where field-based +permissions were set (allow or block list). It was not possible to introspect the GQL schema while introspection was +technically allowed but field-based permissions were enabled. Currently, Allow/Block list settings are ignored only for +introspection queries and introspection is only controlled by the _Disable introspection_ setting. + +
      +
    • +
    • +
      +Handling of objects without properties in OAS-to-UDG converter + +The OAS-to-UDG converter was unable to handle a document properly if an object within the OpenAPI description had no +properties defined. This limitation resulted in unexpected behavior and errors during the conversion process. The tool +will now handle such cases seamlessly, ensuring a smoother and more predictable conversion process + +
      +
    • +
    • +
      +Fixed memory leak issue in Tyk Gateway v5.2.4 + +Addressed a memory leak issue in Tyk Gateway linked to a logger mutex change introduced in v5.2.4. Reverting these +changes has improved connection management and enhanced system performance. + +
      +
    • + +
    + +##### Security Fixes + + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security +vulnerabilities: + +- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) +
      +
    • +
    + + + + + + + +## 5.2 Release Notes + +### 5.2.5 Release Notes + +#### Release Date 19 Dec 2023 + +#### Breaking Changes + +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights +This release implements a bug fix. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.5">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.5/images/sha256-c09cb03dd491e18bb84a0d9d4e71177eb1396cd5debef694f1c86962dbee10c6?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.5) + +#### Changelog {#Changelog-v5.2.5} + +##### Fixed +
      +
    • +
      + Long custom keys not maintained in distributed Data Planes + +Fixed an issue where custom keys over 24 characters in length were deleted from Redis in the Data Plane when key update action signalled in distributed (MDCB) setups. +
      +
    • +
    + +--- + +### 5.2.4 Release Notes + +#### Release Date 7 Dec 2023 + +#### Breaking Changes +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights +This release enhances security, stability, and performance. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.4">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.4/images/sha256-c0d9e91e4397bd09c85adf4df6bc401b530ed90c8774714bdafc55db395c9aa5?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.4) + +#### Changelog {#Changelog-v5.2.4} + +##### Fixed +
      +
    • +
      + Output from Tyk OAS request validation schema failure is too verbose + +Fixed an issue where the Validate Request middleware provided too much information when reporting a schema validation failure in a request to a Tyk OAS API. +
      +
    • +
    • +
      + Gateway incorrectly applying policy Path-Based Permissions in certain circumstances + +Fixed a bug where the gateway didn't correctly apply Path-Based Permissions from different policies when using the same `sub` claim but different scopes in each policy. Now the session will be correctly configured for the claims provided in the policy used for each API request. +
      +
    • +
    • +
      + Plugin compiler not correctly supporting build_id to differentiate between different builds of the same plugin + +Fixed a bug when using the build_id argument with the Tyk Plugin Compiler that prevents users from hot-reloading different versions of the same plugin compiled with different build_ids. The bug was introduced with the plugin module build change implemented in the upgrade to Go version 1.19 in Tyk 5.1.0. +
      +
    • +
    • +
      + URL Rewrite fails to handle escaped character in query parameter + +Fixed a bug that was introduced in the fix applied to the URL Rewrite middleware in Tyk 5.0.5/5.1.2. The previous fix did not correctly handle escaped characters in the query parameters. Now you can safely include escaped characters in your query parameters and Tyk will not modify them in the URL Rewrite middleware. +
      +
    • +
    + +--- + +### 5.2.3 Release Notes + +#### Release Date 21 Nov 2023 + +#### Breaking Changes +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights +This release enhances security, stability, and performance. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.3">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.3/images/sha256-8a94658c8c52ddfe30f78c5438dd4308c4d019655d8af7773a33fdffda097992?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.3) + +#### Changelog {#Changelog-v5.2.3} + +##### Fixed + +
      +
    • +
      +Python version not always correctly autodetected + +Fixed an issue where Tyk was not autodetecting the installed Python version if it had multiple digits in the minor version (e.g. Python 3.11). The regular expression was updated to correctly identify Python versions 3.x and 3.xx, improving compatibility and functionality. +
      +
    • +
    • +
      + Gateway blocked trying to retrieve keys via MDCB when using JWT auth + +Improved the behavior when using JWTs and the MDCB (Multi Data Center Bridge) link is down; the Gateway will no longer be blocked attempting to fetch OAuth client info. We’ve also enhanced the error messages to specify which type of resource (API key, certificate, OAuth client) the data plane Gateway failed to retrieve due to a lost connection with the control plane. +
      +
    • +
    • +
      + Custom Authentication Plugin not working correctly with policies + +Fixed an issue where the session object generated when creating a Custom Key in a Go Plugin did not inherit parameters correctly from the Security Policy. +
      +
    • +
    • +
      + Attaching a public key to an API definition for mTLS brings down the Gateway + +Fixed an issue where uploading a public key instead of a certificate into the certificate store, and using that key for mTLS, caused all the Gateways that the APIs are published on to cease negotiating TLS. This fix improves the stability of the gateways and the successful negotiation of TLS. +
      +
    • +
    + +##### Added + +
      +
    • +
      +Implemented a `tyk version` command that provides more details about the Tyk Gateway build + +This prints the release version, git commit, Go version used, architecture and other build details. +
      +
    • +
    • +
      +Added option to fallback to default API version + +Added new option for Tyk to use the default version of an API if the requested version does not exist. This is referred to as falling back to default and is enabled using a [configuration]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#versioning" >}}) flag in the API definition; for Tyk OAS APIs the flag is `fallbackToDefault`, for Tyk Classic APIs it is `fallback_to_default`. +
      +
    • +
    • +
      +Implemented a backoff limit for GraphQL subscription connection retry + +Added a backoff limit for GraphQL subscription connection retry to prevent excessive error messages when the upstream stops working. The connection retries and linked error messages now occur in progressively longer intervals, improving error handling and user experience. +
      +
    • +
    + +##### Community Contributions + +Special thanks to the following member of the Tyk community for their contribution to this release: + +
      +
    • +
      +Runtime log error incorrectly produced when using Go Plugin Virtual Endpoints + +Fixed a minor issue with Go Plugin virtual endpoints where a runtime log error was produced from a request, even if the response was successful. Thanks to [uddmorningsun](https://github.com/uddmorningsun) for highlighting the [issue](https://github.com/TykTechnologies/tyk/issues/4197) and proposing a fix. +
      +
    • +
    + +--- + +### 5.2.2 Release Notes + +#### Release Date 31 Oct 2023 + +#### Breaking Changes +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.2">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.2/images/sha256-84d9e083872c78d854d3b469734ce40b7e77b9963297fe7945e214a0e6ccc614?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.2) + +#### Changelog {#Changelog-v5.2.2} + +##### Security + +The following CVEs have been resolved in this release: + +- [CVE-2022-40897](https://nvd.nist.gov/vuln/detail/CVE-2022-40897) +- [CVE-2022-1941](https://nvd.nist.gov/vuln/detail/CVE-2022-1941) +- [CVE-2021-23409](https://nvd.nist.gov/vuln/detail/CVE-2021-23409) +- [CVE-2021-23351](https://nvd.nist.gov/vuln/detail/CVE-2021-23351) +- [CVE-2019-19794](https://nvd.nist.gov/vuln/detail/CVE-2019-19794) +- [CVE-2018-5709](https://nvd.nist.gov/vuln/detail/CVE-2018-5709) +- [CVE-2010-0928](https://nvd.nist.gov/vuln/detail/CVE-2010-0928) +- [CVE-2007-6755](https://nvd.nist.gov/vuln/detail/CVE-2007-6755) + + + +##### Fixed + +
      +
    • +
      +Enforced timeouts were incorrect on a per-request basis + +Fixed an issue where [enforced timeouts]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) values were incorrect on a per-request basis. Since we enforced timeouts only at the transport level and created the transport only once within the value set by [max_conn_time]({{< ref "tyk-oss-gateway/configuration#max_conn_time" >}}), the timeout in effect was not deterministic. Timeouts larger than 0 seconds are now enforced for each request. +
      +
    • +
    • +
      +Incorrect access privileges were granted in security policies + +Fixed an issue when using MongoDB and [Tyk Security Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This was due to the policy cleaning operation that is triggered when an API is deleted from a policy in a MongoDB installation. With this fix, the policy cleaning operation will not remove the final (deleted) API from the policy; Tyk recognizes that the API record is invalid and denies granting access rights to the key. +
      +
    • +
    • +
      +Logstash formatter timestamp was not in RFC3339 Nano format + +The [Logstash]({{< ref "log-data#aggregated-logs-with-logstash" >}}) formatter timestamp is now in [RFC3339Nano](https://www.rfc-editor.org/rfc/rfc3339) format. +
      +
    • +
    • +
      +In high load scenarios the DRL Manager was not protected against concurrent read and write operations + +Fixed a potential race condition where the *DRL Manager* was not properly protected against concurrent read/write operations in some high-load scenarios. +
      +
    • +
    • +
      +Performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API + +Fixed a performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API. The token is now validated against [JWKS or the public key]({{}}) in the API Definition. +
      +
    • +
    • +
      +JWT middleware introduced latency which reduced overall request/response throughput + +Fixed a performance issue where JWT middleware introduced latency which significantly reduced the overall request/response throughput. +
      +
    • +
    • +
      +UDG examples were not displayed when Open Policy Agent (OPA) was enabled + +Fixed an issue that prevented *UDG* examples from being displayed in the dashboard when the *Open Policy Agent(OPA)* is enabled. +
      +
    • +
    • +
      +Sensitive information logged when incorrect signature provided for APIs protected by HMAC authentication + +Fixed an issue where the Tyk Gateway logs would include sensitive information when the incorrect signature is provided in a request to an API protected by HMAC authentication. +
      +
    • +
    + +##### Community Contributions + +Special thanks to the following members of the Tyk community for their contributions to this release: + +
      +
    • +
      +ULID Normalization implemented +- Implemented *ULID Normalization*, replacing valid ULID identifiers in the URL with a `{ulid}` placeholder for analytics. This matches the existing UUID normalization. Thanks to [Mohammad Abdolirad](https://github.com/atkrad) for the contribution. +
      +
    • +
    • +
      +Duplicate error message incorrectly reported when a custom Go plugin returned an error + +Fixed an issue where a duplicate error message was reported when a custom Go plugin returned an error. Thanks to [@PatrickTaibel](https://github.com/PatrickTaibel) for highlighting the issue and suggesting a fix. +
      +
    • +
    + + +--- + +### 5.2.1 Release Notes + +#### Release Date 10 Oct 2023 + +#### Breaking Changes +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +If you are on a 5.2.0 we advise you to upgrade ASAP and if you are on an older version skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +#### Release Highlights +This release primarily focuses on bug fixes. +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.1/images/sha256-47cfffda64ba492f79e8cad013a476f198011f5a97cef32464f1f47e1a9be9a2?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.1.2) + +#### Changelog {#Changelog-v5.2.1} + +##### Changed + +
      +
    • +
      +Log messaging quality enhanced + +Enhance log message quality by eliminating unnecessary messages +
      +
    • +
    • +
      +Configurable retry for resource loading introduced + +Fixed a bug that occurs during Gateway reload where the Gateway would continue to load new API definitions even if policies failed to load. This led to a risk that an API could be invoked without the associated policies (for example, describing access control or rate limits) having been loaded. Now Tyk offers a configurable retry for resource loading, ensuring that a specified number of attempts will be made to load resources (APIs and policies). If a resource fails to load, an error will be logged and the Gateway reverts to its last working configuration. + +We have introduced two new variables to configure this behavior: +- `resource_sync.retry_attempts` - defines the number of [retries]({{< ref "tyk-oss-gateway/configuration#resource_syncretry_attempts" >}}) that the Gateway should perform during a resource sync (APIs or policies), defaulting to zero which means no retries are attempted +- `resource_sync.interval` - setting the [fixed interval]({{< ref "tyk-oss-gateway/configuration#resource_syncinterval" >}}) between retry attempts (in seconds) +
      +
    • +
    • +
      +Added http.response.body.size and http.request.body.size for OpenTelemetry users + +For OpenTelemetry users, we've included much-needed attributes, `http.response.body.size` and `http.request.body.size`, in both Tyk HTTP spans and upstream HTTP spans. This addition enables users to gain better insight into incoming/outgoing request/response sizes within their traces. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Memory leak was encountered if OpenTelemetry enabled + +Fixed a memory leak issue in Gateway 5.2.0 if [OpenTelemetry](https://opentelemetry.io/) (abbreviated "OTel") is [enabled](https://tyk.io/docs/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/#enabling-opentelemetry-in-two-steps). It was caused by multiple `otelhttp` handlers being created. We have updated the code to use a single instance of `otelhttp` handler in 5.2.1 to improve performance under high traffic load. +
      +
    • +
    • +
      +Memory leak encountered when enabling the strict routes option + +Fixed a memory leak that occurred when enabling the [strict routes option]({{< ref "tyk-oss-gateway/configuration#http_server_optionsenable_strict_routes" >}}) to change the routing to avoid nearest-neighbor requests on overlapping routes (`TYK_GW_HTTPSERVEROPTIONS_ENABLESTRICTROUTES`) +
      +
    • +
    • +
      +High rates of Tyk Gateway reloads were encountered + +Fixed a potential performance issue related to high rates of *Tyk Gateway* reloads (when the Gateway is updated due to a change in APIs and/or policies). The gateway uses a timer that ensures there's at least one second between reloads, however in some scenarios this could lead to poor performance (for example overloading Redis). We have introduced a new [configuration option]({{< ref "tyk-oss-gateway/configuration#reload_interval" >}}), `reload_interval` (`TYK_GW_RELOADINTERVAL`), that can be used to adjust the duration between reloads and hence optimize the performance of your Tyk deployment. +
      +
    • +
    • +
      +Headers for GraphQL headers were not properly forwarded upstream for GQL/UDG subscriptions + +Fixed an issue with GraphQL APIs, where [headers]({{< ref "graphql/gql-headers" >}}) were not properly forwarded upstream for [GQL/UDG subscriptions]({{< ref "getting-started/key-concepts/graphql-subscriptions" >}}). +
      +
    • +
    • +
      +Idle upstream connections were incorrectly closed + +Fixed a bug where the Gateway did not correctly close idle upstream connections (sockets) when configured to generate a new connection after a configurable period of time (using the [max_conn_time]({{}}) configuration option). This could lead to the Gateway eventually running out of sockets under heavy load, impacting performance. +
      +
    • +
    • +
      +Extra chunked transfer encoding was uncessarily added to rawResponse analytics + +Removed the extra chunked transfer encoding that was added unnecessarily to `rawResponse` analytics +
      +
    • +
    • +
      +Reponse body transformation not execute when Persist GraphQL middleware used + +Resolved a bug with HTTP GraphQL APIs where, when the [Persist GraphQL middleware]({{< ref "graphql/persisted-queries" >}}) was used in combination with [Response Body Transform]({{< ref "advanced-configuration/transform-traffic/response-body" >}}), the response's body transformation was not being executed. +{{< img src="img/bugs/bug-persistent-gql.png" width="400" alt="Bug in persistent gql and response body transform" title="The setup of graphQL middlewares">}} +
      +
    • +
    • +
      +Unable to modify a key that provides access to an inactive or draft API + +Fixed a bug where, if you created a key which provided access to an inactive or draft API, you would be unable to subsequently modify that key (via the Tyk Dashboard UI, Tyk Dashboard API or Tyk Gateway API) +
      +
    • +
    + + +##### Dependencies +- Updated TykTechnologies/gorm to v1.21 in Tyk Gateway + +--- + +### 5.2.0 Release Notes + +#### Release Date 29 Sep 2023 + +#### Breaking Changes +**Attention**: Please read carefully this section. We have two topics to report: + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights + +We're thrilled to bring you some exciting enhancements and crucial fixes to improve your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. + +##### Added Body Transform Middleware to Tyk OAS API Definition + +With this release, we are adding the much requested *Body Transformations* to *Tyk OAS API Definition*. You can now [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) middleware for both [request]({{< ref "transform-traffic/request-body" >}}) and [response]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) body transformations and - as a Tyk Dashboard user - you’ll be able to do so from within our simple and elegant API Designer tool. + +##### Reference Tyk OAS API Definition From Within Your Custom Go Plugins + +Reference the *Tyk OAS API definition* from within your custom *Go Plugins*, bringing them up to standard alongside those you might use with a *Tyk Classic API*. + +##### Configure Caching For Each API Endpoint + +We’ve added the ability to [configure]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}) per-endpoint timeouts for Tyk’s response cache, giving you increased flexibility to tailor your APIs to your upstream services. + +##### Added Header Management in Universal Data Graph + +With this release we are adding a concept of [header management]({{< ref "universal-data-graph/concepts/header_management" >}}) in *Universal Data Graph*. With multiple upstream data sources, data graphs need to be sending the right headers upstream, so that our users can effectively track the usage and be able to enforce security rules at each stage. All *Universal Data Graph* headers now have access to *request context* variables like *JWT claims*, *IP address* of the connecting client or *request ID*. This provides extensive configurability of customizable information that can be sent upstream. + +##### Added Further Support For GraphQL WebSocket Protocols + +Support for [WebSocket]({{< ref "/graphql/graphql-websockets" >}}) protocols between client and the *Gateway* has also been expanded. Instead of only supporting the *graphql-ws protocol*, which is becoming deprecated, we now also support [graphql-transport-ws](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) by setting the *Sec-WebSocket-Protocol* header to *graphql-transport-ws*. + +##### Added OpenTelemetry Tracing + +In this version, we're introducing the support for *OpenTelemetry Tracing*, the new [open standard](https://opentelemetry.io/) for exposing observability data. This addition gives you improved visibility into how API requests are processed, with no additional license required. It is designed to help you with monitoring and troubleshooting APIs, identify bottlenecks, latency issues and errors in your API calls. For detailed information and guidance, you can check out our [OpenTelemetry Tracing]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview" >}}) resource. + +*OpenTelemetry* makes it possible to isolate faults within the request lifetime through inspecting API and Gateway meta-data. Additionally, performance bottlenecks can be identified within the request lifetime. API owners and developers can use this feature to understand how their APIs are being used or processed within the Gateway. + +*OpenTelemetry* functionality is also available in [Go Plugins]({{< ref "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins" >}}). Developers can write code to add the ability to preview *OpenTelemetry* trace attributes, error status codes etc., for their Go Plugins. + +We offer support for integrating *OpenTelemetry* traces with supported open source tools such [Jaeger]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger" >}}), [Dynatrace]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace" >}}) or [New Relic]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic" >}}). This allows API owners and developers to gain troubleshooting and performance insights from error logs, response times etc. +You can also find a direct link to our docs in the official [OpenTelemetry Integration page](https://opentelemetry.io/ecosystem/integrations/) + +{{< warning success >}} +**Warning** + +*Tyk Gateway 5.2* now includes *OpenTelemetry Tracing*. Over the next year, we'll be deprecating *OpenTracing*. We recommend migrating to *OpenTelemetry* for better trace insights and more comprehensive support. This change will offer you significant advantages in managing your distributed tracing needs. + +{{< /warning >}} + +#### Downloads + +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.0/images/sha256-cf0c57619e8285b1985bd5e4bf86b8feb42abec56cbc241d315cc7f8c0d43025?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.0) + +#### Changelog {#Changelog-v5.2.0} + +##### Added: + +
      +
    • +
      +Added support for configuring distributed tracing behavior + +Added support for [configuring]({{< ref "tyk-oss-gateway/configuration#opentelemetry" >}}) distributed tracing behavior of *Tyk Gateway*. This includes enabling tracing, configuring exporter types, setting the URL of the tracing backend to which data is to be sent, customizing headers, and specifying enhanced connectivity for *HTTP*, *HTTPS* and *gRPC*. Subsequently, users have precise control over tracing behavior in *Tyk Gateway*. +
      +
    • +
    • +
      +Added support for configuring OpenTelemetry + +Added support to configure *OpenTelemetry* [sampling types and rates]({{< ref "tyk-oss-gateway/configuration#opentelemetrysampling" >}}) in the *Tyk Gateway*. This allows users to manage the need for collected detailed tracing information against performance and resource usage requirements. +
      +
    • +
    • +
      +Added span attributes to simplify identifying Tyk API and request meta-data per request + +Added span attributes to simplify identifying Tyk API and request meta-data per request. Example span attributes include: *tyk.api.id*, *tyk.api.name*, *tyk.api.orgid*, *tyk.api.tags*, *tyk.api.path*, *tyk.api.version*, *tyk.api.apikey*, *tyk.api.apikey.alias* and *tyk.api.oauthid*. This allows users to use *OpenTelemetry* [semantic conventions](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/README.md) to filter and create metrics for increased insight and observability. +
      +
    • +
    • +
      +Add custom resource attributes to allow process information to be available in traces + +Added custom resource attributes: *service.name*, *service.instance.id*, *service.version*, *tyk.gw.id*, *tyk.gw.dataplane*, *tyk.gw.group.id*, *tyk.gw.tags* to allow process information to be available in traces. +
      +
    • +
    • +
      +Allow clients to retrieve the trace ID from response headers when OpenTelemetry enabled + +Added a new feature that allows clients to retrieve the trace ID from response headers. This feature is available when *OpenTelemetry* is [enabled]({{< ref "tyk-oss-gateway/configuration#opentelemetryenabled" >}}) and simplifies debugging API requests, empowering users to seamlessly correlate and analyze data for a specific trace in any *OpenTelemetry* backend like [Jaeger](https://www.jaegertracing.io/). +
      +
    • +
    • +
      +Allow detailed tracing to be enabled/disabled at API level + +Added configuration parameter to enable/disable [detail_tracing]({{< ref "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview#step-2-enable-detailed-tracing-at-api-level-optional" >}}) for *Tyk Classic API*. +
      +
    • +
    • +
      +Add OpenTelemetry support for GraphQL + +Added *OpenTelemetry* support for GraphQL. This is activated by setting [opentelemetry.enabled]({{< ref "tyk-oss-gateway/configuration#opentelemetryenabled" >}}) to *true*. This integration enhances observability by enabling GQL traces in any OpenTelemetry backend, like [Jaeger](https://www.jaegertracing.io/), granting users comprehensive insights into the execution process, such as request times. +
      +
    • +
    • +
      +Add support to configure granual control over cache timeout at the endpoint level + +Added a new [timeout option]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}), offering granular control over cache timeout at the endpoint level. +
      +
    • +
    • +
      +Enable request context variables in UDG global or data source headers + +Added support for using [request context variables]({{< ref "context-variables#available-context-variables" >}}) in *UDG* global or data source headers. This feature enables much more advanced [header management]({{< ref "/universal-data-graph/concepts/header_management" >}}) for UDG and allows users to extract header information from an incoming request and pass it to upstream data sources. +
      +
    • +
    • +
      +Add support for configuration of global headers for any UDG + +Added support for configuration of [global headers]({{< ref "/universal-data-graph/concepts/header_management" >}}) for any *UDG*. These headers will be forwarded to all data sources by default, enhancing control over data flow. +
      +
    • +
    • +
      +Add ability for Custom GoPlugin developers using Tyk OAS APIs to access the API Definition + +Added the ability for Custom GoPlugin developers using *Tyk OAS APIs* to access the *API Definition* from within their plugin. The newly introduced *ctx.getOASDefinition* function provides read-only access to the *OAS API Definition* and enhances the flexibility of plugins. +
      +
    • +
    • +
      +Add support for graphql-transport-ws websocket protocol + +Added support for the websocket protocol, *graphql-transport-ws protocol*, enhancing communication between the client and *Gateway*. Users [connecting]({{< ref "/graphql/graphql-websockets" >}}) with the header *Sec-WebSocket-Protocol* set to *graphql-transport-ws* can now utilize messages from this [protocol](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) for more versatile interaction. +
      +
    • +
    • +
      +Developers using Tyk OAS API Definition can configure body transform middleware for API reponses + +Added support for API Developers using *Tyk OAS API Definition* to [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) a body transform middleware that operates on API responses. This enhancement ensures streamlined and selective loading of the middleware based on configuration, enabling precise response data customization at the per-endpoint level. +
      +
    • +
    • +
      +Enhanced Gateway usage reporting, allowing reporting of number of connected gateways and data planes +- Added support for enhanced *Gateway* usage reporting. *MDCB v2.4* and *Gateway v5.2* can now report the number of connected gateways and data planes. Features such as data plane gateway visualisation are available in *Tyk Dashboard* for enhanced monitoring of your deployment. +
      +
    • +
    + +##### Changed: +
      +
    • +
      +Response Body Transform middleware updated to remove unnecessary entries in Tyk Classic API Definition + +Updated *Response Body Transform* middleware for *Tyk Classic APIs* to remove unnecessary entries in the *API definition*. The dependency on the *response_processor.response_body_transform* configuration has been removed to streamline middleware usage, simplifying API setup. +
      +
    • +
    + +##### Fixed: +
      +
    • +
      +UDG was dropping array type parameter in certain circumstances from final request URL sent upstream + +Fixed an issue with querying a *UDG* API containing a query parameter of array type in a REST data source. The *UDG* was dropping the array type parameter from the final request URL sent upstream. +
      +
    • +
    • +
      +Introspection of GraphQL schemas raised an error when dealing with some custom root types + +Fixed an issue with introspecting GraphQL schemas that previously raised an error when dealing with custom root types other than *Query*, *Mutation* or *Subscription*. +
      +
    • +
    • +
      +Enforced Timeout configuration parameter of an API endpoint was not validated + +Fixed an issue where the [Enforced Timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) configuration parameter of an API endpoint accepted negative values, without displaying validation errors. With this fix, users receive clear feedback and prevent unintended configurations. +
      +
    • +
    • +
      +allowedIPs validation failures were causing the loss of other error types reported + +Fixed an issue where *allowedIPs* validation failures replaced the reported errors list, causing the loss of other error types. This fix appends IP validation errors to the list, providing users with a comprehensive overview of encountered errors. Subsequently, this enhances the clarity and completeness of validation reporting. +
      +
    • +
    • +
      +The Data Plane Gateway for versions < v5.1 crashed with panic error when creating a Tyk OAS API + +Fixed a critical issue in MDCB v2.3 deployments, relating to *Data Plane* stability. The *Data Plane* Gateway with versions older than v5.1 was found to crash with a panic when creating a Tyk OAS API. The bug has been addressed, ensuring stability and reliability in such deployments. +
      +
    • +
    + + +--- + +## 5.1 Release Notes + +### Release Date 23 June 2023 + +### Breaking Changes + +**Attention warning*: Please read carefully this section. + +#### Golang Version upgrade +Our Gateway is using [Golang 1.19](https://tip.golang.org/doc/go1.19) programming language starting with the 5.1 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. Don’t forget that, if you’re using GoPlugins, you'll need to [recompile]({{< ref "plugins/supported-languages/golang#upgrading-your-tyk-gateway" >}}) these to maintain compatibility with the latest Gateway. + +#### Early Access Features: +Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backward-compatible. Downgrading to a previous version after upgrading may result in a broken installation. + +Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. + +### Deprecations +There are no deprecations in this release. + +### Upgrade Instructions +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. + +### Release Highlights + +#### Request Body Size Limits + +We have introduced a new Gateway-level option to limit the size of requests made +to your APIs. You can use this as a first line of defense against overly large +requests that might affect your Tyk Gateways or upstream services. Of course, +being Tyk, we also provide the flexibility to configure API-level and +per-endpoint size limits so you can be as granular as you need to protect and +optimize your services. Check out our improved documentation for full +description of how to use these powerful [features]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}). + +#### Changed default RPC pool size for MDCB deployments + +We have reduced the default RPC pool size from 20 to 5. This can reduce the CPU and +memory footprint in high throughput scenarios. Please monitor the CPU and memory +allocation of your environment and adjust accordingly. You can change the pool +size using [slave_options.rpc_pool_size]({{< ref "tyk-oss-gateway/configuration#slave_optionsrpc_pool_size" >}}) + +### Downloads + +- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.1/images/sha256-3d1e64722be1a983d4bc4be9321ca1cdad10af9bb3662fd6824901d5f22820f1?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.1.0) + + +### Changelog + +#### Added + +- Added `HasOperation`, `Operation` and `Variables` to GraphQL data source API definition for easier nesting +- Added abstractions/interfaces for ExecutionEngineV2 and ExecutionEngine2Executor with respect to graphql-go-tools +- Added support for the `:authority` header when making GRPC requests. If the `:authority` header is not present then some GRPC servers return PROTOCOL_ERROR which prevents custom GRPC plugins from running. Thanks to [vanhtuan0409](https://github.com/vanhtuan0409) from the Tyk Community for his contribution! + +#### Changed + +- Tyk Gateway updated to use Go 1.19 +- Updated [_kin-openapi_](https://github.com/getkin/kin-openapi) dependency to the version [v0.114.0](https://github.com/getkin/kin-openapi/releases/tag/v0.114.0) +- Enhanced the UDG parser to comprehensively extract all necessary information for UDG configuration when users import to Tyk their OpenAPI document as an API definition +- Reduced default CPU and memory footprint by changing the default RPC pool size from 20 to 5 connections. + +#### Fixed + +- Fixed an issue where invalid IP addresses could be added to the IP allow list +- Fixed an issue when using custom authentication with multiple authentication methods, custom authentication could not be selected to provide the base identity +- Fixed an issue where OAuth access keys were physically removed from Redis on expiry. Behavior for OAuth is now the same as for other authorization methods +- Fixed an issue where the `global_size_limit` setting didn't enable request size limit middleware. Thanks to [PatrickTaibel](https://github.com/PatrickTaibel) for the contribution! +- Fixed minor versioning, URL and field mapping issues when importing OpenAPI document as an API definition to UDG +- When the control API is not protected with mTLS we now do not ask for a cert, even if all the APIs registered have mTLS as an authorization mechanism + +### Tyk Classic Portal Changelog + +#### Changed + +- Improved performance when opening the Portal page by optimizing the pre-fetching of required data + + + +## 5.0 Release Notes + +### 5.0.15 Release Notes {#rn-v5.0.15} + +#### Release Date 24 October 2024 + +#### Breaking Changes + +There are no breaking changes in this release. + +#### Upgrade Instructions + +Go to the [Upgrading Tyk](https://tyk.io/docs/developer-support/release-notes/gateway#upgrading-tyk) +section for detailed upgrade instructions. + +#### Release Highlights + +This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data +plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.0.15 to +avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.0.15">}}) below. + +#### Changelog {#Changelog-v5.0.15} + +##### Fixed + +
      +
    • +
      +Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud +In version 5.0.14, Tyk Gateway could encounter panic when attempting to reconnect to the control plane after it was restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control plane following reconnections and reducing the need for manual intervention. +
      +
    • +
    + +--- + +### 5.0.14 Release Notes {#rn-v5.0.14} + +#### Release Date 18th September 2024 + +{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when +reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk +Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    + +

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. +

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    +Recommendations:
    +

      +
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      +We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. + +
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      +Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      +
    +

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. +{{< /note >}} + +#### Breaking Changes + +**Attention:** Please read this section carefully. + +There are no breaking changes in this release. + +#### Upgrade Instructions + +This release is not tightly coupled with Tyk Dashboard v5.0.14, so you do not have to upgrade both together. + +Go to the [Upgrading Tyk](https://tyk.io/docs/developer-support/release-notes/gateway#upgrading-tyk) +section for detailed upgrade instructions. + +#### Release Highlights + +This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway +configuration options to control path matching strictness. + +#### Changelog {#Changelog-v5.0.14} + +##### Added + +

      +
    • +
      +Implemented Gateway configuration options to set URL path matching strictness + +We have introduced two new options in the `http_server_options` [Gateway +configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching +when Tyk performs checks on whether middleware or other logic should be applied to a request: + +- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API + definition +- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API + definition +- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is + performed + +These configuration options provide control to avoid unintended matching of paths from Tyk's default _wildcard_ match. +Use of regex special characters when declaring the endpoint path in the API definition will automatically override these +settings for that endpoint. + +**Tyk recommends that exact matching is employed, but both options default to `false` to avoid introducing a breaking +change for existing users.** + +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Incorrectly configured regex in policy affected Path-Based Permissions authorization + +Fixed an issue when using granular [Path-Based +Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization +incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue +where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly +handles both of these scenarios granting access only to the expected resources. + +
      +
    • +
    • +
      +Missing path parameter can direct to the wrong endpoint + +Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits +the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to +`/user/{id}`. + +
      +
    • + +
    • +
      +Improved Gateway Synchronization with MDCB for Policies and APIs + +We have enhanced the Tyk Gateway's synchronization with MDCB to ensure more reliable loading of policies and APIs. A +synchronous initialization process has been implemented to prevent startup failures and reduce the risk of service +disruptions caused by asynchronous operations. This update ensures smoother and more consistent syncing of policies and +APIs from MDCB. + +
      +
    • +
    + +--- + +### 5.0.13 Release Notes + +#### Release Date 4 July 2024 + +#### Release Highlights + +Resolved an issue encountered in MDCB environments where changes to custom keys made via the Dashboard were not properly +replicated to dataplanes. The issue impacted both key data and associated quotas, in the following versions: + +- 5.0.4 to 5.0.12 +- 5.1.1 and 5.1.2 +- 5.2.0 to 5.2.6 +- 5.3.0 to 5.3.2 + +###### Action Required + +Customers should clear their edge Redis instances of any potentially affected keys to maintain data consistency and +ensure proper synchronization across their environments. Please refer to the item in the [fixed](#fixed) section of the +changelog for recommended actions. + +#### Changelog {#Changelog-v5.0.13} + +##### Fixed + +
      +
    • +
      +Resolved an issue where changes to custom keys were not properly replicated to dataplanes + +Resolved a critical issue affecting MDCB environments, where changes to custom keys made via the dashboard were not +properly replicated to dataplanes. This affected both the key data and associated quotas. This issue was present in +versions: + +- 5.0.4 to 5.0.12 +- 5.1.1 and 5.1.2 +- 5.2.0 to 5.2.6 +- 5.3.0 to 5.3.2 + +**Action Required** + +Customers are advised to clear their edge Redis instances of any keys that might have been affected by this bug to +ensure data consistency and proper synchronization across their environments. There are several methods available to +address this issue: + +1. **Specific Key Deletion via API**: To remove individual buggy keys, you can use the following API call: + +```bash +curl --location --request DELETE 'http://tyk-gateway:{tyk-hybrid-port}/tyk/keys/my-custom-key' \ --header 'X-Tyk-Authorization: {dashboard-key}' +``` + +Replace `{tyk-hybrid-port}`, `my-custom-key` and `{dashboard-key}` with your specific configuration details. This method +is safe and recommended for targeted removals without affecting other keys. + +2. **Bulk Key Deletion Using Redis CLI**: For environments with numerous affected keys, you might consider using the + Redis CLI to remove keys en masse: + +```bash +redis-cli --scan --pattern 'apikey-*' | xargs -L 1 redis-cli del +redis-cli --scan --pattern 'quota-*' | xargs -L 1 redis-cli del +``` + +This method can temporarily impact the performance of the Redis server, so it should be executed during a maintenance +window or when the impact on production traffic is minimal. + +3. **Complete Redis Database Flush**: If feasible, flushing the entire Redis database offers a clean slate: + +```bash +redis-cli FLUSHALL ASYNC +``` + +**Implications** Regardless of the chosen method, be aware that quotas will be reset and will need to resynchronize +across the system. This may temporarily affect reporting and rate limiting capabilities. + +
      +
    • +
    + +--- + +### 5.0.12 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.12). + +--- + +### 5.0.11 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.11). + +--- + +### 5.0.10 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.10). + +--- + +### 5.0.9 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.9). + +--- + +### 5.0.8 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.8). + +--- + +### 5.0.7 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.7). + +--- + +### 5.0.6 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.6). + +--- + +### 5.0.5 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.5). + +--- + +### 5.0.4 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.4). + +--- + +### 5.0.3 Release Notes + +Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.3). + +--- + +### 5.0.2 Release Notes + +#### Release Date 29 May 2023 + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.0.2">}}) below. + +#### Downloads + +- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.2/images/sha256-5e126d64571989f9e4b746544cf7a4a53add036a68fe0df4502f1e62f29627a7?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.2) + +#### Changelog {#Changelog-v5.0.2} + +##### Updated + +- Internal refactoring to make storage related parts more stable and less affected by potential race issues + +--- + +### 5.0.1 Release Notes + +#### Release Date 25 Apr 2023 + +#### Release Highlights + +This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed +[changelog]({{< ref "#Changelog-v5.0.1">}}) below. + +#### Downloads + +- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.1/images/sha256-5fa7aa910d62a7ed2c1cfbc68c69a988b4b0e9420d7a52018f80f9a45cadb083?context=explore +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.1) + +#### Changelog {#Changelog-v5.0.1} + +##### Added + +- Added a new `enable_distributed_tracing` option to the NewRelic config to enable support for Distributed Tracer + +##### Fixed + +- Fixed panic when JWK method was used for JWT authentication and the token didn't include kid +- Fixed an issue where failure to load GoPlugin middleware didn’t prevent the API from proxying traffic to the upstream: + now Gateway logs an error when the plugin fails to load (during API creation/update) and responds with HTTP 500 if the + API is called; at the moment this is fixed only for file based plugins +- Fixed MutualTLS issue causing leak of allowed CAs during TLS handshake when there are multiple mTLS APIs +- Fixed a bug during hot reload of Tyk Gateway where APIs with JSVM plugins stored in filesystem were not reloaded +- Fixed a bug where the gateway would remove the trailing `/`at the end of a URL +- Fixed a bug where nested field-mappings in UDG weren't working as intended +- Fixed a bug when using Tyk OAuth 2.0 flow on Tyk Cloud where a request for an Authorization Code would fail with a 404 + error +- Fixed a bug where mTLS negotiation could fail when there are a large number of certificates and CAs; added an option + (`http_server_options.skip_client_ca_announcement`) to use the alternative method for certificate transfer +- Fixed CVE issue with go.uuid package +- Fixed a bug where rate limits were not correctly applied when policies are partitioned to separate access rights and + rate limits into different scopes + +--- + +### 5.0.0 Release Notes + +#### Release Date 28 Mar 2023 + +#### Deprecations + +- Tyk Gateway no longer natively supports **LetsEncrypt** integration. You still can use LetsEncrypt CLI tooling to + generate certificates and use them with Tyk. + +#### Release Highlights + +##### Improved OpenAPI support + +We have added some great features to the Tyk OAS API definition bringing it closer to parity with our Tyk Classic API +and to make it easier to get on board with Tyk using your Open API workflows. + +Tyk’s OSS users can now make use of extensive [custom middleware](https://tyk.io/docs/plugins/) options with your OAS +APIs, to transform API requests and responses, exposing your upstream services in the way that suits your users and +internal API governance rules. We’ve enhanced the Request Validation for Tyk OAS APIs to include parameter validation +(path, query, headers, cookie) as well as the body validation that was introduced in Tyk 4.1. + +[Versioning your Tyk OAS APIs]({{< ref "getting-started/key-concepts/oas-versioning" >}}) is easier than ever, with the +Tyk OSS Gateway now looking after the maintenance of the list of versions associated with the base API for you; we’ve +also added a new endpoint on the Tyk API that will return details of the versions for a given API. + +We’ve improved support for [OAS +Mock Responses]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}), with the Tyk OAS API +definition now allowing you to register multiple Mock Responses in a single API, providing you with increased testing +flexibility. + +Of course, we’ve also addressed some bugs and usability issues as part of our ongoing ambition to make Tyk OAS API the +best way for you to create and manage your APIs. + +Thanks to our community contributors [armujahid](https://github.com/armujahid), +[JordyBottelier](https://github.com/JordyBottelier) and [ls-michal-dabrowski](https://github.com/ls-michal-dabrowski) +for your PRs that further improve the quality of Tyk OSS Gateway! + +#### Downloads + +- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.0/images/sha256-196815adff2805ccc14c267b14032f23913321b24ea86c052b62a7b1568b6725?context=explore) +- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.0) + +#### Changelog {#Changelog-v5.0.0} + +##### Added + +- Support for request validation (including query params, headers and the rest of OAS rules) with Tyk OAS APIs +- Transform request/response middleware for Tyk OAS APIs +- Custom middleware for Tyk OAS APIs +- Added a new API endpoint to manage versions for Tyk OAS APIs +- Improved Mock API plugin for Tyk OAS APIs +- Universal Data Graph and GraphQL APIs now support using context variables in request headers, allowing passing + information it to your subgraphs +- Now you can control access to introspection on policy and key level + +#### Fixed + +- Fixed potential race condition when using distributed rate limiter + +--- + +## 4.3 Release Notes + +### 4.3.0 Release Notes + +#### Release Highlights + +##### Mock Responses with Tyk OAS API Definitions + +Does your Tyk OAS API Definition define examples or a schema for your path responses? If so, starting with Tyk v4.3, Tyk can use those configurations to mock your API responses, enabling your teams to integrate easily without being immediately dependent on each other. Check it out! [Mock Responses Documentation]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}) + +##### External OAuth - 3rd party OAuth IDP integration + +If you’re using a 3rd party IDP to generate tokens for your OAuth applications, Tyk can now validate the generated tokens by either performing JWT validation or by communicating with the authorization server and executing token introspection. + +This can be achieved by configuring the new External OAuth authentication mechanism. Find out more here [External OAuth Integration]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) + +##### Updated the Tyk Gateway version of Golang, to 1.16. + +**Our Gateway is using Golang 1.16 version starting with 4.3 release. This version of the Golang release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** + +The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. + +Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. + +##### Improved GQL security + +4.3 adds two important features that improve security settings for GraphQL APIs in Tyk. + +1. Ability to turn on/off introspection - this feature allows much more control over what consumers are able to do when interacting with a GraphQL API. In cases where introspection is not desirable, API managers can now disallow it. The setting is done on API key level, which means API providers will have very granular control over who can and who cannot introspect the API. +2. Support for allow list in field-based permissions - so far Tyk was offering field-based permissions as a “block list” only. That meant that any new field/query added to a graph was by default accessible for all consumers until API manager explicitly blocked it on key/policy level. Adding support for “allow list” gives APi managers much more control over changing schemas and reduces the risk of unintentionally exposing part of the graph that are not ready for usage. See [Introspection]({{< ref "graphql/introspection" >}}) for more details. + + +#### Changelog + +##### Tyk Gateway + +###### Added +- Minor modifications to the Gateway needed for enabling support for Graph Mongo Pump. +- Added header `X-Tyk-Sub-Request-Id` to each request dispatched by federated supergraph and Universal Data Graph, so that those requests can be distinguished from requests directly sent by consumers. +- Added a functionality that allows to block introspection for any GraphQL API, federated supergraph and Universal Data Graph (currently only supported via Gateway, UI support coming in the next release). +- Added an option to use allow list in field-based permissions. Implemented for full types and individual fields. (currently only supported via Gateway, UI support coming in the next release) +- Added new middleware that can be used with HTTP APIs to set up persisted queries for GraphQL upstreams. +- Added support for two additional subscription protocols for GraphQL subscriptions. Default protocol used between the gateway and upstream remains to be `graphql-ws`, two additional protocols are possible to configure and use: `graphql-transport-ws` and `SSE`. + +###### Changed + +Updated the Tyk Gateway version of Golang, to 1.16. + +**SECURITY: The release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** + +The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. + +Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. + +###### Fixed + +- Fixed an issue where introspection query was returning a wrong response in cases where introspection query had additional objects. +- Fixed an issue where gateway was crashing when a subscription was started while no datasource was connected to it. +- Fixed a problem with missing configuration in the GraphQL config adapter that caused issues with batching requests to subgraphs in GraphQL API federation setting. +- A HTTP OAS API version lifetime respects now the date value of the expiration field from Tyk OAS API Definition. +- Now it is possible to proxy traffic from a HTTP API (using Tyk Classic API Definition) to a HTTP OAS API (using Tyk OAS API Definition) and vice versa. + + +#### Updated Versions + +Tyk Gateway 4.3 ([docker images](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=1&name=4.3.0) + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "upgrading-tyk" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "planning-for-production/database-settings/postgresql#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +{{< note success >}} +**Note** + +Note: Upgrading the Golang version implies that all the Golang custom plugins that you are using need to be recompiled before migrating to 4.3 version of the Gateway. Check our docs for more details [Golang Plugins]({{< ref "/content/plugins/supported-languages/golang.md" >}}). +{{< /note >}} + +## 4.2 Release Notes + +### 4.2.0 Release Notes + +#### Release Highlights + +##### GraphQL Federation improvements + +###### Changed GUI in Universal Data Graph configuration section. + +A new GUI introduces enhancements to the user experience and more consistent user journey for UDG. +This change does not yet cover all possible use cases and is released with a feature flag. To enable the new GUI, analytics.conf needs the following setting: + +``` +"ui": { + "dev": true +} +``` + +What’s possible with this change: +- Importing GraphQL schema created outside of Tyk (formats accepted .json, .graphql, .grahqls) +- Creating GraphQL schema in Tyk using schema editor +- Hide/Unhide schema editor to focus on graphical representation of the schema +- Resizing schema editor to adjust workspace look & feel to user preferences +- Improved search in schema editor (search and search & replace available) +- Quick link to UDG documentation from schema editor + +> Note: Full configuration of new Universal Data Graph is not yet possible in the GUI, however any UDGs created earlier will not be broken and will work as previously. + +##### Changes to federation entities +###### Defining the base entity +Entities must be defined with the `@key` directive. The fields argument must reference a field by which the entity can be uniquely identified. Multiple primary keys are possible. For example: + +Subgraph 1 (base entity): +``` +type MyEntity @key(fields: "id") @key(fields: "name") { + id: ID! + name: String! +} +``` + Attempting to extend a non-entity with an extension that includes the @key directive or attempting to extend a base entity with an extension that does not include the @key directive will both result in errors. + +###### Entity stubs + +Entities cannot be shared types (be defined in more than one single subgraph). +If one subgraph references a base entity (an entity defined in another subgraph), that reference must be declared as a stub (stubs look like an extension without any new fields in federation v1). This stub would contain the minimal amount of information to identify the entity (referencing exactly one of the primary keys on the base entity regardless of whether there are multiple primary keys on the base entity). For example, a stub for MyEntity from Subgraph 1 (defined above): + +Subgraph 2 (stub) +``` +extend type MyEntity @key(fields: "id") { + id: ID! @external +} +``` + +###### Supergraph extension orphans +It is now possible to define an extension for a type in a subgraph that does not define the base type. +However, if an extension is unresolved (an extension orphan) after an attempted federation, the federation will fail and produce an error. + +###### Improved Dashboard UI and error messages +GraphQL-related (for example when federating subgraphs into a supergraph) errors in the Dashboard UI will show a lean error message with no irrelevant prefixes or suffixes. + +Changed the look & feel of request logs in Playground tab for GraphQL APIs. New component presents all logs in a clearer way and is easier to read for the user + +###### Shared types +Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is identical. +Shared types cannot be extended outside of the current subgraph, and the resolved extension must be identical to the resolved extension of the shared type in all other subgraphs (see subgraph normalization notes). Attempting to extend a shared type will result in an error. +The federated supergraph will include a single definition of a shared type, regardless of how many times it has been identically defined in its subgraphs. + +###### Subgraph normalization before federation +Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. A valid example involving a shared type: + +Subgraph 1: +``` +enum Example { + A, + B +} + +extend enum Example { + C +} +``` + +Subgraph 2: +``` +enum Example { + A, + B, + C +} +``` + +The enum named “Example” defined in Subgraph 1 would resolve to be identical to the same-named enum defined in Subgraph 2 before federation takes place. The resulting supergraph would include a single definition of this enum. + +###### Validation +Union members must be both unique and defined. +Types must have bodies, e.g., enums must contain at least one value; inputs, interfaces, or objects must contain at least one field + +##### OpenAPI +Added support for the Request Body Transform middleware, for new Tyk OAS API Definitions. + +##### Universal Data Graph + +Added support for Kafka as a data source in Universal Data Graph. Configuration allows the user to provide multiple topics and broker addresses. + +#### Changelog + +##### Tyk Gateway +###### Added +- Added support for Kafka as a data source in Universal Data Graph. +- Adding a way to defining the base GraphQL entity via @key directive +- It is now possible to define an extension for a type in a subgraph that does not define the base type. +- Added support for the Request Body Transform middleware, for the new Tyk OAS API Definition +- Session lifetime now can be controled by Key expiration, e.g. key removed when it is expired. Enabled by setting `session_lifetime_respects_key_expiration` to `true` +###### Changed +- Generate API ID when API ID is not provided while creating API. +- Updated the Go plugin loader to load the most appropriate plugin bundle, honoring the Tyk version, architecture and OS +- When GraphQL query with a @skip directive is sent to the upstream it will no longer return “null” for the skipped field, but remove the field completely from the response +- Added validation to Union members - must be both unique and defined. +###### Fixed +- Fixed an issue where the Gateway would not create the circuit breaker events (BreakerTripped and BreakerReset) for which the Tyk Dashboard offers webhooks. +- Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is exactly identical. +- Apply Federation Subgraph normalization do avoid merge errors. Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. + +#### Updated Versions +Tyk Gateway 4.2 + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 4.1 Release Notes + +### 4.1.0 Release Notes + +#### Release Highlights + +##### OpenAPI as a native API definition format +Tyk has always had a proprietary specification for defining APIs. From Tyk v4.1 we now support defining APIs using the Open API Specification (OAS) as well, which can offer significant time and complexity savings. [This is an early access capability]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}). + +As we extend our OAS support, we would very much like your feedback on how we can extend and update to best meet your needs: . + +This capability is available in both the open source and paid versions of Tyk. See our [High Level Concepts]({{< ref "getting-started/key-concepts/high-level-concepts" >}}) for more details, or jump to [OAS Getting Started documentation]({{< ref "getting-started/using-oas-definitions/create-an-oas-api" >}}). + + +##### MDCB Synchroniser + +Tyk Gateway v4.1 enables an improved synchroniser functionality within Multi Data Center Bridge (MDCB) v2.0. Prior to this release, the API keys, certificates and OAuth clients required by worker Gateways were synchronised from the controller Gateway on-demand. With Gateway v4.1 and MDCB v2.0 we introduce proactive synchronisation of these resources to the worker Gateways when they start up. + +This change improves resilience in case the MDCB link or controller Gateway is unavailable, because the worker Gateways can continue to operate independently using the resources stored locally. There is also a performance improvement, with the worker Gateways not having to retrieve resources from the controller Gateway when an API is first called. + +Changes to keys, certificates and OAuth clients are still synchronised to the worker Gateways from the controller when there are changes and following any failure in the MDCB link. + +##### Go Plugin Loader +When upgrading your Tyk Installation you need to re-compile your plugin with the new version. At the moment of loading a plugin, the Gateway will try to find a plugin with the name provided in the API definition. If none is found then it will fallback to search the plugin file with the name: `{plugin-name}_{Gw-version}_{OS}_{arch}.so` + +From v4.1.0 the plugin compiler automatically names plugins with the above naming convention. It enables you to have one directory with different versions of the same plugin. For example: + +- `plugin_v4.1.0_linux_amd64.so` +- `plugin_v4.2.0_linux_amd64.so` + +So, if you upgrade from Tyk v4.1.0 to v4.2.0 you only need to have the plugins compiled for v4.2.0 before performing the upgrade. + +#### Changelog + +##### Tyk Gateway +###### Added +- Added support for new OAS API definition format +- Added support for headers on subgraph level for federated GraphQL APIs +- Added support for interfaces implementing interfaces in GQL schema editor +- Added support for passing authorization header in GQL API Playgrounds for subscription APIs +- Added TYK_GW_OMITCONFIGFILE option for Tyk Gateway to ignore the values in the config file and load its configuration only from environment variables and default values +- Added a way to modify Tyk analytics record via Go plugins [configurable with API definition](https://tyk.io/docs/plugins/analytics-plugins/). Can be used to sanitise analytics data. +- Added new policy API REST endpoints +- Added option to configure certificates for Tyk Gateway using [environment variable](https://tyk.io/docs/tyk-oss-gateway/configuration/#http_server_optionscertificates) +- Added support for Python 3.9 plugins +- Added support for headers on subgraph level for federated GraphQL APIs +- Added support for introspecting schemas with interfaces implementing interfaces for proxy only GQL +- Added support for input coercion in lists for GraphQL +- Added support for repeatable directives for GraphQL +###### Changed +- Generate API ID when API ID is not provided while creating API. +- Updated the Go plugin loader to load the most appropriate plugin bundle, honoring Tyk version, architecture and OS +- When a GraphQL query with a @skip directive is sent to the upstream it will no longer return “null” for the skipped field, but remove the field completely from the response +###### Fixed +- Fixed a bug where the MDCB worker Gateway could become unresponsive when a certificate is added in the Tyk Dashboard +- Fixed an issue with the calculation of TTL for keys in an MDCB deployment such that TTL could be different between worker and controller Gateways +- Fixed a bug when using Open ID where quota was not tracked correctly +- Fixed multiple issues with schema merging in GraphQL federation. Federation subgraphs with the same name shared types like objects, interfaces, inputs, enums, unions and scalars will no longer cause errors when users are merging schemas into a federated supergraph. +- Fixed an issue where schema merging in GraphQL federation could fail depending on the order or resolving subgraph schemas and only first instance of a type and its extension would be valid. Subgraphs are now individually normalized before a merge is attempted and all extensions that are possible in the federated schema are applied. +- Fixed an issue with accessing child properties of an object query variable for GraphQL where query {{.arguments.arg.foo}} would return "{ "foo":"123456" }" instead of "123456" + +#### Updated Versions +Tyk Gateway 4.1 +Tyk MDCB 2.0.1 + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 4.0 Release Notes + +### 4.0.0 Release Notes + +#### Release Highlights + +##### GraphQL federation + +As we know, ease-of-use is an important factor when adopting GraphQL. Modern enterprises have dozens of backend services and need a way to provide a unified interface for querying them. Building a single, monolithic GraphQL server is not the best option. It is hard to maintain and leads to a lot of dependencies and over-complication. + +To remedy this, Tyk 4.0 offers GraphQL federation that allows the division of GraphQL implementation across multiple backend services, while still exposing them all as a single graph for the consumers. Subgraphs represent backend services and define a distinct GraphQL schema. A subgraph can be queried directly, as a separate service or federated in the Tyk Gateway into a larger schema of a supergraph – a composition of several subgraphs that allows execution of a query across multiple services in the backend. + +[Federation docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md" >}}) + +[Subgraphs and Supergraphs docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md#subgraphs-and-supergraphs" >}}) + +##### GraphQL subscriptions + +Subscriptions are a way to push data from the server to the clients that choose to listen to real-time messages from the server, using the WebSocket protocol. There is no need to enable subscriptions separately; Tyk supports them alongside GraphQL as standard. + +With release 4.0, users can federate GraphQL APIs that support subscriptions. Federating subscriptions means that events pushed to consumers can be enriched with information from other federated graphs. + +[Subscriptions docs]({{< ref "/content/getting-started/key-concepts/graphql-subscriptions.md" >}}) + +#### Changelog + +- Now it is possible to configure GraphQL upstream authentification, in order for Tyk to work with its schema +- JWT scopes now support array and comma delimeters +- Go plugins can be attached on per-endpoint level, similar to virtual endpoints + +#### Updated Versions + +Tyk Gateway 4.0 +Tyk Pump 1.5 + +#### Upgrade process + +Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. + +If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. + +## 3.2 Release Notes + +### 3.2.0 Release Notes + +#### Release Highlights + +##### GraphQL and UDG improvements + +We've updated the GraphQL functionality of our [Universal Data Graph]({{< ref "universal-data-graph" >}}). You’re now able to deeply nest GraphQL & REST APIs and stitch them together in any possible way. + +Queries are now possible via WebSockets and Subscriptions are coming in the next Release (3.3.0). + +You're also able to configure [upstream Headers dynamically]({{< ref "universal-data-graph/udg-getting-started/header-forwarding" >}}), that is, you’re able to inject Headers from the client request into UDG upstream requests. For example, it can be used to acccess protected upstreams. + +We've added an easy to use URL-Builder to make it easier for you to inject object fields into REST API URLs when stitching REST APIs within UDG. + +Query-depth limits can now be configured on a per-field level. + +If you’re using GraphQL upstream services with UDG, you’re now able to forward upstream error objects through UDG so that they can be exposed to the client. + +##### Go response plugins + +With Go response plugins you are now able to modify and create a full request round trip made through the Tyk Gateway. +Find out more about [plugins]({{< ref "plugins" >}}) and how to write [Go response plugins]({{< ref "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins#creating-a-custom-response-plugin" >}}). + +#### Changelog + +In addition to the above, version 3.2 includes all the fixes that are part of 3.0.5 +https://github.com/TykTechnologies/tyk/releases/tag/v3.0.5 + +#### Updated Versions +Tyk Gateway 3.2 + +#### Upgrade process +If you already have GraphQL or UDG APIs you need to follow this upgrade guide https://tyk.io/docs/graphql/migration-guide/ + +## 3.1 Release Notes + +### 3.1.0 Release Notes + +#### Release Highlights + +##### Identity Management UX and SAML support +You will notice that the experience for creating a new profile in the Identity management section of the dashboard was changed to a ‘wizard’ approach which reduces the time it takes to get started and configure a profile. +In addition, users are now able to use SAML for the dashboard and portal login, whether you use TIB(Tyk Identity Broker) internally or externally of the dashboard. + +This follows the recent changes that we have made to embed TIB (Tyk Identity Broker)in the dashboard. See 3.[release notes](https://tyk.io/docs/release-notes/version-3.0/) fo more information +regarding this. +This follows the recent changes that we have made to embed TIB (Tyk Identity Broker)in the dashboard. See 3.0 [release notes](https://tyk.io/docs/release-notes/version-3.0/) for more information regarding this. + +To learn more [see the documentation](https://tyk.io/docs/getting-started/tyk-components/identity-broker/) + +##### UDG (Universal Data Graph) & GraphQL +###### Schema Validation + +For any GraphQL API that is created via Dashboard or through our API, the GraphQL schema is now validated before saving the definition. Instant feedback is returned in case of error. + +###### Sync / Update schema with upstream API (Proxy Only Mode) + +If you’ve configured just a proxy GraphQL API, you can now keep in sync the upstream schema with the one from the API definition, just by clicking on the `Get latest version` button on the `Schema` tab from API Designer + +Docs [here](https://tyk.io/docs/graphql/syncing-schema/) + +###### Debug logs + +You can now see what responses are being returned by the data sources used while configuring a UDG (universal data graph). These can be seen by calling the `/api/debug` API or using the playground tab within API designer. + +The data that will be displayed will show information on the query before and after the request to a data source happens, as follows: + +Before the request is sent: + +Example log message: "Query.countries: preSendHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Fieldname and Upstream url; + + +After the request is sent: + +Example log message: "Query.countries: postReceiveHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Filename, response body, status code. + +Example: + +```{"typename": "Query", "fielname": "countries", "response_body": "{\"data\":{}}", "status_code": 200}``` + +Docs [here](https://tyk.io/docs/graphql/graphql-playground/) + +##### Portal +###### GraphQL Documentation + +Documentation for the GraphQL APIs that you are exposing to the portal is available now through a GraphQL Playground UI component, same as on the playground tab of API Designer. + +Also to overcome the CORS issues that you might encounter while testing documentation pages on the portal, we have pre-filled the CORS settings section in API Designer with explicit values from the start. All you need to do is to check the “Enable CORS” option. + +###### Portal - API key is hidden in email +You now have the option to hide the API key in the email generated after you approve the key request for a developer. + +[Docs here](https://tyk.io/docs/tyk-developer-portal/key-requests/) + + +#### Changelog +The 3.1 version includes the fixes that are part of 3.0.1. +https://github.com/TykTechnologies/tyk/releases/tag/v3.0.1 + + +#### Updated Versions + +- Tyk Gateway 3.1 + +## 3.0 Release Notes + +### 3.0.0 Release Notes + +#### Release Highlights + +##### Version changes and LTS releases + +We have bumped our major Tyk Gateway version from 2 to 3, a long overdue change as we’ve been on version 2 for 3 years. We have also changed our Tyk Dashboard major version from 1 to 3, and from now on it will always be aligned with the Tyk Gateway for major and minor releases. The Tyk Pump has also now updated to 1.0, so we can better indicate major changes in future. + +Importantly, such a big change in versions does not mean that we going to break backward compatibility. More-over we are restructuring our internal release strategy to guarantee more stability and to allow us to deliver all Tyk products at a faster pace. We aim to bring more clarity to our users on the stability criteria they can expect, based on the version number. +Additionally we are introducing Long Term Releases (also known as LTS). + +Read more about this changes in our blogpost: https://tyk.io/introducing-long-term-support-some-changes-to-our-release-process-product-versioning/ + + +##### Universal Data Graph and GraphQL + +Tyk now supports GraphQL **natively**. This means Tyk doesn’t have to use any external services or process for any GraphQL middleware. You can securely expose existing GraphQL APIs using our GraphQL core functionality. + +In addition to this you can also use Tyk’s integrated GraphQL engine to build a Universal Data Graph. The Universal Data Graph (UDG) lets you expose existing services as one single combined GraphQL API. + +All this without even have to build your own GraphQL server. If you have existing REST APIs all you have to do is configure the UDG and Tyk has done the work for you. + +With the Universal Data Graph Tyk becomes your central integration point for all your internal as well as external APIs. In addition to this, the UDG benefits from all existing solutions that already come with your Tyk installation. That is, your Data Graph will be secure from the start and there’s a large array of out of the box middlewares you can build on to power your Graph. + +Read more about the [GraphQL]({{< ref "graphql" >}}) and [Universal Data Graph]({{< ref "universal-data-graph" >}}) + +##### Using external secret management services + +Want to reference secrets from a KV store in your API definitions? We now have native Vault & Consul integration. You can even pull from a tyk.conf dictionary or environment variable file. + +[Read more]({{< ref "tyk-configuration-reference/kv-store" >}}) + +##### Co-Process Response Plugins + +We added a new middleware hook allowing middleware to modify the response from the upstream. Using response middleware you can transform, inspect or obfuscate parts of the response body or response headers, or fire an event or webhook based on information received by the upstream service. + +At the moment the Response hook is supported for [Python and gRPC plugins]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-work#coprocess-dispatcher---hooks" >}}). + + +##### Enhanced Gateway health check API + +Now the standard Health Check API response include information about health of the dashboard, redis and mdcb connections. +You can configure notifications or load balancer rules, based on new data. For example, you can be notified if your Tyk Gateway can’t connect to the Dashboard (or even if it was working correctly with the last known configuration). + +[Read More]({{< ref "planning-for-production/ensure-high-availability/health-check" >}}) + +##### Enhanced Detailed logging +Detailed logging is used in a lot of the cases for debugging issues. Now as well as enabling detailed logging globally (which can cause a huge overhead with lots of traffic), you can enable it for a single key, or specific APIs. + +New detailed logging changes are available only to our Self-Managed customers currently. + +[Read More]({{< ref "tyk-stack/tyk-pump/useful-debug-modes" >}}) + +##### Better Redis failover + +Now, if Redis is not available, Tyk will be more gracefully handle this scenario, and instead of simply timing out the Redis connection, will dynamically disable functionality which depends on redis, like rate limits or quotas, and will re-enable it back once Redis is available. The Tyk Gateway can even be started without Redis, which makes possible scenarios, such as when the Gateway proxies Redis though itself, like in a Redis Sentinel setup. + +##### Ability to shard analytics to different data-sinks + +In a multi-org deployment, each organization, team, or environment might have their preferred analytics tooling. At present, when sending analytics to the Tyk Pump, we do not discriminate analytics by org - meaning that we have to send all analytics to the same database - e.g. MongoDB. Now the Tyk Pump can be configured to send analytics for different organizations to different places. E.g. Org A can send their analytics to MongoDB + DataDog. But Org B can send their analytics to DataDog + expose the Prometheus metrics endpoint. + +It also becomes possible to put a {{}}blocklist{{}} in-place, meaning that some data sinks can receive information for all orgs, whereas others will not receive OrgA’s analytics if blocked. + +This change requires updating to new Tyk Pump 1.0 + +[Read More]({{< ref "tyk-pump/configuration" >}}) + +##### 404 Error logging - unmatched paths + +Concerned that client’s are getting a 404 response? Could it be that the API definition or URL rewrites have been misconfigured? Telling Tyk to track 404 logs, will cause the Tyk Gateway to produce error logs showing that a particular resource has not been found. + +The feature can be enabled by setting the config `track_404_logs` to `true` in the gateway's config file. + +#### Changelog + +##### Fixes + +- Fixed the bug when tokens created with non empty quota, and quota expiration set to `Never`, were treated as having unlimited quota. Now such tokens will stop working, once initial quota is reached. + +#### Updated Versions + +- Tyk Gateway 3.0 +- Tyk Pump 1.0 + +#### Upgrading From Version 2.9 + +No specific actions required. +If you are upgrading from version 2.8, pls [read this guide]({{< ref "developer-support/release-notes/archived#290-release-notes" >}}) + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### API Documentation + +- [OpenAPI Document]({{}}) +- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) + +### FAQ + +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/developer-support/release-notes/helm-chart.md b/tyk-docs/content/developer-support/release-notes/helm-chart.md new file mode 100644 index 0000000000..f5c1111edf --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/helm-chart.md @@ -0,0 +1,1993 @@ +--- +title: Tyk Charts Release Notes +description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 2.1 series." +tags: ["Tyk Charts", "Release notes", "changelog", "v2.1", "v2.1.0", "v2.0.0", "v1.6.0", "v1.5.0", "v1.4.0", "v1.3.0" ] +aliases: + - /product-stack/tyk-charts/release-notes/version-1.3 + - /product-stack/tyk-charts/release-notes/version-1.4 + - /product-stack/tyk-charts/release-notes/version-1.5 + - /product-stack/tyk-charts/release-notes/version-1.6 + - /product-stack/tyk-charts/release-notes/version-2.0 + - /product-stack/tyk-charts/release-notes/version-2.1 + - /product-stack/tyk-charts/release-notes/version-2.2 +--- + +****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** + + +**This page contains all release notes for Tyk Charts displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- +## 2.2 Release Notes + +### 2.2.0 Release Notes + +#### Release Date 09 December 2024 + +#### Release Highlights + + +The Tyk Helm Charts v2.2.0 release brings exciting new features, improvements, and crucial fixes to enhance deployment flexibility, customization, and reliability. Here are the highlights: +* Sidecar containers support +* Dashboard enhancements: Configurable audit log storage, Open Policy Agent (OPA) settings +* Gateway enhancements: Custom liveness and readiness probes, enhanced logging configuration, customizable HPA behavior +* Operator updates: Custom deployment annotations, + +For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v2.2.0) below. + +#### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + +#### Dependencies {#dependencies-2.2} + +##### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecation in this release. + + + +#### Upgrade instructions + + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.2.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.2.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.2.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.2.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.2.0) + +#### Changelog {#Changelog-v2.2.0} + +##### Added + +
      + +
    • +
      +Global: Configurable Tyk streams setting + +User can enable or disable Tyk Streams feature via `global.streaming.enabled`. This option is enabled by default. +
      +
    • + +
    • +
      +Dashboard: Configurable audit log storage + +Introduced new configuration options to manage audit logging for the Tyk Dashboard. This enhancement allows users to enable, customize, and specify how audit logs are stored and formatted. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Dashboard: Configurable Open Policy Agent (OPA) settings + +Introduced new options to enable and manage Open Policy Agent (OPA) support directly from the Helm chart. This feature simplifies the configuration process, guiding users to use the correct settings without relying on extraEnvs. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Gateway: Configurable liveness and readiness probes + +Support for configuring liveness and readiness probes for the Tyk Gateway via Helm charts. + +Users can now define custom configurations for these probes, providing more flexibility and control over health checks in Kubernetes deployments. Defaults are provided if custom configurations are not specified. + +This enhancement improves deployment reliability and ensures better integration with Kubernetes health monitoring systems. + +To configure, see [Tyk Stack]({{}}) documentation. +
      +
    • + +
    • +
      +Gateway: Enhanced log configuration + +Support for configuring the Tyk Gateway logging level and format through new fields under `.Values.gateway.log` in the Helm chart values.yaml. + +This enhancement enables fine-tuned control over logging behavior directly from the Helm chart, simplifying deployment customization. +
      +
    • + +
    • +
      +Gateway: Customizable HPA behavior + +Users can now define custom HPA behavior settings directly in the Helm values file via a new field a new field: `.Values.gateway.autoscaling.behavior`. + +This enhancement provides more flexibility in configuring HPA scaling behavior, allowing tailored performance tuning for Gateway deployments. +
      +
    • + +
    • +
      +Operator: Support for adding custom annotations to the Tyk Operator deployment + +Users can now specify annotations directly in the Helm values field `.Values.annotations`, enabling better integration with external tools and systems that rely on metadata annotations. +
      +
    • + +
    • +
      +Configurable sidecar containers + +Support for adding sidecar containers for Tyk components, enhancing flexibility and integration capabilities. This feature allows for the addition of auxiliary containers through `extraContainers` field to the following components: + +- Tyk Gateway +- Tyk Dashboard +- Tyk MDCB +- Tyk Pump +- Tyk Enterprise Developer Portal + +
      +
    • + +
    + +##### Changed + +
      + +
    • +
      +Updated default versions of Tyk components + + Tyk Charts 2.2 will install the following Tyk component versions by default. + + - Tyk Gateway v5.3.8 + - Tyk Dashboard v5.3.8 + - Tyk Pump v1.11.1 + - Tyk MDCB v2.7.2 + - Tyk Developer Portal v1.12.0 + - Tyk Operator v1.1.0 + +
      +
    • + +
    + +##### Fixed + +
      + +
    • +
      +Gateway: Corrected template name for OpenTelemetry caFilePath + +Corrected the template name for the OpenTelemetry caFilePath in the Gateway configuration. +Updated template reference from `otel-CAPath` to `otel-tlsCAPath` to ensure proper functionality. +This fix addresses misconfigurations related to the OpenTelemetry TLS CA path and ensures accurate rendering of Gateway templates. +
      +
    • + +
    • +
      +MDCB: Fixed MDCB service configuration when using LoadBalancer as the service type + +The `externalTrafficPolicy` field is now correctly set under the spec section instead of selectors. +This fix ensures proper functionality and alignment with Kubernetes service configuration requirements. +
      +
    • + +
    • +
      +Tyk Operator license key handling in tyk-oss chart + +Resolved an issue where the Tyk OSS chart did not set the Operator license key in the secret created for the Operator. This fix ensures seamless configuration of the license key when deploying Tyk Operator. +
      +
    • + +
    + + + + +--- + + + + + +## 2.1 Release Notes +### 2.1.0 Release Notes + +#### Release Date 10 Oct 2024 + +#### Release Highlights + + +Added the ability to specify a static IP for Kubernetes LoadBalancer services, giving users more control over network configurations for the Tyk Gateway and Dashboard. Added an option to configure the Dashboard container port, addressing issues with restricted port permissions. Updated the default versions of Tyk components. + +For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v2.1.0) below. + +#### Breaking Changes + +This release has no breaking changes. + +However, if you are upgrading to [Tyk Operator v1.0]({{}}) using the Helm Chart, please read the [license requirement]({{}}) and Tyk Operator [installation and upgrade instructions]({{}}) carefully. + + + + + + + + + + +#### Dependencies {#dependencies-2.1} + +##### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecation in this release. + + + +#### Upgrade instructions + +For users currently on v2.0.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.1.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.1.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.1.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.1.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.1.0) + +#### Changelog {#Changelog-v2.1.0} + +##### Added + +
      + +
    • +
      +Ability to specify static IP for Kubernetes LoadBalancer service + +Added an optional `loadBalancerIP` parameter in the chart that allows users to set a static IP for Tyk Gateway and Dashboard services when using the `LoadBalancer` service type. This update provides enhanced control over IP configuration, useful for network stability in environments with multiple load balancers. + +Tyk gateway service configuration: +- `tyk-gateway.gateway.service.loadBalancerIP` (default to "") + +Tyk Dashboard service configuration: +- `tyk-dashboard.dashboard.service.loadBalancerIP` (default to "") + +
      +
    • + +
    • +
      +Ability to configure Dashboard container port + +Enables specifying an alternate port for the container while using standard ports in the service. This option resolves permission issues associated with restricted ports, such as port 443, within containers. + +
      +
    • + +
    • +
      +From v1.0 Tyk Operator Requires License Key + +Starting from Tyk Operator v1.0, a license key is required to use the Tyk Operator. You can provide it while installing Tyk Stack, Tyk Control Plane, or Tyk OSS helm chart by setting `global.license.operator` field. You can also set license key via a Kubernetes secret using `global.secrets.useSecretName` field. The secret should contain a key called `OperatorLicense`. + +
      +
    • + +
    + +##### Changed + +
      + +
    • +
      +Updated default versions of Tyk components +Tyk Charts 2.1 will install the following Tyk component versions by default. +- Tyk Gateway v5.3.6 +- Tyk Dashboard v5.3.6 +- Tyk Pump v1.11.0 +- Tyk MDCB v2.7.1 +- Tyk Developer Portal v1.10.0 +- Tyk Operator v1.0.0 +
      +
    • + +
    + + + + +--- + + + + + +## 2.0 Release Notes +### 2.0.0 Release Notes + +#### Release Date 26 September 2024 + +#### Breaking Changes + +##### 1. URL Path Matching Configuration Changes + +Tyk Charts v2.0 introduces a **breaking change** related to URL path matching behavior in the Tyk Gateway. If you are using Tyk Gateway versions 5.0.14 (2023 LTS), 5.3.5 (2024 LTS), or 5.5.1 (latest feature branch) or above, two new configuration options have been added to the Gateway: + +- `http_server_options.enable_path_prefix_matching` +- `http_server_options.enable_path_suffix_matching` + +These options allow more restrictive URL path matching by controlling whether the request path matches the start or end of the specified pattern. If both are set to `true`, Tyk enforces "exact" path matching. By default, these options are set to `false` in the Gateway to avoid breaking existing configurations. + +However, starting with **Tyk Charts v2.0**, these options will be set to `true` by default, enforcing stricter security by requiring precise path matches. This change applies to new installations or upgrades via Tyk Charts v2.0 and above. + +From this version of Tyk Charts we also set the following configuration option to `true` by default as part of the stricter path matching: + +- `http_server_options.enable_strict_routes` + +**Impact on existing users:** + +- The change is **backward-compatible** for users upgrading their Tyk Gateway directly (i.e. not via Helm Chart), because by default, these features will not be active. This ensures that existing configurations are not affected if you update the Gateway manually. +- However, **if you install or upgrade via Tyk Charts v2.0**, these options will be set to `true` by default. This means stricter URL path matching will be enforced automatically, which could impact your existing routes or configurations if you're not prepared for it. Please ensure you understand and test these new configurations before upgrading your production environment. + +**Action required:** + +- Familiarize yourself with URL matching in Tyk [here]({{}}). +- For production setup guidance, see [this guide]({{}}). +- Configure the new options via the Helm chart, and test the changes in a non-production environment before upgrading. + +##### 2. Default Tyk Component Versions + +This release changes the default component versions in Tyk Charts v2.0 to **Long-Term Support (LTS)** versions for greater stability in production environments. The new defaults are: + +|Tyk Component|Default Version|Customization Parameter| +|---|---|---| +|Tyk Gateway|5.3.5 LTS|`--set tyk-gateway.gateway.image.tag=`| +|Tyk Dashboard|5.3.5 LTS|`--set tyk-dashboard.dashboard.image.tag=`| +|Tyk Pump|1.11.0|`--set tyk-pump.pump.image.tag=`| +|Tyk MDCB|2.7.0|`--set tyk-mdcb.mdcb.image.tag=`| +|Tyk Developer Portal|1.10.0|`--set tyk-dev-portal.image.tag=`| +|Tyk Operator|0.18.0|`--set tyk-operator.image.tag=`| + +If you need to use a different version for any component, adjust the Helm chart parameters during installation or upgrade. + + + + + + + + + + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecation in this release. + + + +#### Upgrade instructions + +For users currently on v1.x.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Release Highlights + + +##### Support Gateway configuration for URL path matching +The default Gateway configuration in the Helm chart will set Tyk's URL path matching to **exact** mode. This ensures that the request URL must exactly match the listen path and endpoint patterns configured in the API definition. + +##### Updated default Tyk versions +Tyk Charts 2.0 will install the following Tyk component versions by default. +- Tyk Gateway v5.3.5 +- Tyk Dashboard v5.3.5 +- Tyk Pump v1.11.0 +- Tyk MDCB v2.7.0 +- Tyk Developer Portal v1.10.0 +- Tyk Operator v0.18.0 + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.0.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.0.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.0.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.0.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.0.0) + +#### Changelog {#Changelog-v2.0.0} + + +##### Added + + +
      + +
    • +
      +Support for New Path Matching Configuration Options + +Tyk Charts v2.0 introduces support for the newly added Tyk Gateway configuration options: `enable_path_prefix_matching` and `enable_path_suffix_matching`. These settings allow more secure and explicit URL matching by restricting path pattern matching to the start or end of the request path. This enhancement benefits customers who need more precise route matching to ensure that only intended paths are matched in production environments, reducing the risk of unintentional routing. + +URL path matching mode is configurable using these `tyk-gateway` chart parameters: + +- `gateway.enablePathPrefixMatching` (default to `true`) +- `gateway.enablePathSuffixMatching` (default to `true`) +- `gateway.enableStrictRoutes` (default to `true`) + +Learn more about the settings in the [URL Path Matching]({{}}) documentation. + +
      +
    • + +
    • +
      +Configuration for Extra Volume Mounts in Tyk-Bootstrap +This release adds support for `extraVolumes` and `extraVolumeMounts` parameters in the `tyk-bootstrap` charts, enabling users to mount additional volumes. This is especially useful for users with custom storage or configuration needs in their deployments, offering more flexibility in managing their Tyk installation. + +The options are configurable using these `tyk-bootstrap` chart's parameters: + +- `bootstrap.extraVolumes` (default to empty list) +- `bootstrap.extraVolumeMounts` (default to empty list) + +
      +
    • + +
    + + + +##### Changed + +
      + +
    • +
      +Default to Long-Term Support (LTS) Versions for Components +Tyk Charts v2.0 now defaults to Long-Term Support (LTS) versions for Tyk Gateway and Tyk Dashboard. This change ensures greater stability and long-term support for customers deploying Tyk in production environments, reducing the risk of issues due to feature branch releases. Users can still override these versions if needed, but the default will provide a more predictable upgrade path for most use cases. +
      +
    • + +
    + + + + +--- + + + + + +## 1.6 Release Notes +### 1.6.0 Release Notes + +#### Release Date 14 August 2024 + +#### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecation in this release. + + + +#### Upgrade instructions + +For users currently on v1.4.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Release Highlights + + +##### Updated MDCB Health check probes +MDCB v2.7.0 release introduces `/liveness` and `/readiness` probes which give more accurate and detail health check information. MDCB deployment has been updated to use the new endpoints. See [MDCB Health Check]({{}}) section for information about the new probes. + +##### Updated default Tyk versions +Tyk Charts 1.6 will install the following Tyk component versions by default. +- Tyk Gateway v5.5.0 +- Tyk Dashboard v5.5.0 +- Tyk Pump v1.11.0 +- Tyk MDCB v2.7.0 +- Tyk Developer Portal v1.10.0 +- Tyk Operator v0.18.0 + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.6.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.6.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.6.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.6.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.6.0) + +#### Changelog {#Changelog-v1.6.0} + + +##### Added + + +
      + +
    • +
      +MDCB: Added option to configure healthcheck cache renewal period + +Added `mdcb.healthcheck.cache_renewal_period` which configures the time interval (in seconds) at which the healthchecker refreshes its cached health status information (Redis and DB). Default to 10 (seconds). +
      +
    • + +
    • +
      +MDCB: Added Ingress to HTTP services + +Added Ingress resource for MDCB HTTP service at port `http_port`. + +```yaml +tyk-mdcb: + mdcb: + # New HTTP ingress for port 8181 + http_ingress: + enabled: false + # className specifies your ingress controller class name below + className: "" + # annotations specifies annotations to be added on Ingress resource. + annotations: { } + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + # hosts corresponds to the rules to be added on Ingress rules. + hosts: + - host: mdcb-http.example.com + paths: + - path: / + pathType: ImplementationSpecific + # tls corresponds to the tls configuration if Ingress rules use TLS + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local +``` +
      +
    • + +
    + + + +
      + +
    • +
      +MDCB: Updated liveness and readiness probes + +Updated MDCB liveness and readiness probes to `/liveness` and `/readiness` respectively. These endpoints are available from MDCB v2.7.0. If you are deploying an earlier version of MDCB, please update the paths to `/health` in values.yaml file. +For more details about new endpoints, check [MDCB Health check]({{}}) section. +
      +
    • +
    + +##### Fixed +
      + +
    • +
      +Portal: Ingress resource should not be created if not enabled + +Fixed the issue that when Developer Portal component is enabled, an Ingress resource is being created, although Portal Ingress is not enabled. +
      +
    • + + +
    + + + + + +--- + + + + + +## 1.5 Release Notes +### 1.5.0 Release Notes + +#### Release Date 4 July 2024 + +#### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + +#### 3rd Party Dependencies & Tools + + +With PostgreSQL v11 has reach [EOL](https://www.postgresql.org/support/versioning/) on November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{}}) we recommend that you upgrade to a version that we have tested with, as indicated below. + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +###### MDCB: Deprecated healthcheck_port and replaced with http_port + +Starting with MDCB v2.6.0, the configuration parameter `http_port` has been introduced to replace the original `healthcheck_port`. This new HTTP port is designed to expose various endpoints for monitoring and debugging MDCB. For consistency and future compatibility, it is recommended to use `mdcb.httpPort`. + +####### Backward compatibility: + +The `mdcb.httpPort` parameter is backward compatible, meaning it will function correctly with all existing MDCB versions, ensuring a smooth transition. + +####### Recommendations for users: + +- **Helm Chart Adjustments**: Update your Helm chart configurations to use `mdcb.httpPort` instead of `mdcb.probes.healthcheckPort` to define the HTTP port. + + + +#### Upgrade instructions + +For users currently on v1.4.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Release Highlights + + +###### Updated default Tyk versions +Tyk Charts 1.5 will install the following Tyk component versions by default. +- Tyk Gateway v5.4.0 +- Tyk Dashboard v5.4.0 +- Tyk Pump v1.10.0 +- Tyk MDCB v2.6.0 +- Tyk Developer Portal v1.9.0 +- Tyk Operator v0.18.0 + +###### Tyk Operator is covered under the same umbrella +Tyk Operator can now be installed as an optional component alongside any of the following Tyk umbrella charts: +- tyk-oss +- tyk-stack +- tyk-control-plane + +With bootstrapping, the `tyk-operator-conf` secret will be automatically configured during the bootstrapping process. This means that the Tyk Operator will be ready for use with just one command, simplifying the deployment and configuration process. + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.5.0">}}) below. + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.5.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.5.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.5.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.5.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.5.0) + +#### Changelog {#Changelog-v1.5.0} + + +##### Added + + +
      + +
    • +
      +Gateway: Add option to enable fixed window rate limiter + +New field `gateway.enableFixedWindowRateLimiter` added to `tyk-gateway` chart. + +This feature allows users to enable fixed window rate limiter in the Gateway. The fixed window rate limiter feature permits requests up to the configured rate limit within a specified time window, after which any additional requests are blocked until the next window. This method has minimal impact on Redis and is straightforward to implement. However, it should be noted that it does not protect against traffic spikes as it lacks spike arrest behavior. The default value for this setting is `false`. +
      +
    • + + +
    • +
      +Dashboard and Gateway: Add init containers resources parameters + +Optional parameters `dashboard.initContainers.initAnalyticsConf.resources` and `gateway.initContainers.setupDirectories.resources` added to set resources for init containers in Dashboard and Gateway charts respectively. + +This feature is introduced to allow the definition of resource parameters for init containers, which is particularly useful in environments with namespace quotas that require specific resource definitions. Users can now specify the resources for init containers to comply with namespace resource quotas, ensuring that the init containers operate within the defined resource limits. The resource parameters can be defined at below locations. + +Tyk Dashboard chart + +```yaml +dashboard: + initContainers: + initAnalyticsConf: + resources: {} + # If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi +``` + +Tyk Gateway chart + +```yaml +gateway: + initContainers: + setupDirectories: + resources: {} + # If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi +``` + +
      +
    • + +
    • +
      +MDCB: Added SSL configurations for MDCB HTTP server + +Added `mdcb.httpServerOptions` for SSL configuration of the MDCB HTTP server. + +This feature allows users to enable SSL for the MDCB HTTP server by configuring SSL-specific options. Users can enhance the security of their MDCB HTTP server by enabling SSL. The configuration includes settings such as `useSSL`, `certificateKeyFile`, `certificateCertFile`, and `minVersion`. For other HTTP server options, users can utilize `extraEnvs` to configure additional parameters. + +```yaml +mdcb: + # defines the SSL/TLS settings for the http server where the healthcheck is exposed + httpServerOptions: + # if enabled then the endpoints will be served over https + useSSL: true + certificateKeyFile: /path-to-cert-keyfile + certificateCertFile: /path-to-certfile + + # For TLS 1.0 use 769, for TLS 1.1 use 770, for TLS 1.2 use 771, for TLS 1.3 use 772 + minVersion: 771 +``` + +
      +
    • + +
    • +
      +MDCB: Deprecated Healthcheck Port and added HTTP Port + +`mdcb.httpPort` added to define the port used for accessing MDCB HTTP endpoints. + +This change deprecates the previous healthcheck port in favor of using a defined HTTP port for accessing MDCB HTTP endpoints. This update streamlines the configuration by consolidating the HTTP endpoints under a single port setting, making it simpler to manage and configure the MDCB health checks. + +```yaml +mdcb: + # This is the preferred port setting for MDCB >= v2.6.0. + # Users should use httpPort instead of probes.healthCheckPort for newer versions. + httpPort: 8181 + + probes: + # This port lets MDCB allow standard health checks. + # It also defines the path for liveness and readiness probes. + # It is used to set TYK_MDCB_HEALTHCHECKPORT and TYK_MDCB_HTTPPORT when mdcb >= v2.6.0 + # This field will be deprecated in upcoming release. Use `httpPort` instead. + # healthCheckPort: 8181 +``` + +
      +
    • + +
    • +
      +Add tyk-operator dependency to umbrella charts + +`global.components.operator` added to determine whether the Tyk Operator component should be installed. + +This feature adds a dependency on the Tyk Operator to the umbrella charts, facilitating the installation of the Tyk Operator component. Users can now easily install the Tyk Operator component by setting the `global.components.operator` parameter. Note that the Tyk Operator requires `cert-manager` to be installed beforehand. It also expects secret `tyk-operator-conf` is present in the installation namespace. You can enable bootstrapping at `global.components.bootstrap` if you are working on a new installation to have this secret created for you. Refer to the Tyk Operator [installation guide]({{}}) for detailed information on pre-requisites. + +```yaml +global: + components: + # operator determines whether Tyk Operator component should be installed or not. + # Tyk Operator needs cert-manager to be installed beforehand. Make sure that cert-manager is installed. + # For further details, please refer to https://tyk.io/docs//api-management/automations#install-and-configure-tyk-operator/ + operator: false +``` + +
      +
    • + +
    • +
      +Add annotations to Tyk Stack and component Helm Charts + +Introduced `annotations` values to the Tyk stack and component Helm charts to define annotations for Deployments or StatefulSets. + +This enhancement allows users to define custom annotations for the Deployments or StatefulSets of Tyk components. Annotations are useful for supporting automated reloading of the Gateway or other components using tools like reloader. Previously, the Helm charts did not support any annotations at the deployment level. + +Users can now add custom annotations to facilitate automation and improve the management of Tyk components. The following annotations have been added: +- Dashboard: `dashboard.annotations` for Tyk Dashboard Deployment/StatefulSet +- Dev Portal: `annotations` for Tyk Developer Portal Deployment/StatefulSet +- Gateway: `gateway.annotations` for Tyk Gateway Deployment/StatefulSet +- MDCB: `mdcb.annotations` for MDCB Deployment/StatefulSet +- Pump: `pump.annotations` for Tyk Pump Deployment + +
      +
    • + +
    + + + +##### Fixed + +
      + +
    • +
      +Dashboard: Fix misconfiguration preventing detail log display with Mongo Pump + +This fix addresses a misconfiguration in the Dashboard chart that was causing the Log Browser not showing API activity logs for users utilizing Mongo Pump. The default configuration `dashboard.useShardedAnalytics` is now set to `true`, ensuring proper log visibility. Users who use Mongo Pump will now be able to view the API activity log as expected. Additionally, the correct Dashboard environment variable `TYK_DB_USESHARDEDANLAYTICS` is now set using `dashboard.useShardedAnalytics`. This enhancement ensures accurate log visibility and improves the overall user experience with the Dashboard by properly configuring sharded analytics. +
      +
    • + +
    • +
      +Gateway: Fix issue with control port and `latest` container image tag + +Resolved an issue in the Gateway chart that prevented the use of a container image with the `latest` tag when `gateway.control.enabled` is set to `true`. + +This fix addresses a problem in the Gateway chart where enabling the control port (`gateway.control.enabled`) would cause an error if the container image tag was set to `latest`. The helm chart template previously assumed that all images would use semantic versioning. + +Users can now use the `latest` tag for container images even when the control port is enabled. This enhancement removes the restriction and assumption of semantic versioning, providing more flexibility in specifying container image tags. +
      +
    • + +
    • +
      +Dev Portal: Fix issue that prevent bootstrap and developer portal to be enabled at the same time + +Resolved an issue in `tyk-stack` and `tyk-control-plane` chart that prevented bootstrap and devPortal components to be enabled at the same time. + +When user deploy Developer Portal using `tyk-stack` or `tyk-control-plane` Helm Chart, there was a problem before that bootstrapping and devPortal cannot be enabled at the same time. It was because dev portal was depending on secret `tyk-dev-portal-conf` to start up but the secret can only be created after all pods has been created successfully via the bootstrapping job. This problem arises when user use `--wait` flag in helm install or use ArgoCD for installation. + +We have fixed this issue by not passing required org ID and API key as command option during portal startup. The dev portal is configured after Pod creation via Dev Portal API. +
      +
    • + +
    + + + + + +--- + + + + + +## 1.4 Release Notes +### 1.4.0 Release Notes + +#### Release Date -- 6 May 2024 + +#### Breaking Changes + +This release has no breaking changes. + + + + + + + + + + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard, Pump, and MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +- In the `tyk-dashboard` chart, the `dashboard.hashKeys` field is deprecated and has been replaced with `.global.hashKeys`. This is to ensure Dashboard, Gateway, and MDCB always get the same hashKeys configurations. Setting `dashboard.hashKeys` will no longer take effect. Please only use `.global.hashKeys` field. + + + +#### Upgrade instructions + +For users currently on v1.3.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Release Highlights + + +##### General availability release of tyk-control-plane chart and tyk-mdcb chart +We're pleased to announce the official release of the Tyk Helm Charts for Tyk Control Plane and MDCB! Following a successful beta phase, these charts are now stable and ready for production use. + +With this release, we aim to provide a straightforward solution for deploying and managing Tyk Control Plane and Multi-Data Center Bridge (MDCB) using Helm Charts. Whether you're looking for our recommended setup configurations or need flexibility to adapt to your architectural requirements, our Helm Charts have you covered. + +To leverage this stable release and simplify your Tyk deployments, we invite you to explore our example setup for MDCB Control Plane using Helm Chart. Simply follow our [MDCB Control Plane setup guide]({{}}) to get started. + +##### Updated default Tyk versions +Tyk Charts 1.4 will install the following Tyk component versions by default. +- Tyk Gateway v5.3.1 +- Tyk Dashboard v5.3.1 +- Tyk Pump v1.9.0 +- Tyk MDCB v2.5.1 +- Tyk Developer Portal v1.8.5 + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.4.0">}}) below. + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.4.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.4.0) +- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.4.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.4.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.4.0) + +#### Changelog {#Changelog-v1.4.0} + + +##### Added + + +
      + +
    • +
      +OSS: Simplify Tyk Operator setup with Kubernetes Secret creation + +When you set `operatorSecret.enabled` to `true` in the `tyk-oss` chart, a Kubernetes Secret named `tyk-operator-conf` will be automatically created in the same namespace. This secret is essential for connecting Tyk Operator to the Gateway, enabling seamless management of Tyk API resources. To learn more about setting up Tyk Operator, check out [Tyk Operator installation]({{}}). +
      +
    • + + +
    • +
      +MDCB: Enhanced analytics configuration options +We have introduced new configuration options for handling analytics data flow in MDCB deployments. By default, MDCB stores aggregated analytics data from the data plane pump to SQL/Mongo. Additionally, users have the flexibility to enable Pump in the control plane, allowing MDCB to send analytics to Redis instead. + +Here are the default configurations: +```yaml +mdcb: + # When it is set to true, instead of sending analytics directly to MongoDB / SQL, + # MDCB can send analytics to Redis. This will allow tyk-pump to pull + # analytics from Redis and send to your own data sinks. + # It is used to set TYK_MDCB_FORWARDANALYTICSTOPUMP + forwardAnalyticsToPump: false + + # This enables saving analytics in multiple keys as oppose to just having one. + # It is useful when using a Redis cluster. + # It also only works when TYK_MDCB_FORWARDANALYTICSTOPUMP is set to true. + enableMultipleAnalyticsKey: true + + # This should be set to true if you choose not to store selective analytics + dontStoreSelective: false + + # This should be set to true if you choose not to store aggregate analytics + dontStoreAggregate: false + + # If set to true then it will not store analytics for tags having prefix specified in the list. + # NB: Prefix “key-” is added in the list by default. This tag is added by gateway for keys. + ignoreTagPrefixList: [] + + # If enabled, it will store analytics for all the endpoints, irrespective of Track Endpoint plugin. + trackAllPaths: false + + # If enabled, aggregate data will be generated per minute. + storeAnalyticsPerMinute: false +``` +
      +
    • + +
    • +
      +Tyk Control Plane: Added option to enable Dashboard hybrid organization +We've added a convenient option to enable dashboard hybrid organization during bootstrapping. This eliminates the manual step of calling the Dashboard Admin API post-deployment to enable hybrid organization, which is essential for MDCB deployment. +
      +
    • + +
    • +
      +Enhanced security with customizable Pod or Container security context +To harden security, we have made security context of all Pods and Containers customizable. Also, we have set `runAsNonRoot: true` in all Pod's `securityContext`. This prevents the Pods from running as root users, ensuring compatibility with the [*Restricted* Pod Security Policy](https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted). +
      +
    • + +
    • +
      +Gateway: Allow Gateway to be updated if secret value is updated +We've introduced an annotation with a checksum of the secret as a value, triggering a deployment change when the secret is updated. This ensures that pods are replaced promptly, immediately utilizing the new values from the secret. This logic applies if `global.secrets.useSecretName` is not set, as the secret is then not part of the chart. +
      +
    • + +
    • +
      +Customizable Pod Labels Across All Components +Now, you have the flexibility to customize Pod labels in all component charts. Simply populate the `podLabels` field with your desired content, and it will be added as pod labels. +
      +
    • + +
    • +
      +Portal: Customizable Pod annotations in tyk-dev-portal +We've added a `podAnnotations` field to the `tyk-dev-portal` chart, allowing you to customize pod annotations. Fill in the `podAnnotations` field with your specific content, and it will be added as pod annotations. +
      +
    • + +
    + +###### Changed + +
      + +
    • +
      +Gateway/Pump: Removed the command in Gateway and Pump pod templates +We've removed unnecessary commands from the Gateway and Pump pod templates, allowing for the utilization of entrypoint scripts. +
      +
    • + +
    • +
      +Dashboard: Allow arbitary image tags in tyk-dashboard +Now, you can use arbitrary image tags, including non-Semantic Versioning tags like `latest` for Dashboard. We've bypassed version checking in the Dashboard Deployment template to accommodate this flexibility. +
      +
    • + + +
    • +
      +Dashboard: Classic portal bootstrapping disabled by default +To avoid confusion with the latest Developer Portal, Classic Portal bootstrapping is now disabled by default in the Dashboard. If you wish to utilize the Classic Portal, simply enable it by setting `tyk-bootstrap.bootstrap.portal` to `true` in either the Tyk Stack or Tyk Control Plane chart. +
      +
    • + +
    • +
      +Dashboard: Deprecation of `hashKeys` field +The `dashboard.hashKeys` field is now deprecated. Instead, users should utilize the `global.hashKeys` field to set key hashing. This ensures configuration alignment across Gateway, Dashboard, and MDCB components. +
      +
    • + +
    + +##### Fixed + +
      +
    • +
      +Global: Redis TLS version specification +We've corrected a typo in the values.yaml file within the "global.redis" section. The fields `sslMinVersion` and `sslMaxVersion` have been updated to `tlsMinVersion` and `tlsMaxVersion`, respectively. This ensures accurate specification of the Redis TLS version for enhanced security. +
      +
    • + +
    + + + + + +--- + + + + + +## 1.3. Release Notes +### 1.3.0 Release Notes + +#### Release Date 05 Apr 2024 + +#### Breaking Changes + +For MongoDB users: Tyk Charts 1.3.0 uses `mongo-go` as the default driver to connect to MongoDB. `mongo-go` driver is compatible with MongoDB 4.4.x and above. For MongoDB versions prior to 4.4, please set `global.mongo.driver` to `mgo`. We recommend reading [Choose a MongoDB driver]({{}}) when you need to change driver setting. + + + + + + + + + + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | +| [Helm](https://helm.sh) | 3.14.x | 3.x | | +| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + + +##### Future deprecations +- In `tyk-dashboard` chart, `dashboard.hashKeys` field will be deprecated in future and be replaced with `.global.hashKeys`. This is to ensure Dashboard, Gateway, and MDCB always get the same hashKeys configurations. It is recommended users do not set `dashboard.hashKeys` and only use `.global.hashKeys` field. + +#### Upgrade instructions + +For users currently on v1.2.x, we strongly recommend promptly upgrading to the latest release. +
    + +You can use helm upgrade to upgrade your release + +```bash +helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ +helm repo update + +helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] +``` + +#### Release Highlights + +This release primarily focuses on adding support for Tyk v5.3 configurations. + +Tyk Charts 1.3 will install the following Tyk component versions by default. +- Tyk Gateway v5.3.0 +- Tyk Dashboard v5.3.0 +- Tyk Pump v1.9.0 +- Tyk MDCB v2.5.0 +- Tyk Developer Portal v1.8.3 + +For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.3.0">}}) below. + +##### Support new features available from Tyk v5.3.0 +Tyk Charts 1.3 adds support for a number of new Tyk features available from Tyk 5.3.0. These include: Support use of SSL certificates when connecting to Redis, Configurations for OAS Validate examples and OAS Validate Schema defaults. + +##### Graph Pump +Tyk Charts 1.3 adds support for Graph MongoDB Pump, Graph SQL Pump and Graph SQL Aggregate Pump. see [Graph Pump setup]({{}}) to learn more about the GraphQL-specific metrics available. + +##### Enable Tyk Identity Broker (TIB) in Tyk Dashboard +Tyk Charts 1.3 adds a field to enable Internal [Tyk Identity Broker (TIB)]({{}}) in Tyk Dashboard by field `tyk-dashboard.tib.enabled` to `true`. + +#### Downloads +- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.3.0.tar.gz) +- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.3.0) +- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.3.0) +- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.3.0) + +#### Changelog {#Changelog-v1.3.0} + + +##### Added + + +
      + +
    • +
      +Global config: Support use of SSL certificates when connecting to Redis + +Added following fields in `global.redis` to support use of SSL certificates when connecting to Redis. + +```yaml + # Allows usage of self-signed certificates when connecting to an encrypted Redis database. + # sslInsecureSkipVerify: false + + # Path to the CA file. + # sslCAFile: "" + + # The Volume mount path + # Default value: /etc/certs + # certificatesMountPath: "" + + # Path to the cert file. + # sslCertFile: "" + + # Path to the key file. + # sslKeyFile: "" + + # Maximum supported TLS version. Valid values are TLS 1.0, 1.1, 1.2, 1.3. + # Default value: 1.3 + # sslMaxVersion: "1.3" + + # Minimum supported TLS version. Valid values are TLS 1.0, 1.1, 1.2, 1.3. + # Default value: 1.2 + # sslMinVersion: "1.2" + + # Name of the tls secret. A secret needs to be created for this manually using the name as specified here + # secretName: "" + + # Name of the volume where the secret will be mounted + # volumeName: "" +``` +
      +
    • + +
    • +
      +Global config: Added OAS Validate Examples + +Added field `global.oasValidateExamples`. When set to true, it enables validation of examples in the OAS spec. +It is used to set `TYK_DB_OAS_VALIDATE_EXAMPLES` and `TYK_GW_OAS_VALIDATE_EXAMPLES`. +
      +
    • + +
    • +
      +Global config: Added OAS Validate Schema Defaults + +Added field `global.oasValidateSchemaDefaults`. When set to true, it enables validation of schema defaults in the OAS spec. +It is used to set `TYK_DB_OAS_VALIDATE_SCHEMA_DEFAULTS` and `TYK_GW_OAS_VALIDATE_SCHEMA_DEFAULTS`. +
      +
    • + +
    • +
      +Global config: Enable/Disable key hashing + +Added field `global.hashKeys`. When set to true, it enables key hashing in Gateway. Dashboard will +also operate in a mode that is compatible with key hashing. Please do not set `dashboard.hashKeys` +or make sure `dashboard.hashKeys` is set to the same value or else `dashboard.hashKeys` will take precedence. + +Note: `dashboard.hashKeys` will be deprecated in future release. +
      +
    • + +
    • +
      +Gateway: Added support for PodDisruptionBudget resource + +Added built-in support for [PodDisruptionBudget](https://kubernetes.io/docs/tasks/run-application/configure-pdb/) resource for Tyk Gateway. This will enhance the reliability and availability of your applications, giving you some control over the disruption caused by scaling operations, updates or maintenance on your pods. +To enable it, set `gateway.pdb.enabled` to `true` and configure `gateway.pdb.minAvailable` or `gateway.pdb.maxUnavailable`. +
      +
    • + +
    • +
      +Gateway: Added Ingress template for gateway control service + +When enabled at `gateway.control.ingress.enabled`, an Ingress resource will be created to allow external access to gateway's [control service]({{}}). +
      +
    • + +
    • +
      +Gateway: Configure Gateway to work with MDCB synchroniser + +Allow users to configure worker gateway to work with [Tyk MDCB synchroniser]({{}}) easily by setting `global.mdcbSynchronizer.enabled` in `tyk-data-plane`. +The control plane should be deployed with same `global.mdcbSynchronizer.enabled` value too. +
      +
    • + +
    • +
      +Gateway: Customize ServiceAccount to be used + +Allow users to customize `serviceAccountName` for gateway, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. +
      +
    • + +
    • +
      +Gateway: Make service port name configurable + +Users can configure Tyk Gateway service port name and Tyk Gateway control service port name. Default is `http`. +
      +
    • + +
    • +
      +Gateway: Make initContainer image configurable + +Users can configure Tyk Gateway initContainer image so that it is possible to load busybox image from preferred registry. +
      +
    • + +
    • +
      +Dashboard: Added option to enable Tyk Identity Broker (TIB) in Tyk Dashboard + +You can enable Internal [Tyk Identity Broker (TIB)]({{}}) in Tyk Dashboard by field `tyk-dashboard.tib.enabled` to `true`. +
      +
    • + +
    • +
      +Dashboard: Customize ServiceAccount to be used + +Allow users to customize `serviceAccountName` for dashboard, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. +
      +
    • + +
    • +
      +Dashboard: Make service port name configurable + +Users can configure Tyk Dashboard service port name. Default is `http`. +
      +
    • + +
    • +
      +Pump: Added Graph pump support + +[Graph Pumps]({{}}) will be added when the user adds `mongo` or `postgres` to `pump.backend`. When `mongo` is added to `pump.backend` the Graph MongoDB Pump will be enabled. When `postgres` is added to `pump.backend` the Graph SQL Pump and Graph SQL Aggregate Pump will be enabled. +
      +
    • + +
    • +
      +Pump: Customize ServiceAccount to be used + +Allow users to customize `serviceAccountName` for pump, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. +
      +
    • + +
    • +
      +Pump: Make service port name configurable + +Users can configure Tyk Pump service port name. Default is `http`. +
      +
    • + +
    • +
      +Portal: Customize ServiceAccount to be used + +Allow users to customize `serviceAccountName` for portal, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. +
      +
    • + +
    • +
      +Portal: Make service port name configurable + +Users can configure Tyk Developer Portal service port name. Default is `http`. +
      +
    • + +
    • +
      +New component chart to deploy MDCB + +A new [MDCB component chart](https://github.com/TykTechnologies/tyk-charts/tree/main/components/tyk-mdcb) has been added to deploy MDCB. +It is currently in Beta. For installation instructions and configurations, please +read [Tyk Control Plane chart]({{}}). +
      +
    • + +
    • +
      +New umbrella chart to deploy Tyk Control Plane + +A new [Tyk Control Plane umbrella chart](https://github.com/TykTechnologies/tyk-charts/tree/main/tyk-control-plane) has been added to deploy Tyk Control Plane. +It is currently in Beta. For installation instructions and configurations, please +read [Tyk Control Plane chart]({{}}). +
      +
    • + +
    + + +##### Changed + +
      +
    • +
      +Global config: Update default MongoDB driver to `mongo-go` + +Tyk Charts 1.3.0 uses `mongo-go` as the default driver to connect to MongoDB. `mongo-go` driver is compatible with MongoDB 4.4.x and above. For MongoDB versions prior to 4.4, please change `global.mongo.driver` to `mgo`. We recommend reading [Choose a MongoDB driver]({{}}) when you need to change driver setting. +
      +
    • +
    + + + + +--- + + + + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/developer-support/release-notes/mdcb.md b/tyk-docs/content/developer-support/release-notes/mdcb.md new file mode 100644 index 0000000000..9f04d5d7a1 --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/mdcb.md @@ -0,0 +1,852 @@ +--- +title: Tyk Multi Data Center Bridge Release Notes +description: "Tyk Multi Data-Center Bridge v2.7 release notes" +tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.7", "2.7"] +aliases: + - /release-notes/mdcb/mdcb + - /release-notes/mdcb/ + - /product-stack/tyk-enterprise-mdcb/release-notes/version-2.4 + - /product-stack/tyk-enterprise-mdcb/release-notes/version-2.5 + - /product-stack/tyk-enterprise-mdcb/release-notes/version-2.6 + - /product-stack/tyk-enterprise-mdcb/release-notes/version-2.7 + - /release-notes/mdcb-2.0 + - /release-notes/mdcb-2.1 + - /release-notes/mdcb-2.2 + - /release-notes/mdcb-2.3 + - /release-notes/mdcb-2.4 + - /release-notes/mdcb-2.5 + - /release-notes/mdcb-2.6 +--- + +Licensed Protected Product + +**This page contains all release notes for Multi Data Center Bridge displayed in reverse chronological order** + +## Support Lifetime +Our minor releases are supported until our next minor comes out. + +--- + +## 2.7 Release Notes +### 2.7.2 Release Notes + +#### Release Date 03 December 2024 + +#### Release Highlights + +##### Support Tyk 5.7 +Tyk MDCB 2.7.2 has been updated to support API configurations from Tyk 5.7.0. + +#### Breaking Changes +This release has no breaking changes. + +#### Dependencies {#dependencies-X.Y.Z} + +##### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +For users currently on v2.7.1, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower minor), it is advisable to bypass version 2.7.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Downloads +- [Docker image v2.7.2](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.2) + - ```bash + docker pull tykio/tyk-mdcb-docker:v2.7.2 + ``` + +#### Changelog {#Changelog-v2.7.2} + +##### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.7 + +MDCB 2.7.2 supports Tyk API definitions up to Tyk Gateway v5.7.0. Please use MDCB 2.7.2+ with Tyk Gateway v5.7.0+. +
      +
    • +
    + +##### Security Fixes +
      + +
    • +
      + Fixed the following CVEs: + + - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) + - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) + - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) +
      +
    • +
    + +--- + +### 2.7.1 Release Notes + +#### Release date 10 October 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights + +##### Support GraphQL analytics records +MDCB (Multi-Data Center Bridge) has been enhanced to support the storage of GraphQL aggregate analytics directly. This allows for better tracking and analysis of GraphQL usage across distributed environments. This enhancement simplifies the storage and management of GraphQL analytics within MDCB, improving efficiency and ease of use. + +#### Downloads +- [Docker image v2.7.1](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.1) +- ```bash + docker pull tykio/tyk-mdcb-docker:v2.7.1 + ``` + + +#### Changelog {#Changelog-v2.7.1} + +##### Added +
      +
    • +
      + Support the storage of GraphQL aggregate analytics +MDCB (Multi-Data Center Bridge) has been enhanced to support the storage of GraphQL aggregate analytics directly. This allows for better tracking and analysis of GraphQL usage across distributed environments when Gateway send analytics data directly to MDCB, which processes and sends the data to the analytics storage. This enhancement simplifies the storage and management of GraphQL analytics without Tyk Pump, improving efficiency and ease of use. +
      +
    • +
    + + +##### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.6 + +MDCB 2.7.1 supports Tyk API definitions up to Tyk Gateway v5.6.0. Please use MDCB 2.7.1+ with Tyk Gateway v5.6.0+. +
      +
    • +
    +--- + +### 2.7.0 Release Notes + +#### Release date 12 August 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release, however with the introduction of new healthcheck endpoints we encourage customers to start using the new `/liveness` and `/readiness` endpoints and avoid using the old `/health` endpoint. + +##### Recommendations for users: + +- Migrate to new [health check]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#health-check" >}}) endpoints in order to get more detailed information. For Kubernetes users, use Helm Charts v1.6 to upgrade MDCB to set liveness and readiness probes of MDCB deployment to the new health check endpoints. + +#### Upgrade instructions +If you are using a 2.6.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.6.0 and upgrade directly to this release. + +#### Release Highlights + +##### New Health check probes +Two new [health check]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#health-check" >}}) endpoints have been added to improve monitoring and diagnostics: + +1. `/liveness`: This endpoint provides a quick check to determine if the MDCB application is alive and running. +2. `/readiness`: This endpoint offers a detailed status of components and dependencies required for MDCB to serve traffic. It includes status checks for: + - Database connectivity + - Redis connectivity + - RPC server status + +These new endpoints allow for more granular monitoring of MDCB's operational status, enabling quicker identification and resolution of potential issues. + +##### New Configuration Access Endpoint +Two new `/config` and `/env` [endpoints]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#check-mdcb-configurations" >}}) have been implemented, allowing developers to access the current configuration state of the MDCB instance in real-time. This feature provides: + +- Secure access to configuration data +- Automatic redaction of sensitive information +- Up-to-date view of the running configuration + +This addition enhances debugging capabilities and provides valuable insights into the MDCB instance's current settings. + +Please refer to the [changelog]({{< ref "#Changelog-v2.7.0">}}) below. + +#### Downloads +- [Docker image v2.7.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.0) +- ```bash + docker pull tykio/tyk-mdcb-docker:v2.7.0 + ``` + +#### Changelog {#Changelog-v2.7.0} + +##### Added +
      +
    • +
      + Added `/liveness` endpoint for quick checks on MDCB application status + Added `/liveness` endpoint that reports if MDCB is running. It returns status 200 if MDCB is alive. It returns status 503 if MDCB is not operational. In that case, a restart is recommended. +
      +
    • +
    • +
      + Implemented `/readiness` endpoint to detail status of critical components and dependencies + Added `/readiness` endpoint that reports if MDCB is ready to serve request. It returns status 200 if MDCB is ready. It returns status 503 if MDCB or one of the dependencies is not ready. +
      +
    • +
    • +
      + Introduced `/config` endpoint for secure, real-time access to MDCB instance configuration + Added `/config` endpoint that returns MDCB instance configuration in JSON format. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests return MDCB JSON configurations with passwords and sensitive information redacted. +
      +
    • +
    • +
      + Introduced `/env` endpoint for secure, real-time access to MDCB instance configuration + Added `/env` endpoint that returns MDCB instance configuration as a list of environment variable keys and values. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests returns a list of environment variable keys and values with passwords and sensitive information redacted. +
      +
    • + + +
    + + +##### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.5 + +MDCB 2.7.0 supports Tyk API definitions up to Tyk Gateway v5.5.0. Please use MDCB 2.7.x with Tyk Gateway v5.5.0+. +
      +
    • +
    +--- + +## 2.6 Release Notes +### 2.6.0 Release Notes + +#### Release date 2 July 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +Starting with MDCB v2.6.0, the configuration parameter `http_port` has been introduced to replace the original `healthcheck_port`. This new HTTP port is designed to expose various endpoints for monitoring and debugging MDCB. + +##### Changes in MDCB v2.6.0: +- **New Configuration**: `http_port` is the new parameter for defining the HTTP port, with a default value of `8181`. +- **Deprecation**: The `healthcheck_port` parameter is deprecated and will no longer be used in future MDCB versions. +- **Helm Chart Update**: The MDCB Helm chart now includes the option `mdcb.probes.httpPort`, which takes precedence over `mdcb.probes.healthcheckPort`. For consistency and future compatibility, it is recommended to use `mdcb.probes.httpPort`. + +##### Backward compatibility: + +The `http_port` parameter is backward compatible, meaning it will function correctly with all existing MDCB versions, ensuring a smooth transition. + +##### Recommendations for users: + +- **Update Configurations**: Modify your MDCB configurations to use the new `http_port` parameter. + +#### Upgrade instructions +If you are using a 2.5.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.5.0 and upgrade directly to this release. + +#### Release Highlights + +##### Tyk v5.4 Compatibility +MDCB 2.6.0 is an update for compatibility for synchronisation with Tyk v5.4 API Definitions. + +##### Comprehensive Data Plane Node Information +MDCB 2.6 introduces a new `/dataplanes` endpoint that provides a comprehensive view of all data plane nodes connected to MDCB, including crucial metadata and status information for each node. The admin secret is required in the header to access these information. + +Please refer to the [changelog]({{< ref "#Changelog-v2.6.0">}}) below. + +#### Downloads +- [Docker image v2.6.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.6.0) +- ```bash + docker pull tykio/tyk-mdcb-docker:v2.6.0 + ``` + +#### Changelog {#Changelog-v2.6.0} + +##### Security + +The following CVEs have been resolved in this release: + +- [PRISMA-2021-0108](https://github.com/influxdata/influxdb/issues/10292) +- [CVE-2024-27304](https://nvd.nist.gov/vuln/detail/CVE-2024-27304) +- [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288) + +##### Fixed +
      +
    • +
      + Fixed MDCB failure when Tyk Dashboard is upgraded from v4 to v5 +Fixed a bug where upgrading Tyk Dashboard from version 4 to version 5 caused an MDCB failure when using the default PostgreSQL protocol. Resolved the issue in MDCB by detecting cached plan errors, then reconnecting to the storage and rerunning the query to ensure proper functionality. +
      +
    • + +
    + +##### Added +
      +
    • +
      + Retrieve information of all the connected data plane nodes + Adding a `/dataplanes` endpoint that offers a comprehensive view of all data plane nodes connected to MDCB. This endpoint provides crucial metadata and status information for each connected node, enabling efficient monitoring and troubleshooting. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests return an array of node details, including node ID, API key, group ID, version, TTL, tags, health status, API statistics, and host details. +
      +
    • +
    + + +##### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.4 + +MDCB 2.6.0 supports Tyk API definitions up to Tyk Gateway v5.4.0. Please use MDCB 2.6.x with Tyk Gateway v5.4.0+. +
      +
    • + +
    • +
      + Updated to Go 1.22 + + MDCB has been updated to use Go 1.22 to benefit from fixed security issues, linkers, compilers etc. + +
      +
    • +
    + +--- + +## 2.5 Release Notes +### 2.5.1 Release Notes + +#### Release date 24 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x or 2.5.0 version, we advise you to upgrade as soon as possible to this latest release. If you are on an older version, you should skip 2.5.0 and upgrade directly to this release. + +#### Release Highlights +This release contains bug fixes as detailed in the [changelog]({{< ref "#Changelog-v2.5.1">}}) below. + +#### Downloads +- [Docker image v2.5.1](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.5.1) +- ```bash + docker pull tykio/tyk-mdcb-docker:v2.5.1 + ``` + +#### Changelog {#Changelog-v2.5.1} + +##### Fixed +
      +
    • +
      + Fixed a bug where the TYK_MDCB_HEALTHCHECKPORT was not used when MDCB was configured with TLS enabled + + When MDCB was configured with TLS enabled, traffic was served over HTTPS on the listen port that was configured. However, the healthcheck endpoint was exposed on the standard HTTPS port of 443 and TYK_MDCB_HEALTHCHECKPORT was not being respected. +
      +
    • + +
    • +
      + Fixed a bug where clearing the API cache from the Tyk Dashboard UI failed to invalidate the cache in distributed data plane gateways + + When clearing the API cache from the Tyk Dashboard UI, the cache in distributed data plane gateways was not being invalidated. *Please note that this fix requires Tyk Gateway version 5.3.1.* +
      +
    • + +
    • +
      + Fixed a bug where PostgreSQL could not be used with MDCB 2.4.2/2.4.3 if APIs were created with version 4.0.X of the Dashboard + + MDCB v2.4.2/2.4.3 was unable to retrieve APIs when they were created using a 4.0.x Dashboard and PostgreSQL +
      +
    • + +
    + +--- + +### 2.5.0 Release Notes + +##### Release date 5 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. + +#### Release Highlights + +##### Tyk v5.3 Compatibility +MDCB 2.5.0 is an update for compatibility for synchronisation with Tyk v5.3 API Definitions. + +##### Redis v7.x Compatibility +We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible with Redis v7.x. + +##### MongoDB v7.0.x Compatibility +We have upgraded mongo-go driver to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that both Tyk 5.0.x+ and Tyk 5.3 are compatible with MongoDB v7.0.x. + +##### Security Fixes +We have fixed a security issue affecting MDCB v2.2.0 to v2.4.x, where certain per-API access rights from policies are not properly relayed to edge gateways. We strongly recommend upgrading to MDCB version 2.5.0 to ensure the proper enforcement of per-API access rights across all gateways in your deployment. + +Please refer to the [changelog]({{< ref "#Changelog-v2.5.0">}}) below. + +#### Downloads +- [Docker image v2.5.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.5.0) +- ```bash + docker pull tykio/tyk-mdcb-docker:v2.5.0 + ``` + +#### Changelog {#Changelog-v2.5.0} + +##### Fixed +
      +
    • +
      + Fixed relaying per-API access rights to gateways for MongoDB deployments + +Fixed a security issue affecting MDCB v2.2.0 to v2.4.x, where certain per-API access rights from policies are not properly relayed to edge gateways. This issue exists only when using MongoDB as storage engine. + +It affected GraphQL's field-based permissions, query depth, per query depth limits, and disable introspection settings. Also it affected usage quota of both HTTP and GraphQL APIs. However, "Set per API limits and quotas" and global policy settings (e.g. query depth) are not affected by this issue. +
      +
    • + +
    • +
      + Fixed CVE-2023-3978 (NVD) + + Update embedded Tyk Pump to v1.9 to address [CVE-2023-3978](https://nvd.nist.gov/vuln/detail/CVE-2023-3978) (NVD) +
      +
    • +
    • +
      + Fixed CVE-2023-39325 (NVD) + + Update embedded Tyk Pump to v1.9 to address [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) (NVD) +
      +
    • +
    • +
      + Fixed CVE-2020-26160 (NVD) + + Migrate MDCB JWT library to golang-jwt v4.5.0 to address [CVE-2020-26160](https://nvd.nist.gov/vuln/detail/CVE-2020-26160) (NVD) +
      +
    • + +
    • +
      + Fixed MDCB stuck in crash loop during startup if tyk_sink.config is missing + + Fix the sample MDCB configuration to stop a crash loop to allow MDCB to run without a tyk_sink.conf file +
      +
    • +
    + +##### Added +
      +
    • +
      + Support Redis v7.0.x + + MDCB 2.5.0 refactors Redis connection logic by using [storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), + which integrates with [go-redis](https://github.com/redis/go-redis) v9. Subsequently, this fix adds support for + Redis v7.0.x. +
      +
    • +
    + + +##### Updated +
      + +
    • +
      + Update for compatibility with API definitions for Tyk v5.3 + +MDCB 2.4.x supports Tyk API definitions up to Tyk Gateway v5.3.0. Please use MDCB 2.5.x with Tyk Gateway v5.3.0+. +
      +
    • +
    • +
      + Set default MongoDB driver to mongo-go + +MDCB uses `mongo-go` as the default MongoDB driver from v2.5.0. This provides support for MongoDB 4.4.x, +5.0.x, 6.0.x, 7.0.x. If you are using older MongoDB versions e.g. 3.x, please set MongoDB driver to `mgo`. +[MongoDB supported versions](https://tyk.io/docs/planning-for-production/database-settings/mongodb/#supported-versions) +page provides details on how to configure MongoDB drivers in Tyk. +
      +
    • + +
    • +
      + Support MongoDB v7.0.x + +MDCB integrates with [storage v1.2.2](https://github.com/TykTechnologies/storage), which updated mongo-go +driver we use from v1.11.2 to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). +It allows us to benefit from the bug fixes and enhancements released by MongoDB. +
      +
    • + + +
    • +
      + Updated to Go 1.21 + + MDCB updated to Go 1.21 to benefit from fixed security issues, linkers, compilers etc. + +
      +
    • +
    + +--- + +## 2.4 Release Notes +### 2.4.3 Release Notes + +#### Release date 27 Feb 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### 3rd Party Dependencies & Tools +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [MongoDB](https://www.mongodb.com/try/download/community) | 4.4.x, 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | +| [Redis](https://redis.io/download/) | 6.0.x, 6.2.x | 6.0.x, 6.2.x | Used by MDCB | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. + +#### Release Highlights +This release resolved an issue causing partial outages in Tyk Cloud Hybrid gateways due to a blocked stats channel, affecting login RPC calls and gateway operations. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.3/images/sha256-832f461782fbc6182382798a89025b0489f529427521f92683f33df1ebbd4218?context=explore) + +#### Changelog {#Changelog-v2.4.3} + +##### Fixed +
      +
    • +
      + Fixed a blockage in the stats channel which causes partial outages in Tyk Cloud Hybrid gateways + +Fixed a blockage in the stats channel of Tyk Cloud Hybrid gateways, improving login RPC calls and gateway operations. +
      +
    • +
    + +--- + +### 2.4.2 Release Notes + +#### Release date 9 Jan 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. + +#### Release Highlights +This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v2.4.2">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.2/images/sha256-bdd708718153fdc25d13573d280fb5a715f11b1d2c97c6d59837d8dd83bf3c6c?context=explore) + +#### Changelog {#Changelog-v2.4.2} + +##### Fixed +
      +
    • +
      + Fix backward compatibility with Tyk v3.x and v4.x + +Fixed an issue where MDCB cannot pickup APIs created on Dashboard v3.x and v4.x. +
      +
    • +
    + +--- + +### 2.4.1 Release Notes + +#### Release date 21 Nov 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. + +#### Release Highlights +This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v2.4.1">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.1/images/sha256-2debf08c95c46a4662a00b2193ee142998826ed7c5e2bb4a4633737c0a4de2e3?context=explore) + +#### Changelog {#Changelog-v2.4.1} + +##### Changed +- Update for compatibility with API definitions for Tyk v5.2.3 + +--- + +### 2.4.0 Release Notes + +#### Release Date 14 November 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. + +#### Release Highlights +MDCB 2.4.0 is an update for compatibility for synchronisation with Tyk v5.2 API Definitions. It also enables gateway information visualisation on Tyk Dashboard v5.2+. Please refer to the [changelog]({{< ref "#Changelog-v2.4.0">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.0/images/sha256-b5fad5b4c1c8b912999816ab51ff51e62fdd733fc43256187f22e1218b287f26?context=explore) + +#### Changelog {#Changelog-v2.4.0} + +##### Added +- Track number of connected gateways and gateway info. The connection statistics can be queried from Tyk Dashboard v5.2+. This allow greater visibility for Operation teams on the number of gateways they are using. + +##### Updated +- Update for compatibility with API definitions for Tyk v5.1 + +--- + +## 2.3 Release Notes +### 2.3.1 Release Notes + +Release date: 2023-08-31 + +#### Fixed + +- In MDCB 2.3, the embedded OAS API Definition introduced in 5.1 is not backward compatible. It causes Gateway panic when MDCB is connecting to Tyk 5.0.x or earlier releases. In this fix, MDCB will transform the old API Definition to new format to avoid panic. +- Users should use URL-encoded values in username and password of a MongoDB connection string if it contains following characters - "?", "@". The same connection string should always be accepted by both mgo and mongo-go drivers. (Note: Same fix for Dashboard will be available in upcoming release Tyk Dashboard v5.0.6 and v5.2.0) + + +### 2.3.0 Release Notes + +Release date: 2023-06-28 + +MDCB 2.3.0 is an update for compatibility for synchronisation with Tyk v5.1 API Definitions. + +#### Updated + +- Update MDCB to Go 1.19 +- Update for compatibility with API definitions for Tyk v5.1 + +## 2.2 Release Notes +### 2.2.0 Release Notes +Release date: 2023-05-26 + +MDCB 2.2.0 brings support for using the official [MongoDB go driver](https://www.mongodb.com/docs/drivers/go/current/?_ga=2.196564399.289488302.1688466439-526957880.1688466345#mongodb-go-driver), as well as some performance fixes. + +From MDCB 2.2.0, we added support for MongoDB 5.0.x and 6.0.x. To enable this, you have to set the new *MDCB* config option driver to `mongo-go`. + +The driver setting defines the driver type to use for MongoDB. It can be one of the following values: +* [mgo](https://github.com/go-mgo/mgo) (default): Uses the `mgo` driver which is the existing one Tyk has been using till now. This driver supports *MongoDB* versions up to v4 (lower or equal to v4, <=v4). You can get more information about this driver [here](https://github.com/go-mgo/mgo). This driver will stay the default till the next release, to allow users more time for migration. After that, the default driver will be `mongo-go`. +* [mongo-go](https://github.com/mongodb/mongo-go-driver): Uses the official *MongoDB driver*. This driver supports MongoDB v4 or newer (greater or equal to v4, >=v4). + +Tyk 5.0.2 and Tyk Pump 1.8.0 also support the new driver option. + +We have also worked on performance improvement and fixes like preventing successive frequent reloads, handling storage errors gracefully, retry connection to storage during startup. If ownership is enabled, gateways will also load APIs that are not associated with any user or group. + +#### Added +- Support for `mongo-go` driver option +- Support for the `+srv` connection string with `mongo-go` driver option +- Support for SCRAM-SHA-256 with “mongo-go” driver option +- Performance Enhancement: MDCB enqueue APIs and Policies for reload to reduce multiple reloads +#### Fixed +- MDCB handles errors from storage gracefully and prevents sending an empty list of APIs to gateways which would cause an outage +- MDCB will retry the connection to storage to prevent startup failure +#### Updated +- If both mongo_url and connection_type + connection_string are set, Mongo will be loaded by default. +- When ownership is enabled, gateways should only load APIs that are associated with the user or group. Additionally, APIs with no association with any users or groups are also loaded. + +## 2.1 Release Notes +### 2.1.1 Release Notes +Release date: 2023-03-29 + +#### Fixed +- Updated API Definition to support 5.0.0 Gateways. +- Fixed one critical CVE issue with go.uuid package. + + +### 2.1.0 Release Notes +Release date: 2023-02-20 + +#### Added +- Added a new configuration option [enable_ownership]({{< ref "tyk-multi-data-centre/mdcb-configuration-options#enable_ownership" >}}) that allows MDCB filter APIs by API Ownership. +- MDCB works without group id. This means that when an Edge Gateway doesn’t have a group, it will defaults to the `ungrouped` group. This has some fallbacks, as we can’t use the synchroniser for the ungrouped gateways. + + +#### Fixed +- Updated API Definition to support 4.3.3 Gateways. + +## 2.0 Release Notes +### 2.0.5 Release Notes +Release date: 2023-01-31 + +#### Added +- Added a new configuration option (`group_key_ttl`) that specifies the group key TTL in seconds. This key is used to prevent a group of gateways from re-syncing when is not required. On login (GroupLogin call), if the key doesn't exist then the sync process is triggered. If the key exists then the TTL just gets renewed. In case the cluster of gateways is down, the key will expire and get removed and if they connect again a sync process will be triggered. Default value: 180 seconds. Min value: 30 seconds. + +#### Fixed +- Fixed an issue where gateways in the data plane couldn't re-sync with MDCB (in the control plane) after their Redis (in the data plane) has been reset. The only way was to change the `group_id`. The fix means that MDCB can overcome this situation independently and there's no need for the users to do anything (changing `group_id` or any other curing action). Check `group_key_ttl` for [more details](#added) + +### 2.0.4 Release Notes +Release date: 2022-12-06 + +#### Added +- Changes in the API definition introduced in Tyk Gateway 4.3 +- Update to Go 1.16 +- Update the embedded Pump to the latest (v1.7.0) + +#### Fixed +- Fixed a minor security issue when logging Mongo URL + +### 2.0.3 Release Notes +Release date: 2022-08-12 + +#### Fixed +- Fixed a bug when using MDCB with Tyk Gateway versions prior to 4.1 where an error could be reported when querying an API from a worker gateway. +- Fixed an incompatibility with MDCB logging format changes +- Fixed an issue where, with the MDCB Synchroniser disabled, all API resources were still pushed out to workers upon creation in the controller; the behavior should be as it was pre-synchroniser. + +### 2.0.2 Release Notes +Release date: 2022-08-12 + +#### Fixed +- Fixed a bug when using MDCB with Tyk Gateway versions prior to 4.1 where an error could be reported when querying an API from a worker gateway. + +### 2.0.1 Release Notes +Release date: 2022-07-20 + +#### Added +- Updated MDCB to support Tyk Gateway v4.1 +- Added a new configuration option (`omit_analytics_index_creation`) that supresses the creation of indexes in Mongo pumps (to match Pump 1.6) +- Added the option to configure MDCB certificates using environment variables. + +#### Fixed +- Fixed a bug when using MDCB to transfer analytics to MongoDB, where the indexes Tyk created in the MongoDB did not correctly include a time stamp. + +#### Changed +- Updated the pump embedded in MDCB to the latest version (Pump v1.6) + + +### 2.0.0 Release Notes +Release date: 2022-05-17 + +#### Added + +##### SQL support +Since Tyk v4.0, the dashboard supports SQL engine natively. This means that Tyk has support for an SQL relational database to be used instead of the default MongoDB and lets users decide which DB type is the best for their usage. MDCB 2.0 introduces support for SQL to the multi data center bridge, enabling MDCB orchestrated deployments using SQL databases. +MDCB now uses embedded Tyk Mongo and SQL pumps to write analytics. + +#### Fixed +- Fixed a security risk where API keys could be logged in plain text in MDCB logs. + +#### Changed +- Improved the formatting of debug logs to align with the rest of the Tyk product suite. +- Hide innocent and unhelpful error messages related to the RPC connection that were spamming the logs + + +## Further Information + +### Upgrading Tyk + +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.0.md b/tyk-docs/content/developer-support/release-notes/operator.md similarity index 56% rename from tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.0.md rename to tyk-docs/content/developer-support/release-notes/operator.md index de76fda33d..9b34f0f7ce 100644 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.0.md +++ b/tyk-docs/content/developer-support/release-notes/operator.md @@ -1,11 +1,18 @@ --- -title: Tyk Operator 1.0 Release Notes -tag: ["Tyk Operator", "Release notes", "v1.0", "changelog" ] +title: Tyk Operator Release Notes +tag: ["Tyk Operator", "Release notes", "v1.0", "changelog", "v1.0.0", "v0.18.0", "v0.17.1", "v0.17.0", "v0.16.0" ] description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 1.0.x series." +aliases: + - /product-stack/tyk-operator/release-notes/operator-0.16 + - /product-stack/tyk-operator/release-notes/operator-0.17 + - /product-stack/tyk-operator/release-notes/operator-0.18 + - /product-stack/tyk-operator/release-notes/operator-1.0 + - /product-stack/tyk-operator/release-notes/operator-1.1 + - /product-stack/tyk-operator/release-notes/overview --- **Licensed Protected Product** -**This page contains all release notes for version 1.0.X displayed in a reverse chronological order** +**This page contains all release notes for Tyk Operator displayed in a reverse chronological order** ## Support Lifetime @@ -13,13 +20,83 @@ Our minor releases are supported until our next minor comes out. --- -## 1.0.0 Release Notes +## 1.1 Release Notes +### 1.1.0 Release Notes + +#### Release Date 09 December 2024 + +#### Release Highlights + +###### Support for Tyk Streams API +Tyk Operator v1.1 supports management of Tyk Streams APIs through the new **`TykStreamsApiDefinition`** custom resource. This allows you to have declarative, versioned, and fully automated control to your streaming APIs. + +#### Breaking Changes + +This release has no breaking changes. + +#### Dependencies {#dependencies-1.1} +##### 3rd Party Dependencies & Tools + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [Kubernetes](https://kubernetes.io) | 1.26.x to 1.30.x | 1.19.x to 1.30.x | | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions + +Tyk Operator v1.1 introduced new Custom Resource Definitions (CRDs). Before upgrading to Tyk Operator v1.1 with Helm Chart, please run the following commands to install the CRDs: + +```bash +$ kubectl apply -f https://raw.githubusercontent.com/TykTechnologies/tyk-charts/refs/heads/main/tyk-operator-crds/crd-v1.1.0.yaml +``` + + +Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. + + +#### Downloads +- [Docker image v1.1.0](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v1.1.0) + - ```bash + docker pull tykio/tyk-operator:v1.1.0 + ``` +- Helm chart + - tyk-charts v2.2.0 + + +#### Changelog {#Changelog-v1.1.0} + +##### Added + +
      +
    • +
      +TykStreamsApiDefinition: new Custom Resource for Tyk Streams + +The `TykStreamsApiDefinition` custom resource allows you to manage Tyk Streams APIs directly within your Kubernetes environment. This enhancement offers a Kubernetes-native approach to managing Tyk APIs, streamlining operations and ensure single source of truth in Kubernetes. + +[Learn More]({{< ref "api-management/automations#create-a-tykstreamsapidefinition-custom-resource" >}}) +
      +
    • +
    + +--- + +## 1.0 Release Notes +### 1.0.0 Release Notes We are excited to announce the release of **Tyk Operator v1.0**, marking a significant milestone with new features, enhancements, and critical changes. This release introduces support for Tyk OAS APIs, extended capabilities for managing Classic APIs and security policies, and includes **license changes** that you must be aware of before upgrading. -### Release Date 10 Oct 2024 +#### Release Date 10 Oct 2024 -### Release Highlights +#### Release Highlights **License Requirement:** Tyk Operator is now a closed-source product and requires a valid license key to operate. Please follow our [Installation and Upgrade Guide]({{}}) to set your license key before installation or upgrade. @@ -54,23 +131,23 @@ If the license is missing, invalid, or expired, Tyk Operator will exit with an e - - + -### Dependencies {#dependencies-1.1} -#### 3rd Party Dependencies & Tools +#### Dependencies {#dependencies-1.1} +##### 3rd Party Dependencies & Tools There are no deprecations in this release. - -### Upgrade instructions +#### Upgrade instructions + - [tyk-charts v2.1.0]({{}}) -### Changelog {#Changelog-v1.0.0} +#### Changelog {#Changelog-v1.0.0} -#### Added +##### Added +## 0.18 Release Notes +### 0.18.0 Release Notes + +#### Release date 4 Jul 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. + +#### Release Highlights +This release added support for Tyk 5.4 API definition. + +For details please refer to the [changelog]({{< ref "#Changelog-v0.18.0">}}) below. + +#### Downloads +- [Docker image v0.18.0](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.18.0) + - ```bash + docker pull tykio/tyk-operator:v0.18.0 + ``` +- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.18.0) + +#### Changelog {#Changelog-v0.18.0} + +##### Added + +
      +
    • +
      +Added support of Tyk 5.4 API definition CRD + +Added to ApiDefinition [Custom Resource Definition (CRD)](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/): + +- [introspection]({{}}) option to enable/disable GraphQL introspection +- [graphql.proxy.auth_headers]({{}}) +- [graphql.proxy.subscription_type]({{}}) +- [graphql.proxy.request_headers]({{}}) +- graphql.proxy.use_response_extensions +- graphql.proxy.request_headers_rewrite +- graphql.proxy.features + +
      +
    • +
    + + +## 0.17 Release Notes +### 0.17.1 Release Notes + +#### Release date 6 May 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. + +#### Release Highlights +This release is focused on bug fixes. For details please refer to the [changelog]({{< ref "#Changelog-v0.17.1">}}) below. + +#### Downloads +- [Docker image v0.17](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.17.1) + - ```bash + docker pull tykio/tyk-operator:v0.17.1 + ``` +- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.17.1) + +#### Changelog {#Changelog-v0.17.1} + +##### Fixed + +
      +
    • +
      +Fixed ApiDefinition Custom Resources generated by the Ingress Controller used a wrong certificate + +When using Tyk as an Ingress Controller with TLS enabled, the ApiDefinition Custom Resources generated by the Ingress Controller is missing the OrgID field. As a result, Tyk Gateway used a wrong certificate when serving a request. It is fixed by adding back OrgID field to ApiDefinition CRs created by Ingress Controller. +
      +
    • + +
    • +
      +Added Webhook and RBAC port configurations in Tyk Operator Helm chart + +Users can configure Tyk Operator webhook and RBAC port via helm chart values `.Values.webhookPort` and `.Values.rbac.port` respectively. +
      +
    • + +
    • +
      +Addressed security vulnerabilities CVE-2023-45288 + +Addressed security vulnerabilities [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288) where an attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames. Maintaining HPACK state requires parsing and processing all HEADERS and CONTINUATION frames on a connection. When a request's headers exceed MaxHeaderBytes, no memory is allocated to store the excess headers, but they are still parsed. This permits an attacker to cause an HTTP/2 endpoint to read arbitrary amounts of header data, all associated with a request which is going to be rejected. These headers can include Huffman-encoded data which is significantly more expensive for the receiver to decode than for an attacker to send. The fix sets a limit on the amount of excess header frames we will process before closing a connection. +
      +
    • + +
    • +
      +Addressed security vulnerabilities CVE-2024-24786 + +Addressed security vulnerabilities [CVE-2024-24786](https://nvd.nist.gov/vuln/detail/CVE-2024-24786) where the `protojson.Unmarshal` function can enter an infinite loop when unmarshaling certain forms of invalid JSON. This condition can occur when unmarshaling into a message which contains a `google.protobuf.Any` value, or when the `UnmarshalOptions.DiscardUnknown` option is set. +
      +
    • +
    + + +### 0.17.0 Release Notes + +#### Release date 05 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade Instructions. + +#### Release Highlights +This release added support for `GraphQLIntrospectionConfig` in API definition and fixed an issue where the Tyk Operator creates duplicate APIs on Tyk. + +For details please refer to the [changelog]({{< ref "#Changelog-v0.17.0">}}) below. + +#### Downloads +- [Docker image v0.17](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.17.0) + - ```bash + docker pull tykio/tyk-operator:v0.17.0 + ``` +- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.17.0) + +#### Changelog {#Changelog-v0.17.0} + +##### Fixed + +
      +
    • +
      +Fixed creating duplicated API definitions on Tyk + +Fix creating duplicated API definitions on Tyk in case of cluster failures. If network errors happen while updating the API definition, the Tyk Operator retries the reconciliation based on the underlying error type. +
      +
    • +
    + +##### Added + +
      +
    • +
      +Added support of GraphQLIntrospectionConfig in API definition CRD + +Added to ApiDefinition CRD: support of `GraphQLIntrospectionConfig` field at `graphql.introspection.disabled`. This feature will be enabled in future Tyk releases. +
      +
    • +
    + +## 0.16 Release Notes +### 0.16.0 Release Notes + +#### Release date 12 Jan 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade Instructions +While upgrading Tyk Operator release via Helm, please make sure that the latest CRDs are also applied on the cluster, as follows: +```bash +kubectl apply -f https://raw.githubusercontent.com/TykTechnologies/tyk-operator/v0.16.0/helm/crds/crds.yaml +``` + +#### Release Highlights +This release added support for analytics plugin, UDG global header, and detailed tracing setting in ApiDefinition as detailed in the [changelog]({{< ref "#Changelog-v0.16.0">}}) below. + +#### Downloads +- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-operator/v0.16.0/images/sha256-7c5b526af96ef772e8e53b8817538f41585c4ad641388609b349368219bb3d7d?context=explore) +- [Source code](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.16.0) + +#### Changelog {#Changelog-v0.16.0} + +##### Added + +
      +
    • +
      +Added imagePullSecrets configuration for ServiceAccount in Tyk Operator Helm chart + + Added [imagePullSecrets](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/) configuration for ServiceAccount in Tyk Operator Helm chart. It allows user to pull image from a private registry. +
      +
    • +
    + +
      +
    • +
      +Added tyk to categories field of CRDs + +Added tyk to categories field of CRDs. So, from now on, all CRs related to Tyk Operator is grouped into tyk category and can be displayed via kubectl get tyk. +
      +
    • +
    + +
      +
    • +
      +Added support of analytics plugin in ApiDefinition CRD + +Added to ApiDefinition CRD: support of analytics plugin at [spec.analytics_plugin](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-analytics_plugin). See [Example CRD with Analytics Plugin](https://github.com/TykTechnologies/tyk-operator/tree/master/config/samples/analytics_plugin.yaml) for details. +
      +
    • +
    + +
      +
    • +
      +Added support of UDG Global Header in ApiDefinition CRD + +Added to ApiDefinition CRD: support for UDG Global Header at [spec.graphql.engine.global_headers](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-graphql-engine-global_headers) object in ApiDefinition CRD. This feature is compatible with Tyk 5.2 or above. +
      +
    • +
    + +
      +
    • +
      +Added support of detail tracing in ApiDefinition CRD + +Added to ApiDefinition CRD: support for detail tracing configuration at [spec.detailed_tracing](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-detailed_tracing) field in ApiDefinition CRD. Enable it for the API if you want to get detail span for each middleware involved in request processing. +
      +
    • +
    + + +##### Updated + + +
      +
    • +
      +Updated Go version to 1.21 + +Updated Go version to 1.21 +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Fixed CVE-2023-39325 (NVD) + +Fixed [CVE-2023-39325 (NVD)](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) +
      +
    • +
    + +
      +
    • +
      +Fixed security policy handling in OSS mode + +Fixed a bug that prevents Tyk Operator to work with SecurityPolicy in OSS Mode. Now, SecurityPolicy controller will not modify spec.MID (_id) field in SecurityPolicy +
      +
    • +
    + + ## Further Information ### Upgrading Tyk diff --git a/tyk-docs/content/developer-support/tyk-release-summary/overview.md b/tyk-docs/content/developer-support/release-notes/overview.md similarity index 66% rename from tyk-docs/content/developer-support/tyk-release-summary/overview.md rename to tyk-docs/content/developer-support/release-notes/overview.md index ca0ba2c335..fccd844e13 100644 --- a/tyk-docs/content/developer-support/tyk-release-summary/overview.md +++ b/tyk-docs/content/developer-support/release-notes/overview.md @@ -6,8 +6,9 @@ landingPage: true layout: release-summary aliases: - /release-notes + - /developer-support/tyk-release-summary/overview --- View the release notes for both our licensed and open source components. The notes contain detailed insights about features, enhancements and bug fixes, and are a vital resource for developers evaluating upgrades. -Please consult our [LTS policy]({{< ref "developer-support/special-releases-and-features/long-term-support-releases" >}}) for information and guidelines relating to Long Term Support releases. +Please consult our [LTS policy]({{< ref "developer-support/release-notes/special-releases#long-term-support-releases" >}}) for information and guidelines relating to Long Term Support releases. diff --git a/tyk-docs/content/developer-support/release-notes/portal.md b/tyk-docs/content/developer-support/release-notes/portal.md new file mode 100644 index 0000000000..6a7c87220b --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/portal.md @@ -0,0 +1,1327 @@ +--- +title: Tyk Enterprise Developer Portal Release Notes +description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.12.0 +tags: ["Developer Portal", "Release notes", "changelog", "v1.12.0"] +menu: +main: +parent: "Release Notes" +weight: 7 +aliases: + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5 + - /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0 +--- + +**Licensed Protected Product** + +**This page contains all release notes for Enterprise Developer Portal displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 1.12 Release Notes +### 1.12.0 Release Notes + +#### Release Date 13 Nov 2024 + +#### Release Highlights +The v1.12.0 release includes the following new features and improvements: +- Embedded Tyk Identity Broker. From this release, you don't need to deploy a separate Tyk Identity Broker to SSO into the portal. +- Now admins can create Apps and Credentials for developers directly from the portal admin UI. +- Credentials notifications. Now admins can configure email notifications for credential expiration and credential expiration warnings. +- Stronger passwords. Now admins can configure the password policy from the portal admin UI. +- Security: 3 new high CVEs fixed. +- Bugfixes: 4 bugs fixed. + +For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v1.12.0) below. + +#### Breaking Changes +This release has no breaking changes. + + +#### Deprecations +There are no deprecations in this release. + + +#### Upgrade instructions +If you are on 1.11.0 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + +#### Download +- [Docker image v1.12.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.12.0) + - ```bash + docker pull tykio/portal:v1.12.0 + ``` +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.12.0) + +#### Changelog {#Changelog-v1.12.0} + + + +##### Added + + +
      +
    • +
      +Embedded Tyk Identity Broker + +From this release, you can configure the portal to serve an internal Tyk Identity Broker. This means that you don't need to deploy a separate Tyk Identity Broker service to SSO into the portal. +This enables a new section under the portal admin UI where admins can manage SSO profiles for admins and developers. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-embedded-tib.png" width=500px alt="SSO profiles">}} + +We support out of the box integration with the following SSO providers type: +- Open ID Connect: Support for OpenID Connect (OIDC) Identity Tokens provided by any standards compliant OIDC provider such as Auth0. +- LDAP: Bind users to an LDAP server such as Azure Active Directory, using their username and password. +- Social: The social provider should provide seamless integration with Google+ Github, Facebook, Salesforce, Digital Ocean and more. + +You can read more about the supported SSO providers [here]({{< ref "/tyk-identity-broker" >}}). + +
      +
    • +
    • +
      +Creation of Apps and Credentials + +Admins now have enhanced control over application and credential creation in the portal, streamlining the onboarding process and reducing the need for API-based setups. With this update, admins can create applications and assign them to specific users, making it easier to onboard developers who aren’t using self-service options. + +For custom authorization scenarios —like when using an external OAuth2.0 provider— admins can now issue credentials directly in the portal. These credentials are stored as key-value pairs that developers can view, providing a more seamless alternative to manual credential sharing. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-non-tyk-managed-credential.png" width=500px alt="Non-Tyk managed credential">}} + + +Admins can also generate auth token credentials, with added flexibility to define custom token values if needed for compatibility with other systems. Additionally, OAuth2.0 credentials can now be created within the portal, ensuring stable, secure access for developers with the added benefit of immutability after creation. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-custom-credential.png" width=500px alt="Custom credential">}} + +Overall, these improvements simplify the process for managing applications and credentials, offering a more streamlined experience for admins and developers alike. + +
      +
    • +
    • +
      +Password policy + +Admins can now configure the password policy from the portal admin UI. This includes setting the minimum password length, reused passwords, multi case, and more. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-password-policy.png" width=500px alt="Password policy">}} + +
      +
    • +
    • +
      +Credentials notifications + +Admins can now configure two types of notifications: +- Credential expiration: This notification is sent to developers when their credentials expire. You can modify the email template in the `keyexpired.tmpl` file included in the theme package. +- Credential expiration warnings: This notification is sent to developers when their credentials are about to expire. Admins can set the number of days before the expiration in the portal admin UI. You can modify the email template in the `keytoexpire.tmpl` file included in the theme package. + +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-credential-expiration.png" width=500px alt="Credentials notifications">}} + + +
      +
    • +
    + +##### Changed + + +
      +
    • +
      +Upgrade to Go 1.22 + +The Enterprise Developer Portal has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, +strengthened security, and access to the latest features available in the new Golang release. + +
      +
    • +
    + +##### Fixed + + +
      +
    • +
      +Fixed a bug where values of dropdown custom attributes weren't removed correctly + +Fixed a bug where values of dropdown custom attributes weren't removed correctly preventing admins from updating User custom attributes. + +
      +
    • +
    • +
      +Fixed a certificate upload issue in Kubernetes environments + +Fixed an issue that was causing certificate uploads to fail when the file size exceeded 2KB in Kubernetes environments. + +
      +
    • + + +
    • +
      +Fixed a bug that prevented to load OAS files from S3 storage + +We have addressed a bug that was causing the portal to fail loading OAS files from S3 storage. + +
      +
    • +
    • +
      +Fixed typos in email subjects + +We have fixed typos in email subjects that were causing notifications to be sent with incorrect information. + +
      +
    • +
    + +##### Security Fixes + + + +
      +
    • +
      +High priority CVEs fixed + +Fixed the following high priority CVEs identified in the Tyk Enterprise Developer Portal, providing increased protection against security +vulnerabilities: + +- [CVE-2024-34158](https://nvd.nist.gov/vuln/detail/CVE-2024-34158) +- [CVE-2024-34156](https://nvd.nist.gov/vuln/detail/CVE-2024-34156) +- [CVE-2022-30635](https://nvd.nist.gov/vuln/detail/CVE-2022-30635) + +
      +
    • +
    + + + + + + + +## 1.11 Release Notes +### 1.11.0 Release Notes + +#### Release Date 25 Sept 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn’t introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights +The v1.11.0 release includes the following new features and improvements: +- New Portal admin UI. +- Closer to API Parity: APIs for Tags, Blogposts, Product images, Webhooks, and rotate credentials. A total of 23 new endpoints. +- [22 bugs fixed](#fixed) +- [19 CVEs fixed](#fixed) +- CSRF protection, new TLS configuration and better recovery link security. + + +##### Performance Optimizations +To improve stability under high loads, we conducted performance testing and identified that improper database configurations can cause unexpected portal restarts. To prevent this and ensure optimal performance, we recommend the following database settings: + +**Recommended Configuration:** +- [PORTAL_DATABASE_MAX_OPEN_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_open_connections" >}}): Set this value based on your database’s maximum connection limit divided by the number of portal instances. For example, if your database allows 200 connections and you are running 4 portal instances, set PORTAL_DATABASE_MAX_OPEN_CONNECTIONS to 50 per instance. This ensures that all instances can share the available connections without exceeding the database's limit, which could otherwise lead to performance degradation or errors. +- [PORTAL_DATABASE_MAX_IDLE_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_idle_connections" >}}): Set to 15 or a lower value based on your expected load. This setting keeps a reasonable number of connections readily available without tying up resources unnecessarily. + +For reference, with 2 portal instances, `PORTAL_DATABASE_MAX_OPEN_CONNECTIONS` set to 30 and `PORTAL_DATABASE_MAX_IDLE_CONNECTIONS` set to 15, we could handle 90 active users. + +#### Upgrade instructions +If you are on 1.10.0 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + +#### Download +- [Docker image v1.11.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.11.0) + - ```bash + docker pull tykio/portal:v1.11.0 + ``` +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.11.0) + +#### Changelog + +##### Added +- New Portal admin UI. +- Added CRUD APIs for Tags. +- Added CRUD APIs for Webhooks. +- Added CRUD APIs for Product images. +- Added APIs to manage blog posts along with their tags and categories. +- Added a new API endpoint that allows the rotation of API credentials. +- UI and API for themes soft delete. Soft deleted themes are not shown in the UI and API, but are kept in the database for future reference. +- Added new TLS variables to set MinVersion ([portal_tls_min_version]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_min_version" >}}), MaxVersion ([PORTAL_TLSCONFIG_MAXVERSION]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_max_version" >}}), and CipherSuites ([PORTAL_TLS_CIPHER_SUITES]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_cipher_suites" >}}). +- Added a new configuration to manage the idle timeout of the portal's session ([PORTAL_SESSION_IDLE_TIMEOUT]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_session_idle_timeout" >}}). +- Added CSRF protection injection to portal's form. Now you don't need to add it manually to your templates. + +##### Changed +- Changed passwordrecovery links to be valid for 24 hours. +- Changed password recovery links to be unique and valid for one use only. +- Changed the default value of [PORTAL_DATABASE_CONNECTION_MAX_LIFETIME]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_connection_max_lifetime" >}}) to 1800000 milliseconds. +- Changed session token queries for better performance. +- Introduced new indexes for better performance. + +##### Fixed +- Fixed sensitive information leak on password recovery links. +- Fixed the wrong permission list for super admin in the external portal dashboard. +- Fixed deletion of related APIDetail records when a Product is deleted. +- Fixed a bug that caused the portal to panic when users sent a PUT request to the/API/pages/ endpoint without a template. +- Fixed a bug where markdown content wasn't adding IDs attribute automatically to sections. +- Fixed an issue where the OAS file was not attached to the API resource associated with an API product when multiple API resources were linked. +- Fixed SSO issues when SameSite Header is set to Strict. +- Fixed issues where certain files might not have been unpacked correctly due to conflicts or incorrect path resolution, particularly when themes with similar names were involved. +- Fixed an issue with how PostgreSQL connection strings, specifically the sslmode configuration, were being handled. Portal now fully conforms to PostgreSQL documentation and standards, ensuring that SSL certificates are correctly utilized without causing connection errors. +- Fixed a bug where sessions were expiring independently if users were active or not. +- Fixed distroless image bootstrapping issue. +- Fixed an issue where fetching a theme by its ID returned empty field values due to whitespace characters being stripped from the ID. +- Fixed deleting and rotating shared credentials within an organization. +- Fixed a rendering error while deleting credentials. Now, it shows an error page instead of a blank page. +- Fixed a bug where product content was truncated after 255 characters in MySQL and MariaDB. This update ensures that full-length product content is now stored and displayed without truncation. +- Fixed the portal API behavior to handle cases where the "Accept" header is absent. Previously, such requests resulted in a 500 Internal Server Error with no response body, causing the portal to panic. +- Fixed a duplicated 404 error page when there is a not found error. +- Fixed credential revocation error when OAuth2.0 provider is deleted. +- Fixed an issue where credentials weren’t deleted with OAuth2.0 provider removal. +- Fixed an issue where the graph only displayed the peak value of 100, even when the average error rate was below 100. +- Fixed several errors in the portal API specification. +- Fixed the 19 CVEs, among which are: + - CVE-2024-28834 + - CVE-2024-28835 + - CVE-2023-5678 + - CVE-2023-6129 + - CVE-2023-6237 + - CVE-2024-0727 + - CVE-2023-50387 + - CVE-2023-50868 + - CVE-2023-5678 + - CVE-2023-6129 + - CVE-2023-6237 + - CVE-2024-0727 + - CVE-2024-24792 + - CVE-2023-45288 + - CVE-2023-5678 + - CVE-2023-6129 + - CVE-2023-6237 + - CVE-2024-0727 + - CVE-2024-24792 + - CVE-2023-45288 + +## 1.10 Release Notes +### 1.10.0 Release Notes + +#### Release Date 27 Jun 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn’t introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights +The 1.10.0 addresses twenty high-priority bugs and vulnerabilities and introduces three new features: +- OAS APIs support. +- Theme cache. +- Configuration options for database connections. + +#### Upgrade instructions +If you are on 1.9.0 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + +#### Download +- [Docker image v1.10.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.10.0) + - ```bash + docker pull tykio/portal:v1.10.0 + ``` +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.10.0) + +#### Changelog +##### Added +- Added OAS APIs support. +- Added an assets cache for improved performance on database-backed themes. This speeds up the portal's pages loading time by 30%. It's enabled by default and you can disable using [PORTAL_ASSETS_CACHE_DISABLE]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_assets_cache_disable" >}}). +- Added three new configuration options to manage database connections lifecycle: [PORTAL_DATABASE_MAX_OPEN_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_open_connections" >}}), [PORTAL_DATABASE_MAX_IDLE_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_idle_connections" >}}), and [PORTAL_DATABASE_CONNECTION_MAX_LIFETIME]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_connection_max_lifetime" >}}). + +##### Fixed +- Fixed the bug where `PORTAL_SESSION_LIFETIME` was calculated in minutes instead of seconds. +- Fixed the bug where access requests were not removed when an application is deleted. +- Fixed the bug where stoplight library was blocking the portal's startup if it's not available. +- Fixed the bug where browsing into API Product throws an error when Baseline URL is provided in provider section. +- Fixed the bug where it was possible to create new access requests from the admin dashboard. +- Fixed the bug where the portal was not displaying the quota renewal rate when a custom renewal rate was set in a policy. +- Fixed the bug where the first user is always created under Organization 0 when the `/portal-api/users` endpoint is invoked for the first time. +- Fixed the bug where the portal `/ready` probe was not taking into consideration the bootstrap and tables automigration process. +- Fixed the bug where sometimes, the plan added to the cart was not updated after a product change. +- Fixed the bug where it was not possible to delete an application that was provisioned with an access request created through the API. +- Fixed the bug where users where not able to submit the cart from parallel submission (two different tabs or browsers). +- Fixed the bug where creating an app was not possible when there was no DCR scope specified for the Product but there was a scope specified for the Plan. +- Fixed the bug where the portal logout was not clearing browser user data and logging the user out completely. +- Fixed the bug where it was not possible to delete non authToken apps from the developer portal when approved products and plans are removed. +- Fixed the bug where it was not possible to download the theme without adding an extra `/` to the URL. +- Fixed the bug where carts submissions where emptying other users carts if they have the same content in it. +- Fixed the bug where it was not possible to delete an application after making an API call to update it and associate it to a different user. +- Fixed the bug where the portal was exposing technical details on error messages on the `Forgot password` page. +- Fixed the bug where sometimes, content blocks where not being displayed correctly on the portal admin page. +- Fixed the bug where stoplight was not rendered correctly in mobile devices. +- Fixed the bug where editing current developer password was causing a panic. + +## 1.9 Release Notes +### 1.9.0 Release Notes + +#### Release Date 27 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +In 2.0.0 release (the next after the next release) we will introduce the capability to create products and plans in the portal instead of creating policies for products and plans in the dashboard. + +To achieve that, we will need to change the plans and products architecture. The main change is that plans will include access rights to APIs and endpoint. + +As a result of this, 2.0.0 won't be backwards compatible with the previous versions. We will provide migration scripts and instructions before that release. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights +The 1.9.0 release addresses several security vulnerability and bugs and introduces two new capabilities: +- [Webhooks]({{< ref "product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks.md" >}}) for events that happen in the portal. +- [Admin APIs]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for OAuth2.0 configuration. + +#### Upgrade instructions +If you are on 1.8.5 or an older version we advise you to upgrade ASAP directly to this release. + +This release doesn't introduce any changes to the theme, so a theme upgrade is not required. + +#### Download +- [Docker image v1.9.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.9.0) + - ```bash + docker pull tykio/portal:v1.9.0 + ``` +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.5) + +#### Changelog +##### Added +- Added [the webhooks]({{< ref "product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks.md" >}}) capability that enable real-time, automated data updates between the portal and 3rd party applications. +- Added [admin APIs]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing OAuth2.0 configuration. + +##### Fixed +- Fixed the error where the admin APIs returned 500 instead of 422 when an incorrectly formatted json is passed in the request body. +- Fixed the error where missing DCR registration access token caused crash during DCR client revocation. +- Fixed the error where API-created Access Requests were always auto-approved. +- Fixed the following vulnerabilities related to Go 1.19 by upgrading Go version to 1.21: + - [CVE-2023-45287](https://scout.docker.com/vulnerabilities/id/CVE-2023-45287). + - [CVE-2023-39325](https://scout.docker.com/vulnerabilities/id/CVE-2023-39325). + - [CVE-2023-39319](https://scout.docker.com/vulnerabilities/id/CVE-2023-39319). + - [CVE-2023-39318](https://scout.docker.com/vulnerabilities/id/CVE-2023-39318). + - [CVE-2023-45284](https://scout.docker.com/vulnerabilities/id/CVE-2023-45284). + - [CVE-2023-48795](https://scout.docker.com/vulnerabilities/id/CVE-2023-48795). + - [CVE-2023-39326](https://scout.docker.com/vulnerabilities/id/CVE-2023-39326). + - [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094). + +## 1.8 Release Notes +### 1.8.5 Release Notes + +#### Release Date 5 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +Currently, there are no planned breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Release Highlights +The 1.8.5 release addresses [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094) vulnerability that was introduced in the 1.8.4 release. +If you are not on v1.8.4 then there's no urgency in updating. + +#### Upgrade instructions +If you are on 1.8.4 you should **upgrade ASAP** directly to this release. This release doesn't introduce any changes to the theme, so a theme upgrade is not required. + +If you are on 1.8.3 or older version please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) to upgrade the portal's themes. + +#### Download +- [Docker image v1.8.5](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.8.5) + - ```bash + docker pull tykio/portal:v1.8.5 + ``` +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.5) + +#### Changelog + +##### Fixed +- Fixed [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094) by replacing Debian base image. + +### 1.8.4 Release Notes + +#### Release Date 5 Mar 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + + +#### Release Highlights +The 1.8.4 release addresses ten high-priority bugs and vulnerabilities, and introduces multiple improvements to experience of admins in the portal's admin app. + +#### Download +- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.4/images/sha256-4dd01c11b79f46a06934b0b0ea8d3bbb63835bd31953eccd896481aa4d9cfe56?context=explore) +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.4) + +#### Changelog +##### Added +- Added [new configuration option]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for setting the `SameSite` attribute on the portal's cookie. +- Added [new welcome email for admin users]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) that is sent when new admin account is created. +- Added [new welcome email for developers]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) that is sent when new developer account is created. +- Added a fallback mechanism for referencing assets. This searches for assets, such as images, referenced in the rich text editor or markdown editor. It searches the container's filesystem whenever the portal can't find the referenced asset in the `PORTAL_STORAGE`. + +##### Changed +- Changed the title for the subject of the new developer registration request from "Registering email - subject" in the settings UI to "Developer Registration Approval Request - Subject" to better reflect the context in which this email is used. +- Adjusted the portal's behavior for saving pages through the admin API or the Pages UI. Now, if a content block referenced in a template is absent in the page using that template, the portal will ignore this issue instead of preventing the page from being saved. When rendering the respective page, any missing content blocks will be filled with empty strings. +- Changed title for the portal's private pages for better SEO performance: + +| URL | Page title | +|------------------------------|------------------------| +| /portal/private/analytics | Analytics | +| /portal/private/dashboard | Dashboard | +| /portal/private/apps/ | Create an application | +| /portal/private/apps/:id | Applications | +| /portal/private/users | Users | +| /portal/private/organisation | Create an organization | +| /portal/private/users/invite | Invite a user | +| /portal/private/users | Users | +| /portal/private/users/:id | Users | +| /portal/private/profile | Profile | +| /auth/password/login | Developer portal login | +| /auth/password/new | Password reset | +- Changed the credential provisioning flow to automatically include DeveloperID, OrganizationID, ApplicationID, and TeamIDs in [the credential metadata]({{< ref "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model#default-attributes" >}}). +- Added warning regarding potential PII exposure to the [custom attributes menu]({{< ref "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model#default-attributes" >}}). +- Changed the behavior of the portal for 404 errors. Now whenever a user requests non-existing page both private (e.i. requiring sign-in to access) or public, the portal now always renders the `not_found.tmpl` template. +- Changed the behavior of the `Secure` cookie attribute that is set by [PORTAL_SESSION_SECURE]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_session_secure" >}}) so that the `Secure` attribute is always add to the `Set-Cookie` header whenever `PORTAL_SESSION_SECURE` is set to `true` or when TLS is enabled. +- Changed the behavior of removing a developer profile within the developers UI in the admin app. Now, when an admin tries to remove a developer profile and some of their credentials have been removed from the credentials provider, or if the provider itself is down or unreachable, the portal asks the admin if they still want to remove the developer profile by displaying a modal window. +- Extended the `DELETE /users/:id` API endpoint by adding the [?force]({{< ref "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) query parameter to force removal of a user even if some of their credentials have been removed from the credentials provider, or if the provider itself is down or unreachable. +- Extended the `GET /pages/:id/content-blocks/:id:` API endpoint by adding additional fields in the response body: `Content`, `MarkdownContent`, `MarkdownEnabled`, `Name`, and `PageID`. +- Extended [filesize limit]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/file-structure-concepts#part-1-create-a-new-theme" >}}) for individual files in themes to 5 MB. +- Made the organization invite email's subject configurable via [the emails settings section]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/email-customization#list-of-email-notifications" >}}). + +##### Fixed +- Fixed the bug where it was impossible to create an ordered list in the rich text editor in the admin app due to CSS issues. +- Fixed the bug where it was possible to copy the 'portal-session' cookie and use it with different IP address or browser. +- Fixed the bug where the audit log didn't reflect some actions initiated by admin users and developers. +- Fixed the bug where sensitive data such as hashed API tokens and passwords were exposed in the audit log. +- Fixed the bug where menu items were still persistent after deletion. +- Fixed the bug where admin users couldn't edit custom attributes created after a user profile is created. +- Fixed the bug where the UI errors when uploading theme were not consistent with the API error messages. +- Fixed the bug where scroll appeared in the API description box in the API Product page when the API description was longer than 50 symbols. + +### 1.8.3 Release Notes + +#### Release Date 22 Jan 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + + +#### Release Highlights +The 1.8.3 release addresses ten high-priority bugs and introduces new admin APIs for managing tags and OAuth2.0 client types attached to API Products. + +#### Download +- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.3/images/sha256-3693065546348105a693a1ed5402c93bfecd480c900e1efea4a6dea674263df3?context=explore) +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.3) + +#### Changelog +##### Added +- Added [new admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing tags attached to API Products. +- Added [new admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing OAuth2.0 client types attached to API Products. + +##### Fixed +- Fixed the bug where the search bar in the My Apps section of the Developer dashboard didn't search for an application. +- Fixed the bug where it was possible to update read-only details of an API Product via an API call. +- Fixed the bug where deleting an access request credentials also deleted the access request. +- Fixed the bug where the button to save a link when editing a hyperlink in the admin UI in the text editor wasn't displayed. +- Fixed the bug where the Exports function didn't export analytics to a CSV file under the Error rate(average) tab in the developer Dashboard. +- Fixed the bug where the portal did not accept themes with names containing dots and displayed a not found error when uploading a theme with a dot in its name. +- Fixed the bug in a multi-pod deployment where, when a theme is uploaded, only the pod that uploaded it updates its theme list, while the other pods remain unaware of the new theme. +- Fixed the bug where the Portal allowed pages to be created with duplicate content block names. Subsequently, only the last content block with the duplicate name was displayed. +- Fixed the bug where the portal's page renderer ignored content-blocks under the `if` statement with references to multiple content-blocks (e.g. `{{ if and .blocks.Block1.Content .blocks.Block2.Content .blocks.Block3.Content }}`). Subsequently, content that depended on these conditional blocks would not be rendered. +- Fixed the bug where the product auth type is removed after a product is updated. + +### 1.8.2 Release Notes + +#### Release Date 22 Dec 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + + +#### Release Highlights +The 1.8.2 release addresses multiple high-priority bugs: +- Fixed the bug where an API Consumer could add incompatible products to a cart making its state inconsistent. +- Fixed the bug where it was possible to use the same session cookie from different IP addresses making the portal vulnerable to the [Cross-Site Request Forgery (CSRF) attack](https://en.wikipedia.org/wiki/Cross-site_request_forgery). +- Fixed the bug where an admin user couldn't create a new team in Kubernetes environment. +- Fixed the bug where the navigation in the API documentation was broken when Redoc is selected as a documentation rendering engine. +- Fixed the bug where an API Consumer could bypass the access request rate limit by creating additional applications. +- Fixed the bug where the page rendering fails if the page refers to a template that has no template/layout pair definition in the theme manifest. +- Fixed the bug where creating new content blocks in non-default themes led to duplication of those content blocks in the admin UI. +- Fixed the bug where `.Markdown` content blocks where not shown. + +#### Download +- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.2/images/sha256-944b6fd5bead39b77cbfa50706098d52ce4c003b483b1f5e20456c65ede40fb2?context=explore) +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.2) + +#### Changelog + +##### Fixed +- Fixed the bug where an API Consumer could add incompatible products to a cart making its state inconsistent. +- Fixed the bug where it was possible to use the same session cookie from different IP addresses making the portal vulnerable to the [Cross-Site Request Forgery (CSRF) attack](https://en.wikipedia.org/wiki/Cross-site_request_forgery). +- Fixed the bug where an admin user couldn't create a new team in Kubernetes environment. +- Fixed the bug where the navigation in the API documentation was broken when Redoc is selected as a documentation rendering engine. +- Fixed the bug where an API Consumer could bypass the access request rate limit by creating additional applications. +- Fixed the bug where the page rendering fails if the page refers to a template that has no template/layout pair definition in the theme manifest. +- Fixed the bug where creating new content blocks in non-default themes led to duplication of those content blocks in the admin UI. +- Fixed the bug where `.Markdown` content blocks where not shown. + +### 1.8.1 Release Notes + +#### Release Date 5 Dec 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on 1.8.0 or an older version we advise you to upgrade ASAP directly to this release. +Unlike 1.8.0, 1.8.1 fixes the broken backward compatability for the default visual theme. Therefore, the upgrade path from earlier versions are straightforward. It is enough to just pull the latest version of the portal's container. + +To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. + + +#### Release Highlights +The 1.8.1 release addresses multiple high-priority bugs: +- Restored backward compatibility for the default visual theme which was broken in the previous release. +- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. +- Fixed the bug where the collapsible components in the admin application of the portal didn't open. +- Fixed the bug where the client type wasn't a required field when creating OAuth2.0 clients via the DCR flow. +- Fixed the bug where CPU usage unexpectedly increased in Kubernetes without external traffic. +- Fixed the bug where admin users were not able to approve access requests in Kubernetes environment. +- Fixed the bug where the usage analytics didn't show in the Developer Dashboard. +- Upgraded the version of Stoplight to the latest available version in the default theme. + +#### Download +- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.1/images/sha256-3b7ef4572cad8f6f5cddfa921514a07b43ba46bacf5eb89b735c45863863f13f?context=explore) +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.1) + +#### Changelog + +##### Added +- Add a [config option]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_enable_http_profiler" >}}) to expose the Golang profiling information which allows for debugging issues related to resource consumption. + +##### Changed +- Upgraded the version of Stoplight to the latest available version in the default theme. + +##### Fixed +- Restored backward compatibility for the default visual theme which was broken in the previous release. +- Fixed the bug where CPU usage unexpectedly increased in Kubernetes without external traffic. +- Fixed the bug where admin users were not able to approve access requests in Kubernetes environment. +- Fixed the bug where the usage analytics didn't show in the Developer Dashboard. +- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. +- Fixed the bug where the collapsible components in the admin application of the portal didn't open. +- Fixed the bug where the client type wasn't a required field when creating OAuth2.0 clients via the DCR flow. + +### 1.8.0 Release Notes + +#### Release Date 24 Nov 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on 1.7.0 or an older version we advise you to upgrade ASAP directly to this release. +When upgrading from 1.6.0 or earlier versions, customers may experience problems when starting the portal. One of the possible issues is the following: +- When the portal theme [manifest]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/file-structure-concepts#manifest-file" >}}) has a reference to a template that is not present in the theme then the theme won't be loaded. This check that prevents admin users from uploading themes with potential errors was introduced in version [1.7.0]({{< ref "#content-blocks-validation" >}}). +- At the same time, the default theme in version 1.6.0 of the portal had a reference in the theme manifest to the `portal_home` template that didn't exist in the theme. +- The portal doesn't update the theme automatically because in that case any customer-made changes will be lost. Subsequently, upgrading from 1.6.0 to 1.8.0 may result in the following error when loading the theme: +```yaml +{"level":"info","time":"2023-11-23T12:25:35.646Z","caller":"application/themes.go:121","message":"Failed to initialize theme '/themes/default': loading theme templates code references: getting template portal_home: portal_home.tmpl not found"} +{"level":"info","time":"2023-11-23T12:25:35.646Z","caller":"application/themes.go:135","message":"0 themes loaded."} +panic: theme 'default' not found +``` +- Moreover, when there was a single theme in the portal, it wouldn't start because it didn't recognize the theme as valid. + +To overcome the issue, please follow our upgrade instructions for your storage type as outlined in the sections below. + +The following instructions explain the easiest way to upgrade the default theme when upgrading from 1.6.0 to 1.8.0. + +In order to upgrade the theme, you will need to remove the existing default theme and let the portal unpack the current default theme that is compatible with v1.8.0 release. Therefore, the update is performed in four steps: +1. (Optionally) Save a copy of the current default theme if there are any changes to it that you want to save. +2. Remove the existing default theme that prevents the portal from starting. +3. Start the portal so that it will unpack the compatible theme. +4. (Optionally) Apply changes from the saved theme. + +In later releases, we will publish the theme within a public git repository. This way you can apply git-flow when upgrading the theme. + +{{< note >}} +**Note** + +If your current active theme is not the default theme, downgrade to v1.6.0 and activate the default theme first before implementing the below steps. +{{< /note >}} + +###### Upgrade default theme within filesystem storage type +To upgrade the default theme that is stored in a filesystem (fileSystem mounted by localhost or PVC or csi-driver) you will need a shell to access that specific file system. Execute the following steps to upgrade the theme: +1. **Navigate to the theme directory**. Locate the theming directory used for the portal application defined by `Theming.Path` in the portal config file or `PORTAL_THEMING_PATH` environment variable. By default, the theming path is `./themes`. So, it will be placed in the `themes` directory relative to wherever the portal app is run from. +2. *(Optional)* Save a copy of the current default theme if there are changes that you want to keep. +3. **Remove the default theme**. To remove the existing version of the default theme from a filesystem, navigate to the theme directory and remove the default theme: +```shell +rm -rf ./default +``` +4. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again, and it will start with the upgraded default theme. +5. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 2. + +###### Upgrade default theme within S3 storage type +To upgrade the default theme that is stored in an S3 bucket you will access to the S3 console with read-write rights. Execute the following steps to upgrade the theme: + +1. **Navigate to the S3 bucket that is used to store themes**. This bucket is defined by `S3.Bucket` in the portal config file or `PORTAL_S3_BUCKET` environment variable. The default theme should be present in the theming directory that is defined by `Theming.Path` in the portal config or `PORTAL_THEMING_PATH` environment variable. By default, the theming path is set to `/themes`. +2. *(Optional)* Save a copy of the current default theme if there are changes that you want to keep. +3. **Remove the default theme** by deleting the default directory from the theming directory. +4. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again and it will start with the upgraded default theme. +5. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 2. + +###### Upgrade default theme within DB storage type +To upgrade the default theme that is stored in a database bucket (the `db` storage type) you should be able to run SQL commands on the database that the portal is using. Execute the following steps to upgrade the theme: +1. *(Optional)* If you need to save changes to the existing default theme, downgrade to 1.6.0, start the portal and download the theme either via the UI or the admin APIs. +2. **Remove the default theme**. The portal stores its themes in the `Assets` table. Run the following SQL command to remove the default theme from the database: +```sql +delete from assets where path like "%/default%"; +``` +Before executing the command be sure to replace the `` with the path defined by `Theming.Path` in the portal config or `PORTAL_THEMING_PATH` environment variable. By default, it is `/themes`, so if you have not explicitly changed this, your command should be as follows: +```sql +delete from assets where path like "%/themes/default%"; +``` +3. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again and it will start with the upgraded default theme. +4. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 1. + +{{< note >}} +**Note** + +For PVC, if you are stuck with a crashing issue on a newer portal release (version > v1.7.0) running in k8s with PVC storage that contains an older theme (from version < v1.7.0), roll back to v1.6.0 or start a temporary pod with the same PVC mounted to it. Then delete all the existing themes as stated above and deploy the new release. +{{< /note >}} + + +#### Release Highlights +##### Custom attributes for the User model and the sign-up form customization +We added the capability to add additional data fields to the User model and set their behavior. This way API Providers can: +Extend the User model with additional fields of one of four types: + - String + - Number + - List of strings + - Boolean +- Configure the behavior of these fields: + - Add the new data fields to the user sign-up form + - Force the portal to add the fields to the key metadata to make them available to custom plugins during API calls + - Make the fields required or optional and lock them once a user profile is created +- Set visibility and access rights for the custom data fields: + - Determine if developers can view the fields or are they restricted to only admin users? + - Can developers edit the fields? + +All settings are available via the [admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api.md" >}}) and the UI. + +To create a custom attribute, define it in the custom attributes menu: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-create-custom-attribute.png" width=500px alt="Create a custom attribute for the User model">}} + +This is how it looks like in the user sign-up form: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-sign-up-form.png" width=500px alt="The user sign-up form with the custom attribute">}} + +##### CORS settings +In this release, we introduced the config options to set up CORS settings such as: +- Allowed origins +- Allowed headers +- Allowed methods +- Are credentials (cookie or client-side certificates) allowed? +- max-age of the preflight request cache + +These settings are useful when the portal sits behind a proxy or a CDN and the portal admin needs to configure the CORS settings on the portal side so that the incoming call from a third-party origin (e.g. a CDN or a proxy) are not rejected by the browser. +To set the CORS configuration please refer to the Portal's [configuration documentation]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#cors-settings" >}}). + +##### Connection testing to OAuth2.0 Identity providers +We enhanced our OAuth2.0 support by adding the capability to test connections to OAuth2.0 Identity providers (IdPs) when setting up OAuth2.0 with the Tyk Enterprise Developer Portal. +This way, you can make sure the Portal has connectivity with the IdP before saving the OAuth2.0 settings and creating the first OAuth2.0 client. + +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-test-idp-connectivity.png" width=500px alt="Test connectivity to an IdP">}} + +##### Verbose logs for the DCR flow +In addition to the new connection testing functionality, we added one more tool to help customers resolve complex integration issues when integrating with OAuth2.0 providers. +Now when the [PORTAL_DCR_LOG_ENABLED]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_dcr_log_enabled" >}}) environment variable is set to `true`, the portal will output not only the status and status code of the request to the IdP, but also actual payload returned by the IdP: +```yaml +{"level":"error","time":"2023-10-10T17:02:27.484+0200","caller":"client/dcr-helpers.go:152","message":"IdPResponse: {\"error\":\"insufficient_scope\",\"error_description\":\"Policy 'Allowed Client Scopes' rejected request to client-registration service. Details: Not permitted to use specified clientScope\"} +``` + +#### Download +- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.0/images/sha256-d93fcfbbcc4a72d3f6abf49ce65f234e6e65915a43cca3a30d5376e5fab2d644?context=explore) +- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.0) + +#### Changelog + +##### Added +- Added the custom attributes to the User model so that the portal admins can extend the data stored in the user profile and customize the user sign-up form. +- Added the capability to test the connection to OAuth2.0 Identity providers menu to help the portal admin troubleshoot connectivity issues when configuring OAuth2.0 with the portal. +- Added the config options for configuring the CORS settings. + +##### Changed +- Display an actual item title instead of a generic iterative name in the Pages and the Providers UI (e.g. "HeaderButtonLabel" instead of "ContentBlock 1" in the Pages menu). +- When [PORTAL_DCR_LOG_ENABLED]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_dcr_log_enabled" >}}) is enabled the portal now returns not only the status and status code of the request to the IdP but also actual payload returned by the IdP + +##### Fixed +- Fixed the bug where the database credentials were printed in the logs when bootstrapping the portal. +- Fixed the bug where the session cookie was disclosing the username and role. +- Fixed the bug where the [Forgot Password page]({{< ref "tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password.md#introduction" >}}) did not reflect the current theme. +- Fixed the bug where the DCR flow failed to create a client with policies managed by Tyk Operator. +- Fixed the bug where an admin user couldn't upload a new theme file in Kubernetes environment. +- Fixed the bug where the portal application went down after running for several hours in Kubernetes environment. +- Fixed the bug where it was possible to remove the default organization which resulted in the portal being non-operational. +- Fixed the bug where the portal panicked when an IdP was not available while creating a new OAuth2.0 client. +- Fixed the bug where a developer could access API Products regardless of the access rights set by catalogs. +- Fixed the bug where it wasn't possible to change a team for a user. +- Fixed the bug where the error wasn't displayed to an admin user when the theme validation failed while uploading a theme package. +- Fixed the bug where the rich text editor added extra `

    ` tags to the text. +- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. +- Fixed the bug where it wasn't possible to remove an API from an API Product. + + +## 1.7 Release Notes +### 1.7.0 Release Notes + +#### Release Date 6 Oct 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.6.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +##### Content blocks validation +We added validation to the content pages. Now when an admin user tries to delete a content block that is necessary to render the page, the portal won’t let them to save the page. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.7.0-content-block-validation.png" width=500px alt="Content-block validation">}} + +##### Audit log capability +We added capability to enable audit log for any action that changes state of the portal or queries data from the portal. When the audit log is enabled, every action of admin users or developers performed via the UI or an API (only for admin users) will be noted in the audit log. +To enable the audit log, just specify path to the audit log file and enable it. + +To configure the audit log with environment variables, use PORTAL_AUDIT_LOG_ENABLE to enable the audit log and PORTAL_AUDIT_LOG_PATH to specify path to the audit log file: +```shell +PORTAL_AUDIT_LOG_ENABLE=true +PORTAL_AUDIT_LOG_PATH=./audit.log +``` + +To configure the audit log with the config file, use AuditLog.Enable to enable the audit log and AuditLog.Path to specify path to the audit log file: +```json + "AuditLog": { + "Enable": true, + "Path": "./audit" + } +``` + +When specifying path ot the audit file make sure it's mapped to a file on the host machine. + +##### Capability to limit frequency of access requests +Now admin users can specify how often developers can request access to a specific plan. This way the admins can prevent developers from creating too many keys and abusing their free plan. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.7.0-rate-limit-for-access-requests.png" width=500px alt="Access requests frequency limit">}} + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.7.0/images/sha256-1204c9f2d53ac8cbf7230f7c73bd2edb117b33ec11547d595c58264301c9172b?context=explore) + +#### Changelog + +##### Added +- Added content blocks validation for content pages to avoid changes to content pages that result in page render errors. +- Added the audit log capability to track any action that changes state of the portal or queries data from the portal. +- Added the capability to limit frequency of access requests to block any abuse of free plans. + +##### Changed +- Disable autocomplete for passwords in the default theme to prevent the access credentials from being stored on the local computer. The stored credentials can be captured by an attacker who gains control over the user's computer. + +##### Fixed +- Fixed the bug where developers could get access to applications of other developers if they know the app ID. +- Fixed the bug where developers and apps of an organization were not deleted when the organization was deleted. +- Fixed the bug where it was possible to remove the default organization with resulted in the portal being non-operational. + +## 1.6 Release Notes +### 1.6.0 Release Notes + +#### Release Date 5 Sep 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.5.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +##### OAuth2.0 flow now supports multiple identity providers +Now the Tyk Enterprise Developer portal can use multiple identity providers (IdPs) for OAuth2.0 via the Dynamic Client Registration flow. If your company has multiple OAuth2.0 providers now you can utilize them all for OAuth2.0 authentication. For instance, if your company uses different IdPs for different products (e.g. one for the U.S. and another for the EU) you can now achieve that with Tyk. + +Just create multiple IdPs in the App registration menu: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-multiple-idps-index.png" width=500px alt="OAuth2.0 providers page">}} + +And then use them to enable OAuth2.0 authentication for API Products: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-multiple-idps-edit.png" width=500px alt="OAuth2.0 provider overview">}} + +##### New Admin API for all content-blocks +You can download all CMS content with just one API call with the brand new API endpoint *GET* */pages/all/content-blocks* that returns all content blocks for all pages. Now migration between environments and deployment is much easier. + +##### Support for Mutual TLS +For customers who need extra security for their APIs such financial institutions and payment providers we introduced an ability for the portal to surface Mutual TLS APIs. Now you can configure API Key and OAuth2.0 API to support Mutual TLS. Just create an API that supports multiple authentication mechanisms in the Dashboard and publish it to the portal: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-dashboard.png" width=500px alt="Mutual TLS auth API in the Tyk Dashboard">}} + +Now your developers can discover and request access to them in the portal: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-published.png" width=500px alt="Mutual TLS auth API Product is published in the portal">}} + +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-checkout.png" width=500px alt="Mutual TLS auth API Product in the checkout flow">}} + +##### Display-only support for API Products with custom authentication +This new capability allows you to display on the portal the APIs that use your own custom authentication mechanisms. We appreciate that many customer use their own auth mechanisms and even though at the moment we cannot create credentials for custom authentication schemas, we still want to support customers using these. + +To display API Products that support custom authentication, you need simply to create an API Product that include APIs with custom authentication and synchronize it to the portal: +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-display-custom-auth-apis.png" width=500px alt="Custom auth API Product is published in the portal">}} + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.6.0/images/sha256-5a7ada35df1817f9b44c5f725c77cd8548a4e094505ba0f0d4ed611f85edad7f?context=explore) + +#### Changelog + +##### Added +- Added support for multiple IdPs of the OAuth2.0 flow. If a customer has multiple OAuth2.0 providers now they can utilize them all for OAuth2.0 authentication with Tyk. +- Added new admins APIs for querying all content-blocks to improve data migration capabilities of the portal. +- Added support for API Products that use Mutual TLS. Now API Providers can surface their API Products that use Mutual TLS authentication on the portal and developer can request access to them. +- Added display-only support for API Products with custom authentication. This allows API Providers to expose on the portal their APIs that use custom authentication for documentation purposes. + +##### Changed +- Simplified the connection settings to the portal assets storage (where all images, themes, and other CMS files are stored) to help our customers get up to speed quicker. We are well aware that installing and configuring on-premise software can be tricky, especially when it comes to infrastructure, storage and databases. Hence, we have decided to ease this burden for you: + - By default, the portal uses the `db` [storage type]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_storage" >}}) for storing its themes and other CMS assets and it doesn’t require any additional configuration. This means, you can start the portal right away without specifying any additional setting for the assets storage. + - We also simplified setting up S3 storage: now you need only to configure connection settings to the bucket and the portal will handle the rest. + + +##### Fixed +- In 1.6.0 multiple important security bugs are fixed: + - Added the ability to disable the theme upload capability. Since we don’t validate the theme content it might have viruses and other malicious software. So, to provide super secure environments, we added a setting to disable the theme upload via the UI and API: + {{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-theme-upload-is-disabled.png" width=500px alt="Mutual TLS auth API Product in the checkout flow">}} + - Fixed the bug where the session is not invalidated after a user logs out. + - Fixed the role permission issue where a provider-admin can deactivate and delete a super-admin. + - Fixed the Users API resource which allowed any value to be entered into the Provider and Role fields. +- In addition to the security fixes, several bugs related to the theme management are fixed: + - The list of available templates is now automatically updated when a new theme is loaded. + - Fixed the bug where theme unpacking required unnecessary write permission to the */tmp* folder. + - Fixed icon alignment in the UI on the main page of the default theme. + +## 1.5 Release Notes +### 1.5.0 Release Notes + +#### Release Date 17 Jul 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.4.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +##### Improved API Providers page +Now the API Provider page has the Status and Last synced columns that help to digest the current status of an API Provider (Up, Down, or Unknown) and the last time it was synchronized. Now it’s much easier to digest the current status of API Providers connected to the portal. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.5.0-provider-page.png" alt="Improved provider page">}} + +##### Add the SSL insecure skip verify flag for API Providers +With this new option, Tyk Enterprise Developer portal can be configured to use untrusted certificates when connecting the Tyk Dashboard which helps run local PoCs, quickly and easily. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.5.0-skip-ssl-verify.png" alt="SSL skip verify">}} + +##### New admin APIs +In 1.5.0 we introduced the following APIs: +- CRUD API for Get started guides. +- CRUD API for OpenAPI Spec for APIs included in API products. +- CRUD API for API Providers. + +##### Better OAuth2.0 flow without the scope to policy mapping +{{< note >}} +This feature requires a patch to the gateway. In the 1.3.0 version of the portal, it's disabled. Once the 5.2 version of the gateway is released, we can confirm that the feature is fully functional. Stay tuned for updates! +{{< /note >}} +The improved OAuth2.0 allows API Providers to configure OAuth2.0 with scope to policy mapping and default No-Operation policies reducing the number of steps configure OAuth2.0 product in the Dashboard in the IdP by 17 steps from 19 to just 2 actions. + +It also allows adding access to API Products to existing credentials. This way, if an API Consumer wants to add a new API Product to an existing credential, they can simply do it without the need to recreate them from scratch. + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.5.0/images/sha256-169ba9584bc31add666cebb1b9231a47f5d9f78ccb086adf7d0ff8810c611a67?context=explore) + +#### Changelog +##### Added +- Added the Status and Last synced columns to the API Provider page to make easier to digest status of each API Provider. +- Added the Skip SSL Verify flag for the API Providers. It's now possible to use self-signed certificates for PoCs. +- Added new admin APIs for the Get started guides, Open API Specifications and API Providers to enable migration of configurations between different environments of the portal. +- Added improved OAuth2.0 flow without the scope to policy mapping which makes it much easier to configure OAuth2.0 with Tyk. +- Enable API Providers to set security response headers in the portal config to make API Providers flexible in configuring their UI security settings. + +##### Fixed +- In 1.5.0 multiple important security bugs are fixed: + - Add secure and httpOnly flags to enhance the security of session cookies. + - Fixed the bug with the role permission issue when a provider-admin can deactivate and delete a super-admin. + - Fixed the bug with the Users API resource where it was possible to enter any value in the Provider and Role fields. +- In addition to the security fixes, several bugs related to the theme management are fixed: + - The list of available templates is now automatically updated when a new theme is loaded. + - The issue encountered with theme unpacking requiring write permission to the /tmp folder is now resolved. Write permission is no longer required. + - Fixed the icon issue alignment on the main page of the default theme. + +## 1.4 Release Notes +### 1.4.0 Release Notes + +#### Release Date 2 June 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.3.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +##### SQL support for the portal’s assets +Until recently, SQL storage was not supported for the portal’s assets: OAS files, themes, images, etc. Therefore, customers had to use at least two types of storage: +- SQL for the portal’s metadata (users, products, access requests, etc). +- Filesystem or S3 for assets (pictures, themes, etc). + +This is especially inconvenient in Kubernetes environment when customers had to use persistent volumes. +With this new feature, customers can simply use the same SQL database (MySQL, MariaDB and PostgreSQL) for both assets and metadata. To use the `db` [storage type]({{< ref "/content/product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_storage" >}}) just set the `PORTAL_STORAGE=db` for environment variables or `"Storage": "db"` in a config file and you are good to go! + +##### Response status code added to API analytics filters +API Consumers now can filter API analytics by response status codes. This allows them to analyze traffic and error rate for specific response code for their API Products. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.4.0-response-code-filters.png" width="500px" alt="API Analytics UI - Response code filters">}} + +##### Displaying Basic Auth APIs +We introduced display-only support for basic APIs. That means API Providers can publish documentation for the basic auth APIs. However, developers cannot use the portal to get access to the basic auth APIs. + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.4.0/images/sha256-11af93300ae91962e9af84ecec0e78b6cf5972521f0655273b48a7e551df3c84?context=explore) + +#### Changelog +##### Added +- Added SQL support for the portal's assets to simplify the storage configuration. Now our customers can store all data in one database. +- Added response status code filters in the API analytics for developers to enhance self-service capabilities for developers. +- Added displaying Basic Auth APIs so that API Providers can expose on the portal their APIs that use basic auth for documentation purposes. +- Added input validation for organization name to prevent organization with empty names from being created. + +##### Fixed +- Fixed typo in the name of the demo user. +- Rewritten labels for Auth token credentials to remove customers' confusion with opaque names of fields. + +#### Security Fixes +- [ZipSlip vulnerability](https://nvd.nist.gov/vuln/detail/CVE-2023-27475) in the theme upload flow is now resolved. +- Added input validation for preventing XSS attacks for catalogs and organizations in the admin app. + +## 1.3 Release Notes +### 1.3.0 Release Notes + +#### Release Date 17 Apr 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.2.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +##### API Analytics UI for developers +We added the new **API Analytics UI** which extends self-service capabilities for developers. This provides developers with an ability to analyze performance of the APIs which they consume, in addition to traffic composition for their apps. +The **API Analytics UI** has four tabs that help developers to navigate different analytical views: +- **The overview tab** provides an overarching view on the API Products consumed by a developer. This tab has all information needed to quickly digest the current state of API Products, including: total traffic, number of errors, error breakdown by response code and top APIs by error code. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-overview.png" width="500px" alt="API Analytics UI - Overview tab">}} +- **The Total API Calls** tab enables developers to analyze traffic from their application to the APIs they consume and how it’s changing over time. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-total-calls.png" width="500px" alt="API Analytics UI - Total API Calls tab">}} +- **The Errors** tab provides developers with information relating to total errors and error rates. Here developers can identify any issues with the APIs which they consume without filling any support tickets. Developers can switch between the total number of error and error rates. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-errors.png" width="500px" alt="API Analytics UI - Errors tab">}} +- **The Latency tab** helps developers to analyze response time of the APIs they consume so that they can factor for it in their applications. +{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-latency.png" width="500px" alt="API Analytics UI - Latency tab">}} + +##### Theme management API +The theme management API enables SDLC for the theme management in the portal. Admin users can leverage this API to programmatically: +- Create new themes. +- Update existing themes. +- Select the currently active theme. + +##### Enhanced error logging for DCR and SSO flows +We introduced more verbose error logging for the DCR flow and for Single Sign-On to help customers set up the SSO and DCR faster. This is especially important for complex environments with highly customized or non-standard IdPs. + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.3.0/images/sha256-87bc071b93e2fa4970e5ec512a4b0601f139ac9cbb73baf35662d4b5f3a0f290?context=explore) + +#### Changelog +##### Added +- Added API Consumer Analytics to digest summary analytics for developers' applications so that developers can analyze performance of the APIs which they consume. +- Added enhanced error logging in all places where the DCR flow is used. A log structure is now provided, including the status code from an IdP to help API Providers to debug DCR integrations. +- Added enhanced error logging to the SSO flow to facilitate setting up SSO. +- Added the Theme management API to enable API Providers to update themes using CI/CD pipelines. + +##### Fixed +- Fixed grammar in the Provider menu UI. +- Fixed broken link to the Access requests menu item in the portal admin dashboard. +- Fixes to the shopping cart flow were made as follows: + - Fixed the bug where the 'Add to cart' button in the API Product page were not clickable; + - Added form validation in the checkout flow. +- Fixed the API Product page to show only catalogs available to a developer. + +## 1.2 Release Notes +### 1.2.0 Release Notes + +#### Release Date 21 Mar 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are on a 1.1.0 or an older version we advise you to upgrade ASAP directly to this release. + +#### Release Highlights +This release is primarily focused on improved deployment support for Kubernetes and a variety of features to achieve better developer experience. + +##### Full Kubernetes support +The Tyk Enterprise Developer Portal is now available in Kubernetes and customer can launch it using our [helm charts]({{}}). This feature makes the portal Kubernetes friendly by adding liveness, readiness probes, graceful shutdown and changing the portal lifecycle so that it’s possible to set an initial user and bootstrap the portal via APIs. + +##### SSO for API Consumers and admins +API Providers can [configure Single Sign-on]({{}}) for the Enterprise developer portal so that it’s possible to login developers and admins to the portal user 3rd party IdP. + +##### API Analytics for API Consumers +This capability enables API Providers to get aggregated statistics about consumption of their APIs using Tyk Pump. In 1.2.0, we enabled the portal to attach the following tags to API Keys and oAuth clients: +- Application (app-XXX, where XXX is the app ID); +- Organization (org-XXX, where XXX is the org ID). + +##### Admin API for API Products +This feature provides an API to make it easier for admin users to manage their API Products: +- List available API Products. +- Change the content and description. +- Add link to Open API specification for APIs. + +##### Add TLS support +This feature enables API Provides to secure the portal with [HTTPs]({{}}). + +##### Add enhanced logging configuration +This new setting allows API Providers to set the logging [level]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_level" >}}) and [format]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_format" >}}). This offers API Providers more control over the logging behavior of their APIs. + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.2.0/images/sha256-1dda1c17a9acc5bc51a9650dc22c6116156b8eb302d8cba7f7e2b31dea570d27?context=explore) + +#### Changelog + +##### Added +- Added Kubernetes support and [helm charts]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm" >}}). +- Added [Single Sign-on]({{}}) for API Consumers and admin users so that they can use their IdPs for managing admin users and developers. +- Added organization and application metadata to auth tokens and OAuth2.0 clients so that API Providers can use Tyk Pump to create aggregated reports based on the metadata from tokens and OAuth2.0 clients. +- Added Admin APIs for API Products to enable API Providers to update API Products using CI/CD pipelines. +- Added [TLS]({{}}) support for the portal's UI. +- Added config options to set the logging [level]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_level" >}}) and [format]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_format" >}}). This offers API Providers more control over the logging behavior of their APIs. + + +##### Fixed +- Fixed grammar in the copy section of the admin application on the Application page. +- Fixes an issue with DCR that was encountered when a developer deletes an app with two DCR products from different catalogs. In that case, the client was deleted from IdP but the app was not deleted from the Portal. + +## 1.1 Release Notes +### 1.1.0 Release Notes + +#### Release Date 20 Jan 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Future breaking changes +This release doesn't introduce future breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +We advise you to upgrade ASAP directly to this release. + +#### Release Highlights +This release introduce a variety of features to improve developer experience. Additionally, we've included support for the S3 storage type as well as some bug fixes. + +##### Organization management for API Consumers +Now API Consumers can [create organizations]({{}}) and securely share credentials between their teammates. In greater detail: +- API Consumers can request to upgrade their account to an organizational account. +- API Consumers can invite teammates to their organization and manage their roles. +- API Consumers in the same organization share access credentials so that the API Consumer team will still have access to API credentials even if an admin user is on vacation or left the organization. +- API Providers can configure whether they allow API consumers to request an upgrade to their accounts for an organizational account. +- API Providers can manually accept, reject or configure to accept all such request to accepted by default. + +##### Get started guides +API Providers can add [Get started guides]({{}}) to API Products for better developer experiences: +- API Providers can add the **Get started guides** to API Products to speed-up onboarding of API Consumers. +- API Providers can use HTML or Markdown editors for authoring content for API Consumers such as the Get started guides and blog posts. + +##### Tags for API Products and blog posts +API Providers can select which blogs posts to display on an API Product page using [the tags feature]({{}}). To achieve that, an API Provider can specify tags for both API Products and blog posts. Blog posts that match tags with an API Product are displayed in the 'Related blog content' section in the API Product page. This offers API Providers greater control over what blog posts to display on their API Product page. + +##### S3 support +We added [S3 support]({{}}) for the portal assets storage (themes, images, OAS files). This update enhances the extensibility of our platform, allowing you to choose different storage solutions to better align with your specific needs. + +#### Download +- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.1/images/sha256-a5ef5360f5bea6433a3c6675707470a2e380257804c2cb033305da3b04c28ae7?context=explore) + +#### Changelog + +##### Added +- Added the [organization management capability]({{}}) for API Consumers to safely share API access credentials between team members. +- Added the [Get started guides]({{}}) for API Products so that admins can explain to their consumers how use their API Products. +- Added support for [S3 storage]({{}}) for the portal's assets storage. Now our customers can use `s3` storage in addition to the filesystem which is especially important in Kubernetes environments. +- Added [tags]({{}}) for API Products and blog posts so that API Providers have greater control over which blog posts to display on their API Product page. + + +##### Fixed +- Fixed a bug in the DCR flow where scopes from an API Product were not assigned to the OAuth2.0 client when creating a new OAuth2.0 client. +- Fixed a bug with the bootstrap process to print _JWT_ instead of the portal’s internal auth token when bootstrapping the portal. +- Fixed a bug where plans and products were not removed for Tyk Dashboard instances that were disconnected from the portal instance. Subsequently, after this fix plans and products are only displayed for available Tyk Dashboard instances. + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/developer-support/release-notes/pump.md b/tyk-docs/content/developer-support/release-notes/pump.md new file mode 100644 index 0000000000..680587207d --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/pump.md @@ -0,0 +1,541 @@ +--- +title: Tyk Pump Release Notes +date: 2024-02-02T26:33:11Z +description: "Release notes documenting updates, enhancements and changes for Tyk Pump versions within the 1.11.X series." +tags: ["Tyk Pump", "Release notes", "v1.11", "changelog"] +aliases: + - /product-stack/tyk-pump/release-notes/pump-1.10 + - /product-stack/tyk-pump/release-notes/pump-1.11 + - /product-stack/tyk-pump/release-notes/pump-1.9 + - /release-notes/pump-1.8 +--- + +**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) + +**This page contains all release notes for Pump displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 1.11 Release Notes + +### 1.11.1 Release Notes + +#### Release Date 04 December 2024 + +#### Release Highlights + +This patch release focuses on critical dependency updates to address security vulnerabilities and maintain compatibility with the latest tools. Users are encouraged to upgrade to benefit from enhanced security and improved stability. + +#### Breaking Changes +This release has no breaking changes. + +#### Dependencies + +##### 3rd Party Dependencies & Tools + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +For users currently on v1.11.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 1.11.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Downloads +- [Docker Image v1.11.1](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.11.1) + - ```bash + docker pull tykio/tyk-pump-docker-pub:v1.11.1 + ``` +- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.11.1) + +#### Changelog {#Changelog-v1.11.1} + +##### Changed + +

      +
    • +
      +Upgraded Golang to v1.22.7 + +Updated to the [Go v1.22.7](https://go.dev/doc/devel/release#go1.22) to leverage its performance improvements, bug fixes, and security patches. + +
      +
    • +
    + +##### Security Fixes +- Fixed the following CVEs: + - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) + - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) + - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) + +--- + +### 1.11.0 Release Notes + +#### Release Date 13 August 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Dependencies + +##### 3rd Party Dependencies & Tools + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | +| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +#### Deprecations + +There are no deprecations in this release. + +#### Upgrade instructions + +For users currently on v1.10.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.10 and proceed directly to this latest release. + +#### Release Highlights + +##### Security fixes +This release focuses on improving security and compliance, enhancing integration capabilities, and ensuring robust performance in secure environments. + +#### Downloads +- [Docker Image v1.11.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.11) +- ```bash + docker pull tykio/tyk-pump-docker-pub:v1.11.0 + ``` +- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.11.0) + +#### Changelog {#Changelog-v1.11.0} + + +##### Added + +
      +
    • +
      +Add Kinesis backend support + +Tyk Pump now supports Kinesis as a backend to push analytics to a data lake efficiently. + +
      +
    • + +
    + +--- + +## 1.10 Release Notes + +### Release Date 3 July 2024 + +### Breaking Changes +This release has no breaking changes. + +### Dependencies + +#### 3rd Party Dependencies & Tools + +With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | +| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +There are no deprecations in this release. + +### Upgrade instructions + +For users currently on v1.9.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.9 and proceed directly to this latest release. + +### Release Highlights + +#### FIPS Compliance + +Tyk Pump now offers [FIPS 140-2](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf) compliance. For further details please consult [Tyk API Management FIPS support]({{< ref "developer-support/release-notes/special-releases#fips-releases" >}}) + +#### Security fixes +This release focuses on improving security and compliance, enhancing integration capabilities, and ensuring robust performance in secure environments. + +### Downloads +- [Docker Image v1.10.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.10) +- ```bash + docker pull tykio/tyk-pump-docker-pub:v1.10.0 + ``` +- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.10.0) + +### Changelog {#Changelog-v1.10.0} + +#### Added + +
      +
    • +
      +Added FIPS compliance + +Added [FIPS compliance]({{< ref "developer-support/release-notes/special-releases#fips-releases" >}}) for Tyk Pump. +
      +
    • +
    + + +#### Fixed + +
      +
    • +
      +Fixed Tyk Pump Splunk Integration using http_proxy and https_proxy Environment Variables + +Resolved an issue where `http_proxy` and `https_proxy` environment variables were not being respected in the Tyk Pump pod for Splunk connections. + +
      +
    • + +
    + +#### Security Fixes + +
      +
    • +
      +Fixed the following CVEs +
        +
      • PRISMA-2021-0108
      • +
      • PRISMA-2023-0056
      • +
      • [CVE-2024-27304](https://nvd.nist.gov/vuln/detail/CVE-2024-27304)
      • +
      • [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288)
      • +
      +
      +
    • +
    + +--- + +## 1.9 Release Notes + +### Release Date 5 Apr 2024 + +### Breaking Changes + +#### Attention: Please read this section carefully + +MongoDB v4.4 will reach its [end of life support](https://www.mongodb.com/legal/support-policy/lifecycles) at the end of February 2024. In order to support newer versions of MongoDB and align with newer versions of Tyk, we have changed the default MongoDB driver from [mgo](https://github.com/go-mgo/mgo) to [mongo-go](https://github.com/mongodb/mongo-go-driver). The `mongo-go` driver supports MongoDB versions greater or equal to v4. **If you are using a version of MongoDB less than v4, please [follow this guide](https://github.com/TykTechnologies/tyk-pump#driver-type) to update the driver type to `mgo`.** + +Users are strongly advised to follow the recommended [upgrade instructions](#upgrading-tyk) provided by Tyk before applying any updates. + +### Dependencies + +#### 3rd Party Dependencies & Tools + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | +| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | +| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +There are no deprecations in this release. + +### Upgrade instructions + +For users currently on v1.8.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.8 and proceed directly to this latest release. + +### Release Highlights + +#### Redis 7 and storage library + +Tyk Pump now supports Redis v7, utilizing our [storage library v1.2.0](https://github.com/TykTechnologies/storage). + +#### MongoDB Driver + +As of v1.9, the default MongoDB driver has been changed from `mgo` to `mongo-go`. + +#### AWS Simple Queue Service Support + +Thanks to a community contribution by [masoudhaghbin](https://github.com/masoudhaghbin), Tyk Pump can now pump logs to an AWS SQS instance. + +#### Tyk Graph Pump + +There has been a significant enhancement in Tyk Graph Pump with the removal of the dependency on the `enable_detailed_recording` setting. This change is designed to streamline operations, reduce storage requirements and enhance overall performance in production environments. By decoupling detailed recording from specific configuration options, Tyk Graph Pump now provides greater flexibility and control over data storage. + + +### Downloads +- [Docker Image v1.9.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.9.0) +- ```bash + docker pull tykio/tyk-pump-docker-pub:v1.9.0 + ``` +- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.9.0) + +### Changelog {#Changelog-v1.9.0} + +#### Added + +
      +
    • +
      +Redis 7 Support + +Tyk Pump now support Redis v7 utilizing our [storage library v1.2.0](https://github.com/TykTechnologies/storage). + +
      +
    • +
    • +
      +Added AWS Simple Queue Service pump support + +Pump can now send logs to an Amazon SQS instance. This was a [community contribution](https://github.com/TykTechnologies/tyk-pump/pull/740) co-authored by [masoudhaghbin](https://github.com/masoudhaghbin). Please follow [this guide](https://github.com/TykTechnologies/tyk-pump#SQS-config) to set up an SQS pump. + +
      + +
    • +
    + +#### Changed + +
      +
    • +
      +Updated Go version to v1.21 + +Tyk Pump now uses Go v1.21 + +
      +
    • + +
    • +
      +Resurface Pump Updated + +The Resurface Pump has been updated with the [following improvements](https://github.com/TykTechnologies/tyk-pump/pull/731). + +- Upgrade `logger-go` dependency to version 3.3.1, which includes improvements in goroutine management, as well as a new `Stop` method for graceful shutdown. +- Add support for async data writing, by adding a bounded channel to buffer data records and process them concurrently in the background. +- Add `Shutdown` method for graceful shutdown of `ResurfacePump` backend. + +Thanks to community member [Ramón Márquez](https://github.com/monrax) for updating this pump. + +
      +
    • +
    + +#### Fixed + +
      +
    • +
      +Added backoff retry mechanism for Splunk Pump + +Tyk Pump now has an expontential backoff retry mechanism for sending logs to Splunk. This mechanism mitigates the chance of losing logs if Pump should fail to send logs to Splunk. This fixes a bug where Splunk responses were not being checked correctly and fixes a bug where Pump was not closing connections after receiving responses. + +
      +
    • +
      +Added a field so that GraphQL aggregated analytics will display correctly for SQL databases + +For SQL databases, the GraphQL aggregated analytics record will now have a new `api_value` field so that analytics will be shown in the Dashboard correctly. + +
      +
    • +
    • +
      +Environment variables TYK_PMP_PUMPS_AGGREGATE_* now correctly correspond to definitions in pump.conf + +Fixed a bug where any `TYK_PMP_PUMPS_AGGREGATE_*` environment variables didn't correctly correspond to definitions in the pump.conf file. + +
      +
    • +
      +Added an api_id field so that GraphQL aggregated analytics will display correctly + +For SQL databases, the GraphQL aggregated analytics record will now have a new `api_id` field so that analytics will be shown in the Dashboard correctly. + +
      +
    • + +
    • +
      +Fixed a bug where Tyk Pump could not connect to Redis Sentinel when TLS is enabled + +Fixed a bug causing Tyk Pump not to connect when Redis Sentinel was deployed using TLS. + +
      +
    • +
    + +#### Security Fixes + +
    + +#### Community Contributions + +Special thanks to the following members of the Tyk community for their contributions to this release: + +
      +
    • +
      +Added Simple Queue Service pump support + +Pump can now [send logs](https://github.com/TykTechnologies/tyk-pump/pull/740) to an Amazon SQS instance. +Thanks to [masoudhaghbin](https://github.com/masoudhaghbin) for creating this pump. Please follow [this guide](https://github.com/asdf) to set up an SQS pump. + +
      + +
    • + +
    • +
      +Resurface Pump Updated + +The Resurface Pump has been updated with the [following improvements](https://github.com/TykTechnologies/tyk-pump/pull/731). + +- Upgrade `logger-go` dependency to version 3.3.1, which includes improvements in goroutine management, as well as a new `Stop` method for graceful shutdown. +- Add support for async data writing, by adding a bounded channel to buffer data records and process them concurrently in the background. +- Add `Shutdown` method for graceful shutdown of `ResurfacePump` backend. + +Thanks to community member [Ramón Márquez](https://github.com/monrax) for updating this pump. + +
      +
    • +
    + +--- + +## 1.8 Release Notes + +### 1.8.3 Release Notes + +#### Changelog + +##### Fixed +- Corrected configuration for _pumps.kafka.meta.timeout_ to be interpreted as the number of seconds (_Type: int_) instead of a duration requiring a unit (_Type: Duration_). +- Fixed an issue where _Graph SQL Pump_ couldn't restart correctly when analytics storage table name was changed in Pump config. Some relations were not torn down and migrated correctly. + +### 1.8.2 Release Notes + +#### Changelog + +##### Fixed +- Resolved performance issue where _SQL Aggregate_ analytics failed to load on the _Dashboard_ during heavy traffic by introducing a new index on the _sql_aggregate_ Pump called _idx_dimension_. +- Fixed _Prometheus Pump_ crashes on non UTF-8 URLs by updating to _prometheus-client_ v1.16. +- Fixed _MongoDB_ connection string issues related to certain characters ("?" and "@"), recommending URL-encoded values in usernames and passwords. This ensures compatibility with both _mgo_ and _mongo-go_ drivers. +- Fixed security vulnerabilities: _CVE-2022-36640_, _CVE-2022-21698_, _GO-2022-0322_ and _GHSA-cg3q-j54f-5p7p_. + +##### Added +- Add `track_all_paths` configuration for _Prometheus Pump_. If enabled, all APIs will have path in the `tyk_http_status_per_path` metric. Otherwise, only endpoint that have "track" plugin set with have path shown in the metric. Endpoints without “track” plugin set will have “unknown” path shown in the metric. + +##### Updated +- Improved security by obfuscating _Mongo Pump_ credentials in log outputs. + +### 1.8.1 Release Notes + +{{< note >}}#### Notes on MongoDB v5 and v6 compatibility + +For MongoDB v5 and v6 users, please [set mongo driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) to `mongo-go`. + +From pump v1.8.1, the default MongoDB driver it uses is [mgo](https://github.com/go-mgo/mgo). This is to align with the default MongoDB driver of other Tyk components. This driver supports MongoDB versions up to v4. If you are using a later version of MongoDB v5 or MongoDB v6, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) to [mongo-go](https://github.com/mongodb/mongo-go-driver). +{{< /note >}} + +#### Changelog + +##### Fixed +- GraphQL analytics records were being excluded from the _tyk_analytics_ collection for Mongo Pump. This has been fixed so that GraphQL analytic records are now included as expected. +- Fixed MongoDB connection issue when using a password with URL escape characters (with mongo-go driver) +- Fixed an issue in Prometheus pump when filtering fields , e.g. _API Name_, that contain `--` in their value. For example, `test--name`. Prometheus Pump filtered the field as two separate instances, e.g. `test` & `name`, instead of the expected `test--name`. +- When [`omit_configfile`]({{< ref "tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables.md#omit_config_file" >}}) is set to `true`, Pump will not try to load the config file and spit out error logs + +##### Updated +- Updated the default Hybrid Pump RPC pool size from 20 to 5 connections in order to reduce default CPU and memory footprint. See [Pump configurations]({{< ref "tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables.md#pumpshybridmetarpcpoolsize" >}}) +- Import and use latest [storage library v1.0.5](https://github.com/TykTechnologies/storage/releases/tag/v1.0.5) +- Updated default MongoDB driver to `mgo`. [Follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) +- Pump name is now case-insensitive. It will override two or more pumps with the same name but in different cases (e.g. _Mongo_ / _mongo_) + + +### 1.8.0 Release Notes +Release date: 2023-05-04 + +#### Major features +Pump 1.8 introduces two new pumps: The GraphQL SQL Aggregate Pump - which allows you to transfer GraphQL transaction logs to SQL; and Resurface Pump - which allows you to transfer data to [Resurface.io](http://resurface.io/) for context based security analysis. + +We have changed the default MongoDB driver from [mgo](https://github.com/go-mgo/mgo) to [mongo-go](https://github.com/mongodb/mongo-go-driver). The new driver supports MongoDB versions greater or equal to v4. If you are using older version of MongoDB v3.x, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type). + +We have also added a config option that allow you to decode the raw requests and responses for all pumps so you don't need to worry about processing them in your data pipeline. For demo mode, there is now an option to generate future data for your convenience. + +In this release, we are using a new Tyk storage library to connect to Mongo DB. This would allow us to switch to use the official Mongo Driver very easily in the future. + +{{< note >}} +#### Notes on MongoDB v3.x compatibility + +In 1.8.0, the default MongoDB driver it use is [mongo-go](https://github.com/mongodb/mongo-go-driver). This driver supports MongoDB versions greater or equal to v4. If you are using older version of MongoDB v3.x, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type). +{{< /note >}} + +#### Changelog + +##### Added +- Added GraphQL SQL Aggregate Pump. +- Added Resurface Pump - Resurface can provide context-based security analysis for attack and failure triage, root cause, threat and risk identification based on detailed API logs sent from Tyk Pump. +- Add config option raw_request_decoded and raw_response_decoded for decoding from base64 the raw requests/responses fields before writing to Pump. This is useful if you want to search for specific values in the raw request/response. Both are disabled by default. This setting is not available for Mongo and SQL pumps, since the dashboard will decode the raw request/response. +- Add the ability to generate future data in demo mode using --demo-future-data flag. +- Remove critical CVE go.uuid vulnerability +- Use the latest Tyk storage library to connect to Mongo +- Hybrid Pump refactoring - we now have better RPC connection control, testability, and documentation + +##### Fixed +- Std pump does not log accurate time when set to json format +- GraphPump doesn’t include names of queries/mutation and subscriptions called +- Mongo Pump’s connection hangs forever if misconfigured + +## Further Information + +### Upgrading Tyk + +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. + +### FAQ + +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/developer-support/release-notes/special-releases.md b/tyk-docs/content/developer-support/release-notes/special-releases.md new file mode 100644 index 0000000000..6417a2a04d --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/special-releases.md @@ -0,0 +1,338 @@ +--- +title: "Long Term Support Releases" +date: 2023-12-11 +tags: ["FAQ", "Long Term Support", "LTS"] +tags: ["FAQ", "Lab Releases", "Special Release"] +tags: ["FAQ", "FIPS Releases", "Special Release - FIPS"] +tags: ["FAQ", "Long Term Support", "LTS"] +aliases: + - /frequently-asked-questions/long-term-support-releases + - /developer-support/long-term-support-releases + - /developer-support/special-releases-and-features/early-access-features + - /developer-support/special-releases-and-features/fips-release + - /developer-support/special-releases-and-features/lab-releases + - /developer-support/special-releases-and-features/long-term-support-releases + - /frequently-asked-questions/using-early-access-features + +description: "Long Term Releases and how we support them" +--- + +## Long Term Support Releases + +Welcome to Tyk's Long Term Support (LTS) Releases section. Here, we'll walk you through the practical aspects of how LTS benefits your business. Explore our approach to stability, understand semantic versioning and learn about our compatibility policies. We'll also cover support for non-LTS components and provide links on upgrading and staying informed about new LTS releases. + +### What Makes Long-Term Support (LTS) So Valuable to Our Customers? + +Long Term Support describes a release of our Gateway and Dashboard which offers our customers, stability over a 1-2 year period. It also means we are committed to ensuring you have uninterrupted service for the lifetime of the long term release. There are many customer benefits in keeping pace with our long term release: + +1. **Stability**: Tyk will always strive to avoid issuing its latest release as a long term support release. Instead, we prefer to let the release be proven in a production setting before it becomes LTS so we can iron out any rare issues. +2. **Security**: Tyk commits that the latest LTS will be secure at the point of release by containing the latest available Go version. This ensures Go related security issues are minimized. +3. **Functional Richness**: There will always be great capability contained in out latest LTS which moves your game on in terms of workflows. +4. **Continuation of Service**: We will patch the LTS version every 7 weeks for the period it remains in full support. + +In summary, LTS releases are stable minor or patch releases that are suitable for production use. + +{{< note success >}} +Our current long term support release is 5.3 LTS. This is in full support from May 2024 to May 2025. This release will enter maintenance support until May 2026. Our next long term support release will be announced end of April 2025. +{{}} + +--- + +### What Is Our LTS Offering? + +We provide [full support]({{< ref "#full-support" >}}) for the first 12 months, including regular maintenance intervals every seven weeks. Following this period, we transition to [maintenance support]({{< ref "#maintenance-support" >}}) for an additional 12 months, focusing on critical fixes and essential security patching as needed. + +We release a new Gateway LTS version every 12 months, which includes the [latest stable Golang version](https://go.dev/dl/). + +#### Advantages of a 12-Month Long-Term Support (LTS) Cycle +1. It allows us to keep pace with Golang versions and other key dependency upgrades, which keeps both our customers and your customers safe (low CVE). +2. It allows us to bring you the best capability whilst offering stability. +3. It allows us to get great product insight and use that to improve the product. + +In case there's a need to operate on a version beyond the established LTS policy, potential assistance may be available. However, this requires a discussion with your designated *Account Manager*. + +#### Support Definitions + +##### Full Support {#full-support} + +During the full support period, we patch the LTS branch on a regular 7-week cadence. +These patches may include any of the following: +- Security updates +- Bug fixes +- UX and UI improvements +- Any other necessary changes, regardless of severity level. + +##### Maintenance Support {#maintenance-support} + +After the initial 12 months of full support, Tyk will release a new LTS version. This means that the previous LTS version now enters maintenance support. In maintenance support, we do not offer regular planned patching. Instead, we will only fix bugs and security issues deemed critical, and this will be a reactive process based on need. If your internal upgrade processes are heavily governed, this may be something you want to take advantage of +If we find something critical we will react immediately and invoke our critical fix process. Generally critical fixes are expressed as a system down with no workaround, or an urgent security issue. + +### Current LTS releases Timeline + +| Version | Full Support Window | Maintenance Support Window | Completely Unsupported From | +| ------- | ------------------- | -------------------------- | --------------------------- | +| 5.0 LTS | April 2023 - April 2024 | May 2024 - April 2025 | May 2025 | +| 5.3 LTS | May 2024-May 2025 | June 2025 - May 2026 | June 2026 | +| LTS+1 (version TBC) | April 2025 - April 2026 | May 2026 - April 2027 | May 2027 | + +--- + +### What About Non-LTS Gateway Releases? + +While we maintain a regular release schedule, it's important to clarify that these releases do not fall under the Long Term Support (LTS) category. They introduce new capabilities, appealing to teams seeking the latest features upon release. However, these specific features become part of the subsequent LTS release. + +Although these releases receive support, it's essential to note their limited support duration, extending only until the arrival of the subsequent release that supersedes them. For users prioritizing stability and consistent patching, the LTS releases offer a more suitable choice. + +--- + +### Major / Minor / Patch - How Do We Decide? + +We know that an LTS release that has a major semantic version is not a desirable practice. + +So, we will always endeavor to avoid shipping major versions, especially major versions as LTS releases. However, sometimes it is unavoidable and we have to ship a major version. + +Our first commitment to you is to make our definitions of major / minor / patch are transparent: + +#### Major Version + +The major version is designated as X.0 and is defined by one or more of the following: + +1. Breaking changes to Tyk APIs, including Tyk Gateway API, Tyk Dashboard API, MDCB, Tyk EDP, and any other component that exposes APIs. Changes include not just the endpoints, but also behavior and functionality, schemas, input parameters, return error codes, and messages. The APIs are documented and published as an OpenAPI Spec document. In case we need to introduce breaking changes, we will create a new version of the API. However, currently, none of Tyk APIs are versioned. +2. Breaking changes to Tyk custom plugins interfaces, breaking plugin compiler for customer Go plugins after plugins have been recompiled. +3. Breaking changes in the config files in all Tyk components, fields in the config files, environment variables used by Tyk components, APIs (function calls) of Tyk middleware, Go template interface. +4. Deprecation of existing functionalities or engines that break a key business process. +5. Crypto deprecations. +6. Changes to common names in certificates. + +In summary, breaking changes involves anything with which a user interacts with a Tyk product and might have to make changes to maintain functionality in response to a change we implement. Subsequently, breaking changes are introduced in a major version, in accordance with the *Semantic Versioning* [specification](https://semver.org/). + +#### Minor Version + +According to the *Semantic Versioning* [specification](https://semver.org/), a MINOR version is incremented when you add functionality in a backward compatible manner. In other words, if Tyk makes changes to your software that do not break any existing functionality, you can increment the MINOR version number. For example, if you add new features or capabilities to your software without changing any existing functionality, you can increase the MINOR version number. + +#### Patch Version + +A patch, sometimes just called a fix, is a small piece of code that's used to correct a problem, usually called a bug, with an operating system or software program. + +Patches are software and Operating System (OS) updates that address security vulnerabilities within a program or product. Tyk may choose to release updates to fix performance bugs, as well as to provide enhanced security features. + +--- + +### Compatibility + +Tyk has a few different components that can drive questions on what version of X goes with what version of Y. + +When we release a new Gateway version, it triggers us to be clear on version compatibility with other areas of the Tyk stack. + +As part of the release of the new Gateway LTS version we will commit to showing everyone two compatibility dimensions: + +1. **Recommended releases** - To ensure you get the most out of the latest Tyk experience, we'll provide information on which versions of different components across the entire stack you need. +2. **Backwards Compatibility** - We'll provide information on what components and versions remain backward compatible with the new Tyk Dashboard and Tyk Gateway versions. + +Our next LTS version will be announced in April 2024. + + + +--- + +### How Do I Upgrade and How Can Tyk Help? + +We have step-by-step install guides for various architectures and installation types. Refer to [upgrading tyk]({{< ref "upgrading-tyk" >}}) for further details. + +And don't forget, our brilliant Customer Success Teams and Account Managers are here to assist you with any issues - pleases refer to your SLA on the specifics of how we can help! + +--- + +### Keep Me Informed! + +We release a new LTS version every 12 months. If you want to be alerted about our next LTS release and what capabilities will be released within it, please sign up to our [mailing list](https://pages.tyk.io/long-term-support). + +We will release our preliminary communications a month before the new LTS version gets released. + +--- + +### Support Arrangements for Other Tyk Components + +We have established a detailed LTS structure for Tyk Gateway and Tyk Dashboard due to their foundational role in our customers’ infrastructure. However, our support strategy for Tyk Pump, Tyk Identity Broker (TIB), MDCB, and Tyk Operator is tailored to reflect their distinct operational aspects and risk profiles, and is deeply integrated with our LTS model. + +These components are often more standalone in nature and are subject to infrequent and minor changes compared to the core products. Therefore, aligning them with the same LTS versioning isn’t necessary or practical. Instead, we employ a continuous delivery model that ensures these components are always updated with the latest improvements and security patches. Our commitment extends beyond version numbers, as we ensure each of these components is thoroughly tested for quality assurance with all active LTS releases of the Gateway and Dashboard. + +Ultimately, our diversified support approach aims to balance agility with assurance, offering the most appropriate level of support for each component while minimizing risk and maximizing value for our customers. +To provide the most secure and efficient environment, we advise the following with the release of a new LTS version: + +#### Developer Portal +Continually evolves with frequent updates. We recommend adopting the latest release for optimal performance and feature set, ensuring consistent user experience and accessibility to the newest enhancements. + +#### MDCB and Helm +Receive updates synchronized with the core Gateway and Dashboard to support new features and capabilities. These components are mature and updates typically consist of minor iterations. + +#### Pump, TIB, Sync and Operator +We recommend staying up to date with these components because they are rigorously tested to operate smoothly with the active LTS versions of Tyk Gateway and Tyk Dashboard. + +With new releases of Tyk Gateway and Tyk Dashboard LTS versions, our customers should follow the above guidelines to ensure the most secure, stable and efficient environment. + +--- + +## Lab Releases + +*Lab Release* is a release for a product still in the lab phase, during which features are still under active development and testing. +Lab phase releases are crucial in our product discovery and proving. They bring our customers, prospects, and the open-source community to the +heart of our product design. This collaboration provides valuable feedback, helping us refine and improve the product while giving you early +access to some key ideas we are testing. We really value your feedback - we want to learn what works for you, new use cases we've missed, +or things that can be improved before we release the capability as production-ready. + +### Important information when using products in a *Lab Release* phase +Lab phase releases are not intended for production use and there are a few things you need to be aware of if you are +helping us prove a lab release: +- **They are not ready for production use:** they have not been through our normal software development lifecycle of build and test so are +not suitable for production use +- **You may find bugs:** these are very early iterations of the code - bugs will be present +- **They may be insecure:** the code has not gone through any security testing, so you may find exposure risk; comprehensive security test +will be conducted before production release. +- **They are unstable:** we will be iterating this code frequently, responding to your feedback. This might lead to instability +- **Data Integrity:** there is a small risk of data loss or corruption. We strongly recommend backing up important information regularly +- **APIs and Configuration Changes:** the lab release product may undergo interface and configuration changes, as well as API contract alterations, +as part of ongoing development and refinement efforts +- **Documentation could be limited:** we will endeavor to document the proof of concepts, but we may miss things +- **User Experience:** The user experience might not be finalized. Some features might only be accessible through API calls +- **Limited Support:** official support is not available for lab products. We encourage reporting any issues or feedback directly through any of the following channels: + - [Tyk Public Issues Tracker](https://github.com/TykTechnologies/tyk/issues/new/choose) + - [Tyk Community Forum](https://community.tyk.io/) + - Contact your Account Manager directly. + +Your insight and feedback are paramount to us, that is why we make lab releases available. But, by using Tyk Lab Release, (a product that is in a lab phase) you acknowledge these conditions. You also agree that Tyk will not be liable for any losses or damages caused in connection with the usage of Lab Release unless the relevant losses or damages are due to our fraud, willful misconduct or gross negligence. This limitation does not apply to limitations that cannot be limited by law. + +**Thank you for your understanding and cooperation** + +--- + +## Early Access Features + +Early Access features are fully tested Tyk features. However, please note that your access to these features is on an "early access" basis and as a result they may not support the functionality of similar features or functionality that you would otherwise expect. + +As we extend the capabilities of our Early Access features we may make changes that are not backwards compatible. Please ensure that you consider these limitations before using an Early Access feature. + +Early Access features are provided "as is" and Tyk disclaims and excludes to the fullest extent permitted by applicable laws all warranties, representations, conditions and all other terms, express or implied, including, but not limited to, implied warranties of merchantability and fitness for a particular purpose. + +By accessing the Early Access features, you agree that Tyk will not be liable for any losses or damages caused in connection with Early Access features, unless the relevant losses or damages are due to our fraud, willful misconduct or gross negligence. + +This limitation does not apply to limitations that cannot be limited by law. + +--- + +## FIPS Releases + +The Federal Information Processing Standards (FIPS) are a series of cryptography and hashing standards defined by the U.S. +Federal Government's National Institute of Standards and Technology (NIST). These standards are crucial for organizations dealing with sensitive +government data and are widely recognized as a benchmark for security in various regulated industries. + +FIPS compliance is particularly important for industries such as: +- Government and military +- Healthcare +- Finance +- Critical infrastructure + +### Importance of FIPS Compliance in API Management + +FIPS compliance is particularly important in API management for several reasons: + +1. **Security of Data in Transit:** API management often involves handling sensitive data as it moves between clients +and backend services. FIPS compliance ensures that this data is encrypted using approved, robust cryptographic +algorithms. +2. **Authentication and Authorization:** API gateways typically handle user authentication and authorization. +FIPS-compliant cryptographic modules ensure these processes are performed securely, using approved methods for key +generation, storage, and cryptographic operations. +3. **Regulatory Compliance:** For organizations working with U.S. government agencies or in regulated industries, using +a FIPS-compliant API management solution can be a requirement to meet regulatory standards. +4. **Key Management:** API keys and other secrets used in API management need to be securely generated, stored, and +managed. FIPS provides standards for these cryptographic operations. +5. **SSL/TLS Implementation:** API gateways often terminate SSL/TLS connections. FIPS compliance ensures that these +connections use approved protocols and cipher suites. +6. **Logging and Auditing:** FIPS compliance can extend to how API activity logs are stored and protected, which is a +crucial part of API management. +7. **Plugin and Extension Security:** For API management platforms that support plugins or extensions, FIPS compliance +ensures that any cryptographic operations performed by these components also adhere to the required standards. +8. **Identity Federation:** When API management platforms integrate with identity providers, FIPS compliance ensures +that the cryptographic aspects of these integrations meet federal standards. + +### FIPS 140-2 Overview + +[FIPS 140-2](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf) is a specific standard within the FIPS +framework that focuses on the security of cryptographic modules. It defines four levels of security, from Level 1 +(lowest) to Level 4 (highest), each building upon the security requirements of the previous level. These levels cover +a wide range of potential applications and environments in which cryptographic modules may be employed. A cryptographic +module, as defined by FIPS 140-2, is a set of hardware, software, firmware, or some combination thereof that implements +cryptographic functions or processes, including cryptographic algorithms and optional key generation, and is contained +within a defined cryptographic boundary. + +FIPS 140-2 validation is performed by accredited [Cryptographic and Security Testing](https://csrc.nist.rip/Projects/cryptographic-module-validation-program/Standards#:~:text=FIPS%20140%2D2%20(effective%2015%2DNov%2D2001)&text=NVLAP%20accredited%20Cryptographic%20and%20Security,for%20Cryptographic%20Modules%20%5B%20PDF%20%5D.) +(CST) laboratories. The validation covers various aspects of the cryptographic module, including Electromagnetic +Interference/Electromagnetic Compatibility (EMI/EMC), Cryptographic Module Specification, and mitigation of Other Attacks. + +### Tyk's FIPS Compliance + +We are pleased to announce that Tyk Gateway and Pump offer a FIPS compliant package (together, the *"FIPS Tyk +Product”*). + +The *FIPS Tyk Product* has not been submitted to a [NIST](https://www.nist.gov/federal-information-processing-standards-fips) testing lab for validation. + +*FIPS compliance* means that the *FIPS Tyk Product* only uses FIPS 140-2 approved cryptographic [algorithms]({{< ref "#fips-compliant-cryptographic-operations" >}}) +while running in FIPS mode. This compliance applies only to specific Tyk-built packages or Docker images of the *FIPS Tyk Product*. +These packages and images are not publicly accessible. Please speak to your assigned account manager for more information. + +{{< note success >}} +**Note** + +Use of the FIPS Tyk Product is conditional on the user accepting any specific terms and conditions +applicable to this feature and a paid license. Please contact your account manager if you would like further information. +{{< /note >}} + +#### FIPS Compliant Cryptographic Operations + +The *FIPS Tyk Product* uses the [BoringCrypto](https://boringssl.googlesource.com/boringssl/+/master/crypto/fipsmodule/FIPS.md#fips-140_2) module to provide FIPS 140-2 validated cryptographic operations. This ensures that when running in FIPS mode, only FIPS 140-2 approved algorithms are used. + +For more details on the cryptographic operations supported in Tyk's FIPS-compliant mode, please contact your Tyk account manager. + +### Configuring Tyk for FIPS Compliance + +The *FIPS Tyk Product* packages are identifiable by the `-fips` suffix. E.g. `tyk-gateway-fips` or `tyk-pump-fips`. + +The only change to configuration, when using the *FIPS Tyk Product*, is to set your key hashing algorithm to SHA256 either by setting `hash_key_function` in your Gateway configuration file (`tyk.conf`) or the `TYK_GW_HASHKEYFUNCTION` environment variable to the value: `sha256`. + +### Frequently Asked Questions + +Q: What level of FIPS 140-2 compliance does Tyk support? + +A: Tyk provides FIPS 140-2 compliance, ensuring the use of approved algorithms in FIPS mode. + +Q: Can I use Tyk in FIPS mode in the Tyk Cloud environment? + +A: Yes but only for hybrid gateways deployed on your premises and connecting to the Tyk Cloud control plane. + +Q: Does FIPS mode affect Tyk's performance? + +A: There should be no material impact on performance from the use of FIPS mode. + +### Additional Resources + +- [Official NIST FIPS 140-2 documentation](https://csrc.nist.gov/publications/detail/fips/140/2/final) + +For more information on FIPS compliance in Tyk, please contact your account manager or {{< button_left href="https://tyk.io/contact/" color="green" content="Contact us" >}}. + + + diff --git a/tyk-docs/content/developer-support/release-notes/sync.md b/tyk-docs/content/developer-support/release-notes/sync.md new file mode 100644 index 0000000000..0305c23e9c --- /dev/null +++ b/tyk-docs/content/developer-support/release-notes/sync.md @@ -0,0 +1,424 @@ +--- +title: Tyk Sync Release Notes +tag: ["Tyk Sync", "Release notes", "v2.0", "2.0.0", "changelog" ] +description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Sync versions within the 2.0.X series." +aliases: + - /product-stack/tyk-sync/release-notes/sync-1.4 + - /product-stack/tyk-sync/release-notes/sync-1.5 + - /product-stack/tyk-sync/release-notes/sync-2.0 +--- +**Licensed Protected Product** + +**This page contains all release notes for Sync displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 2.0 Release Notes + +### 2.0.1 Release Notes + +#### Release Date 05 December 2024 + +#### Release Highlights + +Tyk Sync 2.0.1 has been updated to support API configurations from Tyk 5.7.0. + +Please refer to the [changelog]({{< ref "#Changelog-v2.0.1">}}) below for detailed explanation. + +#### Breaking Changes + +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +For users currently on v2.0.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 2.0.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Downloads +- [Docker image v2.0.1](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v2.0.1) + - ```bash + docker pull tykio/tyk-sync:v2.0.1 + ``` + +#### Changelog {#Changelog-v2.0.1} + +###### Changed + +
      +
    • +
      +API definitions and policies supported up to Tyk Gateway v5.7.0 + +Tyk Sync 2.0.1 supports API definitions and policies up to Tyk Gateway v5.7.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.7.0. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Improved Error Handling for Invalid MongoDB Object IDs in Tyk Sync + +Addressed an issue where Tyk Sync did not properly validate MongoDB Object IDs during API synchronization. Previously, invalid IDs would result in silent failures, causing APIs to remain unpublished without error logs, creating confusion for users. Tyk Sync now logs meaningful error messages and exits with an error if invalid IDs are detected. This fix enhances the reliability and transparency of the synchronization process, ensuring consistent behavior with the Tyk Dashboard API. +
      +
    • +
    + +--- + +### 2.0.0 Release Notes + +From Tyk Sync v2.0, Tyk Sync will be closed source and we will only support use of Tyk Sync with licensed Tyk Dashboard. + +#### Release Date 10 Oct 2024 + +#### Release Highlights + +Tyk Sync 2.0 has been updated to support API configurations from Tyk 5.6.0. + +Please refer to the [changelog]({{< ref "#Changelog-v2.0.0">}}) below for detailed explanation. + +#### Breaking Changes + +This release has no breaking changes. + +#### Deprecations + +##### Deprecation of `--gateway` Flag + +As of Tyk Sync v2.0, support for the **Open Source Tyk Gateway** has been removed. Tyk Sync v2.0 is now compatible exclusively with licensed Tyk Dashboard. This change means that Tyk Sync can no longer be used with the Open Source (OSS) version of the Tyk Gateway. + +The `--gateway` flag, previously used to sync with the OSS Tyk Gateway, is **deprecated** and will be fully **removed in a future release**. Users should prepare to transition their Tyk Sync workflows to licensed Tyk Dashboard environments to ensure continued functionality. + + +##### Future deprecations +As part of our ongoing efforts to streamline and improve Tyk Sync, we plan to deprecate the following options in future releases: + +- `--apis` for the `tyk-sync sync` command. +- `--policies` for the `tyk-sync sync` command. + +We recommend users update their workflows to use the `publish` and `update` commands for managing individual API and Policy IDs. To continue using the `sync` command, ensure all required resources are listed in the `.tyk.json` index file. This file will serve as the source of truth for API configuration states, and Tyk Sync will create or update all specified resources while removing any others from Tyk Dashboard. + +#### Upgrade instructions +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Downloads +- [Docker image v2.0.0](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v2.0.0) + - ```bash + docker pull tykio/tyk-sync:v2.0.0 + ``` + +#### Changelog {#Changelog-v2.0.0} + +##### Updated + +
      +
    • +
      +API definitions and policies supported up to Tyk Gateway v5.6.0 + +Tyk Sync 2.0.0 supports API definitions and policies up to Tyk Gateway v5.6.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.6.0. +
      +
    • + +
    • +
      +Deprecated --gateway flag + +As of Tyk Sync v2.0, support for the **Open Source Tyk Gateway** has been removed. Tyk Sync v2.0 is now compatible exclusively with licensed Tyk Dashboard. This change means that Tyk Sync can no longer be used with the Open Source (OSS) version of the Tyk Gateway. + +The `--gateway` flag, previously used to sync with the OSS Tyk Gateway, is **deprecated** and will be fully **removed in a future release**. Users should prepare to transition their Tyk Sync workflows to licensed Tyk Dashboard environments to ensure continued functionality. +
      +
    • +
    + + +## 1.5 Release Notes + +### 1.5.1 Release Notes + +#### Release date 13 August 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Downloads +- [Docker image v1.5.1](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.5.1) + - ```bash + docker pull tykio/tyk-sync:v1.5.1 + ``` + +#### Changelog {#Changelog-v1.5.1} + +##### Fixed + +
      +
    • +
      +Fixed problem in synchronizing APIs with duplicate slugs + +In previous versions, the `sync` command in Tyk Sync checked for duplicate slugs among APIs. As slugs are now deprecated and APIs will have identical slugs by default starting from Tyk v5.3, this check became problematic. To resolve this, the checks for duplicate slugs have been removed in this version, ensuring compatibility with both Tyk Cloud and Tyk v5.3+. +
      +
    • + +
    + +##### Changed + +
      +
    • +
      +API definitions supported up to Tyk Gateway v5.5.0 + +Tyk Sync 1.5.1 supports API definitions up to Tyk Gateway v5.5.0. This update ensures that Tyk Sync can manage API definitions compatible with Tyk Gateway v5.5.0. +
      +
    • +
    + +### 1.5.0 Release Notes + +#### Release date 4 July 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations + +##### Removed --allow-unsafe-oas flag + +With native support of Tyk OAS APIs in Sync v1.5, we have removed the `--allow-unsafe-oas` flag from all commands as this flag is no longer required. Users can manage OAS APIs with Tyk Gateway and Dashboard (v5.3.2+) without specifying this flag or setting configurations in the Dashboard. The synchronisation of OAS API Definitions with the Dashboard is now safer and more straightforward. + + +##### Future deprecations +As part of our ongoing efforts to streamline and improve Tyk Sync, we plan to deprecate the following options in future releases: + +- `--apis` for the `tyk-sync sync` command. +- `--policies` for the `tyk-sync sync` command. + +We recommend users update their workflows to use the `publish` and `update` commands for managing individual API and Policy IDs. To continue using the `sync` command, ensure all required resources are listed in the `.tyk.json` index file. This file will serve as the source of truth for API configuration states, and Tyk Sync will create or update all specified resources while removing any others from the Gateway or Dashboard. + +#### Upgrade instructions +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + +#### Release Highlights +##### Full support for OAS APIs and API templates +Tyk Sync 1.5 now fully supports Tyk OpenAPI Specification (OAS) APIs and API Templates. This release is compatible with Tyk Gateway or Dashboard version 5.4.0 and above, enabling seamless management of OAS APIs and API templates, and also supports all Tyk API definitions (Tyk OAS APIs and Tyk Classic APIs) for Tyk Gateway and Tyk Dashboard v5.4.0. + +For Tyk Gateway v5.4.1+ make sure to use the latest Tyk Sync available and also check Tyk Gateway release notes in the section "Compatibility Matrix For Tyk Components" for further instructions. + +Please refer to the [changelog]({{< ref "#Changelog-v1.5.0">}}) below for detailed explanation. + +#### Downloads +- [Docker image v1.5.0](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.5.0) + - ```bash + docker pull tykio/tyk-sync:v1.5.0 + ``` +- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.5.0) + +#### Changelog {#Changelog-v1.5.0} + +##### Added + +
      +
    • +
      +Support for OAS APIs + +Added native support for OAS APIs. Tyk Sync 1.5 now fully supports OpenAPI Specification (OAS) APIs and API Templates. This release is compatible with Tyk Gateway or Dashboard version 5.3.2 and above, enabling seamless management of OAS APIs and API templates. The `--allow-unsafe-oas` flag is not required anymore for managing OAS APIs. +
      +
    • + +
    • +
      +Support for API Templates + +Added support for API templates in `dump`, `sync`, `update`, and `publish` commands. Tyk Sync now supports managing API template resources in Tyk dashboard. Users can use these commands to manage API templates effectively. +
      +
    • + +
    • +
      +Support for API Categories of OAS APIs + +Added support for API categories in OAS APIs. Users can now include API Category in the API Definition file. Tyk Sync will update the categories of the API accordingly. It improved organization and categorization of APIs, making management more intuitive. +
      +
    • +
    + +##### Updated + +
      +
    • +
      +API definitions supported up to Tyk Gateway v5.4.0 + +Tyk Sync 1.5 supports API definitions up to Tyk Gateway v5.4.0. This update ensures that Tyk Sync can manage API definitions compatible with Tyk Gateway v5.4.0. +
      +
    • + +
    • +
      +Removed --allow-unsafe-oas flag + +With native support of Tyk OAS APIs in Sync v1.5, we have removed the `--allow-unsafe-oas` flag from all commands as this flag is no longer required. Users can manage OAS APIs with Tyk Gateway and Dashboard (v5.3.2+) without specifying this flag or setting configurations in the Dashboard. The synchronisation of OAS API Definitions with the Dashboard is now safer and more straightforward. +
      +
    • +
    + +##### Fixed + +
      +
    • +
      +Improved CI/CD integration by returning non-zero exit codes on failure + +Previously, users had to parse `stdout` to detect failures, making it difficult to integrate with CI/CD tools. This fix ensures that failure cases return non-zero exit codes, allowing CI/CD pipeline tools to automatically detect and flag errors. This change will streamline CI/CD workflows and improved error detection and handling. +
      +
    • + +
    • +
      +Fixed endpoint issue in update command + +Fixed an issue with the `update` command where extra slashes in the endpoint caused PUT requests to be misinterpreted as GET requests. Due to extra slashes at the end of the endpoint, PUT calls were being converted to GET calls, resulting in a 200 OK response without actual updates. This issue occurred when the gateway URL was provided instead of the dashboard URL for `sync` and `update` commands. The fix now ensured accurate updates and improved reliability of the `update` command. +
      +
    • +
    + +## 1.4 Release Notes + +### 1.4.3 Release Notes + +#### Release date 5 Apr 2024 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 1.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, **you should skip 1.4.0** and upgrade directly to this release. + +#### Release Highlights +This release works with Tyk Dashboard and Tyk Gateway v5.3.0. As such it supports all Tyk API definitions (Tyk OAS APIs and Tyk Classic APIs) for [Tyk Gateway v5.3.0]({{< ref "developer-support/release-notes/gateway#compatibility-matrix-for-tyk-components-14" >}}) and [Tyk Dashboard]({{< ref "developer-support/release-notes/dashboard#compatibility-matrix-for-tyk-components-14" >}}) + +For Tyk Gateway v5.3.1+ make sure to use the latest Tyk Sync available and also check Tyk Gateway release notes in the section "Compatibility Matrix For Tyk Components" for further instructions. + +Please refer to the [changelog]({{< ref "#Changelog-v1.4.3">}}) below for detailed explanation. + +#### Downloads +- [Docker image v1.4.3](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.4.3) + - ```bash + docker pull tykio/tyk-sync:v1.4.3 + ``` +- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.4.3) + +#### Changelog {#Changelog-v1.4.3} + +##### Updated + +
      +
    • +
      +API definitions supported up to Tyk Gateway v5.3.0 + +Tyk Sync supports both Tyk OAS APIs and Tyk Classic APIs when working with Tyk Dashboard. However, to use Tyk Sync to migrate Tyk OAS APIs you would need to set a special config field in Tyk Dashboard and an argument for Tyk Sync. This is a temporary measure provided for early adopters and will be **deprecated** later when Tyk Sync is updated in a future release to bring you the full Tyk OAS API experience as soon as possible. + +Recommended usage: +Tyk Dashboard setting: [allow-unsafe-oas]({{}}) +Tyk Sync: use the [--allow-unsafe-oas]({{}}) when invoking the CLI + +####### API Category is not yet supported +API Categories are a new capability with v5.3.0 of Tyk Dashboard. API Categories are currently not supported in Tyk Sync for Tyk OAS APIs. This means that Tyk Sync will not be able to save the category definition set for the Tyk OAS API. Until we update Tyk Sync you would need to manually recreate the categories in the new environment. +
      +
    • +
    + +
      +
    • +
      +Tyk Sync updated to use [Golang 1.21](https://tip.golang.org/doc/go1.21) +Tyk Sync is using Golang 1.21 Programming Language starting with the 1.4.3 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. +
      +
    • +
    + +##### Security + +The following CVEs have been resolved in this release: + +- [CVE-2023-48795](https://nvd.nist.gov/vuln/detail/CVE-2023-48795) +- [CVE-2023-49569](https://nvd.nist.gov/vuln/detail/CVE-2023-49569) +- [GHSA-9763-4f94-gfch](https://github.com/advisories/GHSA-9763-4f94-gfch) + +--- + +### 1.4.2 Release Notes + +##### Release date 07 Dec 2023 + +#### Breaking Changes +This release has no breaking changes. + +#### Deprecations +There are no deprecations in this release. + +#### Upgrade instructions +If you are using a 1.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, **you should skip 1.4.0** and upgrade directly to this release. + +#### Release Highlights +This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v1.4.2">}}) below. + +#### Downloads +- [Docker image v1.4.2](https://hub.docker.com/layers/tykio/tyk-sync/v1.4.2/images/sha256-3a6473aedeb4963bc19b218b52c4649fffc6ad46113799e9c1055004d5dc754a?context=explore) + - ```bash + docker pull tykio/tyk-sync:v1.4.2 + ``` +- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.4.2) + +#### Changelog {#Changelog-v1.4.2} + +##### Updated + +
      +
    • +
      +API definitions supported up to Tyk Gateway v5.2.3 + +Tyk Sync supports Tyk API definitions up to Tyk Gateway v5.2.3. Please use this version with Tyk Gateway v5.2.0+. +
      +
    • +
    + + + +## Further Information + +### Upgrading Tyk +Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. + +### FAQ +Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. + +## Earlier Versions Release Notes +Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md b/tyk-docs/content/developer-support/release-notes/tib.md similarity index 91% rename from tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md rename to tyk-docs/content/developer-support/release-notes/tib.md index 1663f1adaf..8b2b8991db 100644 --- a/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md +++ b/tyk-docs/content/developer-support/release-notes/tib.md @@ -1,12 +1,15 @@ --- -title: Tyk Identity Broker 1.6 Release Notes +title: Tyk Identity Broker Release Notes date: 2024-10-27T15:49:11Z description: "Release notes documenting updates, enhancements, and changes for Tyk Identity Broker versions within the 1.6.x series." tags: ["Tyk Identity Broker", "Release notes", "changelog", "v1.6", "1.6.1"] +aliases: + - product-stack/tyk-identity-broker/release-notes/tib-v1.6 + --- ****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** -**This page contains all release notes for version 1.6.x displayed in a reverse chronological order** +**This page contains all release notes for Tyk Identity Broker displayed in a reverse chronological order** ## Support Lifetime @@ -14,41 +17,43 @@ Our minor releases are supported until our next minor comes out. --- -## 1.6.1 Release Notes +## 1.6 Release Notes -### Release Date 5 Nov 2024 +### 1.6.1 Release Notes -### Release Highlights +#### Release Date 5 Nov 2024 + +#### Release Highlights -##### Enhanced Security with JWE Support for OIDC SSO +###### Enhanced Security with JWE Support for OIDC SSO This release introduces JSON Web Encryption (JWE) support for OpenID Connect (OIDC) Single Sign-On (SSO) in the Tyk Identity Broker (TIB). With this enhancement, organizations can achieve greater security for token handling during authentication flows. JWE token validation and processing are now seamlessly integrated, offering configurable private key support for decryption. -### Breaking Changes +#### Breaking Changes This release has no breaking changes. - - + -### Dependencies +#### Dependencies -#### 3rd Party Dependencies & Tools +##### 3rd Party Dependencies & Tools There are no deprecations in this release. - -### Upgrade instructions +#### Upgrade instructions For users currently on v1.6.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 1.6.0 and proceed directly to this latest patch release.
    Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. -### Downloads +#### Downloads - [Docker image to pull](https://hub.docker.com/r/tykio/tyk-identity-broker/tags?name=1.6.1) ``` docker pull tykio/tyk-identity-broker:v1.6.1 ``` - source code tarball for oss projects - [TIB v1.6.1](https://github.com/TykTechnologies/tyk-identity-broker/releases/tag/v1.6.1) -### Changelog {#Changelog-v1.6.1} +#### Changelog {#Changelog-v1.6.1} -#### Added +##### Added - ---- - -## How Do I Upgrade and How Can Tyk Help? - -We have step-by-step install guides for various architectures and installation types. Refer to [upgrading tyk]({{< ref "upgrading-tyk" >}}) for further details. - -And don't forget, our brilliant Customer Success Teams and Account Managers are here to assist you with any issues - pleases refer to your SLA on the specifics of how we can help! - ---- - -## Keep Me Informed! - -We release a new LTS version every 12 months. If you want to be alerted about our next LTS release and what capabilities will be released within it, please sign up to our [mailing list](https://pages.tyk.io/long-term-support). - -We will release our preliminary communications a month before the new LTS version gets released. - ---- - -## Support Arrangements for Other Tyk Components - -We have established a detailed LTS structure for Tyk Gateway and Tyk Dashboard due to their foundational role in our customers’ infrastructure. However, our support strategy for Tyk Pump, Tyk Identity Broker (TIB), MDCB, and Tyk Operator is tailored to reflect their distinct operational aspects and risk profiles, and is deeply integrated with our LTS model. - -These components are often more standalone in nature and are subject to infrequent and minor changes compared to the core products. Therefore, aligning them with the same LTS versioning isn’t necessary or practical. Instead, we employ a continuous delivery model that ensures these components are always updated with the latest improvements and security patches. Our commitment extends beyond version numbers, as we ensure each of these components is thoroughly tested for quality assurance with all active LTS releases of the Gateway and Dashboard. - -Ultimately, our diversified support approach aims to balance agility with assurance, offering the most appropriate level of support for each component while minimizing risk and maximizing value for our customers. -To provide the most secure and efficient environment, we advise the following with the release of a new LTS version: - -### Developer Portal -Continually evolves with frequent updates. We recommend adopting the latest release for optimal performance and feature set, ensuring consistent user experience and accessibility to the newest enhancements. - -### MDCB and Helm -Receive updates synchronized with the core Gateway and Dashboard to support new features and capabilities. These components are mature and updates typically consist of minor iterations. - -### Pump, TIB, Sync and Operator -We recommend staying up to date with these components because they are rigorously tested to operate smoothly with the active LTS versions of Tyk Gateway and Tyk Dashboard. - -With new releases of Tyk Gateway and Tyk Dashboard LTS versions, our customers should follow the above guidelines to ensure the most secure, stable and efficient environment. diff --git a/tyk-docs/content/frequently-asked-questions/faq.md b/tyk-docs/content/frequently-asked-questions/faq.md index ca67f511e9..fe1e184c8c 100644 --- a/tyk-docs/content/frequently-asked-questions/faq.md +++ b/tyk-docs/content/frequently-asked-questions/faq.md @@ -53,5 +53,5 @@ Tyk Self Managed and Tyk Cloud license holders can reach out on the online Supporting documentation is also available relating to: -- [Release Notes]({{< ref "release-notes" >}}) +- [Release Notes]({{< ref "developer-support/release-notes/gateway" >}}) - [Upgrading Tyk]({{< ref "upgrading-tyk" >}}) diff --git a/tyk-docs/content/getting-started/key-concepts/high-level-concepts.md b/tyk-docs/content/getting-started/key-concepts/high-level-concepts.md index 2885a75e80..6a458f52f0 100644 --- a/tyk-docs/content/getting-started/key-concepts/high-level-concepts.md +++ b/tyk-docs/content/getting-started/key-concepts/high-level-concepts.md @@ -39,7 +39,7 @@ In Tyk Gateway release 5.3.0, Tyk OAS APIs gained feature maturity. Tyk Dashboar It is not possible to rollback to previous versions of Tyk components with Tyk OAS APIs created in 5.3.0. -For further details, please refer to the [release notes]({{< ref "product-stack/tyk-gateway/release-notes/version-5.3.md" >}}) for Tyk Gateway v5.3.0. +For further details, please refer to the [release notes]({{< ref "developer-support/release-notes/gateway" >}}) for Tyk Gateway v5.3.0. {{< /warning >}} ## Getting started with Tyk OAS diff --git a/tyk-docs/content/getting-started/using-oas-definitions/oas-reference.md b/tyk-docs/content/getting-started/using-oas-definitions/oas-reference.md index 3251efdac5..7934712857 100644 --- a/tyk-docs/content/getting-started/using-oas-definitions/oas-reference.md +++ b/tyk-docs/content/getting-started/using-oas-definitions/oas-reference.md @@ -9,7 +9,7 @@ menu: weight: 8 --- -Tyk Gateway is extremely flexible with a great many features that you can use to configure and optimize the handling of requests to your APIs. During the [Early Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}) phase, we gradually rolled out support for the configuration that is available through Tyk Classic API definitions into the new Tyk OAS API Definition format. +Tyk Gateway is extremely flexible with a great many features that you can use to configure and optimize the handling of requests to your APIs. During the [Early Access]({{< ref "developer-support/release-notes/special-releases#early-access-features" >}}) phase, we gradually rolled out support for the configuration that is available through Tyk Classic API definitions into the new Tyk OAS API Definition format. From Tyk Gateway and Dashboard v5.3.0 we have reached feature maturity, however there are still a few features to be added before we reach and surpass feature parity with Tyk Classic API. diff --git a/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md b/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md index 4cbaa14fc4..5b450f4a7c 100755 --- a/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md +++ b/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md @@ -42,7 +42,7 @@ In the context of custom Python plugins, API calls are queued and the Python int Starting from Tyk Gateway version `v5.3.0`, Python is no longer bundled with the official Tyk Gateway Docker image by default, to address security vulnerabilities in the Python libraries highlighted by [Docker Scout](https://docs.docker.com/scout/).
    -Whilst Python plugins are still supported by Tyk Gateway, if you want to use them you must extend the image to add support for Python. For further details, please refer to the [release notes]({{< ref "product-stack/tyk-gateway/release-notes/version-5.3.md" >}}) for Tyk Gateway `v5.3.0`. +Whilst Python plugins are still supported by Tyk Gateway, if you want to use them you must extend the image to add support for Python. For further details, please refer to the [release notes]({{< ref "developer-support/release-notes/gateway" >}}) for Tyk Gateway `v5.3.0`. {{< /note >}} If you wish to use Python plugins using Docker, you can extend the official Tyk Gateway Docker image by adding Python to it. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.3.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.3.md deleted file mode 100644 index 1591e378d9..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.3.md +++ /dev/null @@ -1,403 +0,0 @@ ---- -title: Tyk Charts 1.3 Release Notes -date: 2024-02-05T15:49:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 1.3 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v1.3" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 1.3.X displayed in a reverse chronological order** - -### Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.3.0 Release Notes - -##### Release Date 05 Apr 2024 - -#### Breaking Changes - -For MongoDB users: Tyk Charts 1.3.0 uses `mongo-go` as the default driver to connect to MongoDB. `mongo-go` driver is compatible with MongoDB 4.4.x and above. For MongoDB versions prior to 4.4, please set `global.mongo.driver` to `mgo`. We recommend reading [Choose a MongoDB driver]({{}}) when you need to change driver setting. - - - - - - - - - - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations - -There are no deprecations in this release. - - -##### Future deprecations -- In `tyk-dashboard` chart, `dashboard.hashKeys` field will be deprecated in future and be replaced with `.global.hashKeys`. This is to ensure Dashboard, Gateway, and MDCB always get the same hashKeys configurations. It is recommended users do not set `dashboard.hashKeys` and only use `.global.hashKeys` field. - -#### Upgrade instructions - -For users currently on v1.2.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -#### Release Highlights - -This release primarily focuses on adding support for Tyk v5.3 configurations. - -Tyk Charts 1.3 will install the following Tyk component versions by default. -- Tyk Gateway v5.3.0 -- Tyk Dashboard v5.3.0 -- Tyk Pump v1.9.0 -- Tyk MDCB v2.5.0 -- Tyk Developer Portal v1.8.3 - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.3.0">}}) below. - -##### Support new features available from Tyk v5.3.0 -Tyk Charts 1.3 adds support for a number of new Tyk features available from Tyk 5.3.0. These include: Support use of SSL certificates when connecting to Redis, Configurations for OAS Validate examples and OAS Validate Schema defaults. - -##### Graph Pump -Tyk Charts 1.3 adds support for Graph MongoDB Pump, Graph SQL Pump and Graph SQL Aggregate Pump. see [Graph Pump setup]({{}}) to learn more about the GraphQL-specific metrics available. - -##### Enable Tyk Identity Broker (TIB) in Tyk Dashboard -Tyk Charts 1.3 adds a field to enable Internal [Tyk Identity Broker (TIB)]({{}}) in Tyk Dashboard by field `tyk-dashboard.tib.enabled` to `true`. - -#### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.3.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.3.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.3.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.3.0) - -#### Changelog {#Changelog-v1.3.0} - - -##### Added - - -
      - -
    • -
      -Global config: Support use of SSL certificates when connecting to Redis - -Added following fields in `global.redis` to support use of SSL certificates when connecting to Redis. - -```yaml - # Allows usage of self-signed certificates when connecting to an encrypted Redis database. - # sslInsecureSkipVerify: false - - # Path to the CA file. - # sslCAFile: "" - - # The Volume mount path - # Default value: /etc/certs - # certificatesMountPath: "" - - # Path to the cert file. - # sslCertFile: "" - - # Path to the key file. - # sslKeyFile: "" - - # Maximum supported TLS version. Valid values are TLS 1.0, 1.1, 1.2, 1.3. - # Default value: 1.3 - # sslMaxVersion: "1.3" - - # Minimum supported TLS version. Valid values are TLS 1.0, 1.1, 1.2, 1.3. - # Default value: 1.2 - # sslMinVersion: "1.2" - - # Name of the tls secret. A secret needs to be created for this manually using the name as specified here - # secretName: "" - - # Name of the volume where the secret will be mounted - # volumeName: "" -``` -
      -
    • - -
    • -
      -Global config: Added OAS Validate Examples - -Added field `global.oasValidateExamples`. When set to true, it enables validation of examples in the OAS spec. -It is used to set `TYK_DB_OAS_VALIDATE_EXAMPLES` and `TYK_GW_OAS_VALIDATE_EXAMPLES`. -
      -
    • - -
    • -
      -Global config: Added OAS Validate Schema Defaults - -Added field `global.oasValidateSchemaDefaults`. When set to true, it enables validation of schema defaults in the OAS spec. -It is used to set `TYK_DB_OAS_VALIDATE_SCHEMA_DEFAULTS` and `TYK_GW_OAS_VALIDATE_SCHEMA_DEFAULTS`. -
      -
    • - -
    • -
      -Global config: Enable/Disable key hashing - -Added field `global.hashKeys`. When set to true, it enables key hashing in Gateway. Dashboard will -also operate in a mode that is compatible with key hashing. Please do not set `dashboard.hashKeys` -or make sure `dashboard.hashKeys` is set to the same value or else `dashboard.hashKeys` will take precedence. - -Note: `dashboard.hashKeys` will be deprecated in future release. -
      -
    • - -
    • -
      -Gateway: Added support for PodDisruptionBudget resource - -Added built-in support for [PodDisruptionBudget](https://kubernetes.io/docs/tasks/run-application/configure-pdb/) resource for Tyk Gateway. This will enhance the reliability and availability of your applications, giving you some control over the disruption caused by scaling operations, updates or maintenance on your pods. -To enable it, set `gateway.pdb.enabled` to `true` and configure `gateway.pdb.minAvailable` or `gateway.pdb.maxUnavailable`. -
      -
    • - -
    • -
      -Gateway: Added Ingress template for gateway control service - -When enabled at `gateway.control.ingress.enabled`, an Ingress resource will be created to allow external access to gateway's [control service]({{}}). -
      -
    • - -
    • -
      -Gateway: Configure Gateway to work with MDCB synchroniser - -Allow users to configure worker gateway to work with [Tyk MDCB synchroniser]({{}}) easily by setting `global.mdcbSynchronizer.enabled` in `tyk-data-plane`. -The control plane should be deployed with same `global.mdcbSynchronizer.enabled` value too. -
      -
    • - -
    • -
      -Gateway: Customize ServiceAccount to be used - -Allow users to customize `serviceAccountName` for gateway, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. -
      -
    • - -
    • -
      -Gateway: Make service port name configurable - -Users can configure Tyk Gateway service port name and Tyk Gateway control service port name. Default is `http`. -
      -
    • - -
    • -
      -Gateway: Make initContainer image configurable - -Users can configure Tyk Gateway initContainer image so that it is possible to load busybox image from preferred registry. -
      -
    • - -
    • -
      -Dashboard: Added option to enable Tyk Identity Broker (TIB) in Tyk Dashboard - -You can enable Internal [Tyk Identity Broker (TIB)]({{}}) in Tyk Dashboard by field `tyk-dashboard.tib.enabled` to `true`. -
      -
    • - -
    • -
      -Dashboard: Customize ServiceAccount to be used - -Allow users to customize `serviceAccountName` for dashboard, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. -
      -
    • - -
    • -
      -Dashboard: Make service port name configurable - -Users can configure Tyk Dashboard service port name. Default is `http`. -
      -
    • - -
    • -
      -Pump: Added Graph pump support - -[Graph Pumps]({{}}) will be added when the user adds `mongo` or `postgres` to `pump.backend`. When `mongo` is added to `pump.backend` the Graph MongoDB Pump will be enabled. When `postgres` is added to `pump.backend` the Graph SQL Pump and Graph SQL Aggregate Pump will be enabled. -
      -
    • - -
    • -
      -Pump: Customize ServiceAccount to be used - -Allow users to customize `serviceAccountName` for pump, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. -
      -
    • - -
    • -
      -Pump: Make service port name configurable - -Users can configure Tyk Pump service port name. Default is `http`. -
      -
    • - -
    • -
      -Portal: Customize ServiceAccount to be used - -Allow users to customize `serviceAccountName` for portal, the name of the [Service Account](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/) that is going to be used by the Pods. -
      -
    • - -
    • -
      -Portal: Make service port name configurable - -Users can configure Tyk Developer Portal service port name. Default is `http`. -
      -
    • - -
    • -
      -New component chart to deploy MDCB - -A new [MDCB component chart](https://github.com/TykTechnologies/tyk-charts/tree/main/components/tyk-mdcb) has been added to deploy MDCB. -It is currently in Beta. For installation instructions and configurations, please -read [Tyk Control Plane chart]({{}}). -
      -
    • - -
    • -
      -New umbrella chart to deploy Tyk Control Plane - -A new [Tyk Control Plane umbrella chart](https://github.com/TykTechnologies/tyk-charts/tree/main/tyk-control-plane) has been added to deploy Tyk Control Plane. -It is currently in Beta. For installation instructions and configurations, please -read [Tyk Control Plane chart]({{}}). -
      -
    • - -
    - - -##### Changed - -
      -
    • -
      -Global config: Update default MongoDB driver to `mongo-go` - -Tyk Charts 1.3.0 uses `mongo-go` as the default driver to connect to MongoDB. `mongo-go` driver is compatible with MongoDB 4.4.x and above. For MongoDB versions prior to 4.4, please change `global.mongo.driver` to `mgo`. We recommend reading [Choose a MongoDB driver]({{}}) when you need to change driver setting. -
      -
    • -
    - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.4.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.4.md deleted file mode 100644 index aab381f05e..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.4.md +++ /dev/null @@ -1,314 +0,0 @@ ---- -title: Tyk Charts 1.4 Release Notes -date: 2024-02-05T15:49:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 1.4 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v1.4" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 1.4.X displayed in a reverse chronological order** - -### Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.4.0 Release Notes - -##### Release Date -- 6 May 2024 - -#### Breaking Changes - -This release has no breaking changes. - - - - - - - - - - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations - -- In the `tyk-dashboard` chart, the `dashboard.hashKeys` field is deprecated and has been replaced with `.global.hashKeys`. This is to ensure Dashboard, Gateway, and MDCB always get the same hashKeys configurations. Setting `dashboard.hashKeys` will no longer take effect. Please only use `.global.hashKeys` field. - - - -#### Upgrade instructions - -For users currently on v1.3.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -#### Release Highlights - - -##### General availability release of tyk-control-plane chart and tyk-mdcb chart -We're pleased to announce the official release of the Tyk Helm Charts for Tyk Control Plane and MDCB! Following a successful beta phase, these charts are now stable and ready for production use. - -With this release, we aim to provide a straightforward solution for deploying and managing Tyk Control Plane and Multi-Data Center Bridge (MDCB) using Helm Charts. Whether you're looking for our recommended setup configurations or need flexibility to adapt to your architectural requirements, our Helm Charts have you covered. - -To leverage this stable release and simplify your Tyk deployments, we invite you to explore our example setup for MDCB Control Plane using Helm Chart. Simply follow our [MDCB Control Plane setup guide]({{}}) to get started. - -##### Updated default Tyk versions -Tyk Charts 1.4 will install the following Tyk component versions by default. -- Tyk Gateway v5.3.1 -- Tyk Dashboard v5.3.1 -- Tyk Pump v1.9.0 -- Tyk MDCB v2.5.1 -- Tyk Developer Portal v1.8.5 - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.4.0">}}) below. - -#### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.4.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.4.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.4.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.4.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.4.0) - -#### Changelog {#Changelog-v1.4.0} - - -##### Added - - -
      - -
    • -
      -OSS: Simplify Tyk Operator setup with Kubernetes Secret creation - -When you set `operatorSecret.enabled` to `true` in the `tyk-oss` chart, a Kubernetes Secret named `tyk-operator-conf` will be automatically created in the same namespace. This secret is essential for connecting Tyk Operator to the Gateway, enabling seamless management of Tyk API resources. To learn more about setting up Tyk Operator, check out [Tyk Operator installation]({{}}). -
      -
    • - - -
    • -
      -MDCB: Enhanced analytics configuration options -We have introduced new configuration options for handling analytics data flow in MDCB deployments. By default, MDCB stores aggregated analytics data from the data plane pump to SQL/Mongo. Additionally, users have the flexibility to enable Pump in the control plane, allowing MDCB to send analytics to Redis instead. - -Here are the default configurations: -```yaml -mdcb: - # When it is set to true, instead of sending analytics directly to MongoDB / SQL, - # MDCB can send analytics to Redis. This will allow tyk-pump to pull - # analytics from Redis and send to your own data sinks. - # It is used to set TYK_MDCB_FORWARDANALYTICSTOPUMP - forwardAnalyticsToPump: false - - # This enables saving analytics in multiple keys as oppose to just having one. - # It is useful when using a Redis cluster. - # It also only works when TYK_MDCB_FORWARDANALYTICSTOPUMP is set to true. - enableMultipleAnalyticsKey: true - - # This should be set to true if you choose not to store selective analytics - dontStoreSelective: false - - # This should be set to true if you choose not to store aggregate analytics - dontStoreAggregate: false - - # If set to true then it will not store analytics for tags having prefix specified in the list. - # NB: Prefix “key-” is added in the list by default. This tag is added by gateway for keys. - ignoreTagPrefixList: [] - - # If enabled, it will store analytics for all the endpoints, irrespective of Track Endpoint plugin. - trackAllPaths: false - - # If enabled, aggregate data will be generated per minute. - storeAnalyticsPerMinute: false -``` -
      -
    • - -
    • -
      -Tyk Control Plane: Added option to enable Dashboard hybrid organization -We've added a convenient option to enable dashboard hybrid organization during bootstrapping. This eliminates the manual step of calling the Dashboard Admin API post-deployment to enable hybrid organization, which is essential for MDCB deployment. -
      -
    • - -
    • -
      -Enhanced security with customizable Pod or Container security context -To harden security, we have made security context of all Pods and Containers customizable. Also, we have set `runAsNonRoot: true` in all Pod's `securityContext`. This prevents the Pods from running as root users, ensuring compatibility with the [*Restricted* Pod Security Policy](https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted). -
      -
    • - -
    • -
      -Gateway: Allow Gateway to be updated if secret value is updated -We've introduced an annotation with a checksum of the secret as a value, triggering a deployment change when the secret is updated. This ensures that pods are replaced promptly, immediately utilizing the new values from the secret. This logic applies if `global.secrets.useSecretName` is not set, as the secret is then not part of the chart. -
      -
    • - -
    • -
      -Customizable Pod Labels Across All Components -Now, you have the flexibility to customize Pod labels in all component charts. Simply populate the `podLabels` field with your desired content, and it will be added as pod labels. -
      -
    • - -
    • -
      -Portal: Customizable Pod annotations in tyk-dev-portal -We've added a `podAnnotations` field to the `tyk-dev-portal` chart, allowing you to customize pod annotations. Fill in the `podAnnotations` field with your specific content, and it will be added as pod annotations. -
      -
    • - -
    - -##### Changed - -
      - -
    • -
      -Gateway/Pump: Removed the command in Gateway and Pump pod templates -We've removed unnecessary commands from the Gateway and Pump pod templates, allowing for the utilization of entrypoint scripts. -
      -
    • - -
    • -
      -Dashboard: Allow arbitary image tags in tyk-dashboard -Now, you can use arbitrary image tags, including non-Semantic Versioning tags like `latest` for Dashboard. We've bypassed version checking in the Dashboard Deployment template to accommodate this flexibility. -
      -
    • - - -
    • -
      -Dashboard: Classic portal bootstrapping disabled by default -To avoid confusion with the latest Developer Portal, Classic Portal bootstrapping is now disabled by default in the Dashboard. If you wish to utilize the Classic Portal, simply enable it by setting `tyk-bootstrap.bootstrap.portal` to `true` in either the Tyk Stack or Tyk Control Plane chart. -
      -
    • - -
    • -
      -Dashboard: Deprecation of `hashKeys` field -The `dashboard.hashKeys` field is now deprecated. Instead, users should utilize the `global.hashKeys` field to set key hashing. This ensures configuration alignment across Gateway, Dashboard, and MDCB components. -
      -
    • - -
    - -##### Fixed - -
      -
    • -
      -Global: Redis TLS version specification -We've corrected a typo in the values.yaml file within the "global.redis" section. The fields `sslMinVersion` and `sslMaxVersion` have been updated to `tlsMinVersion` and `tlsMaxVersion`, respectively. This ensures accurate specification of the Redis TLS version for enhanced security. -
      -
    • - -
    - - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.5.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.5.md deleted file mode 100644 index cf6c4048bc..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.5.md +++ /dev/null @@ -1,384 +0,0 @@ ---- -title: Tyk Charts 1.5 Release Notes -date: 2024-02-05T15:49:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 1.5 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v1.5" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 1.5.X displayed in a reverse chronological order** - -### Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.5.0 Release Notes - -##### Release Date 4 July 2024 - -#### Breaking Changes - -This release has no breaking changes. - - - - - - - - - - -#### 3rd Party Dependencies & Tools - - -With PostgreSQL v11 has reach [EOL](https://www.postgresql.org/support/versioning/) on November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{}}) we recommend that you upgrade to a version that we have tested with, as indicated below. - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations - -##### MDCB: Deprecated healthcheck_port and replaced with http_port - -Starting with MDCB v2.6.0, the configuration parameter `http_port` has been introduced to replace the original `healthcheck_port`. This new HTTP port is designed to expose various endpoints for monitoring and debugging MDCB. For consistency and future compatibility, it is recommended to use `mdcb.httpPort`. - -###### Backward compatibility: - -The `mdcb.httpPort` parameter is backward compatible, meaning it will function correctly with all existing MDCB versions, ensuring a smooth transition. - -###### Recommendations for users: - -- **Helm Chart Adjustments**: Update your Helm chart configurations to use `mdcb.httpPort` instead of `mdcb.probes.healthcheckPort` to define the HTTP port. - - - -#### Upgrade instructions - -For users currently on v1.4.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -#### Release Highlights - - -##### Updated default Tyk versions -Tyk Charts 1.5 will install the following Tyk component versions by default. -- Tyk Gateway v5.4.0 -- Tyk Dashboard v5.4.0 -- Tyk Pump v1.10.0 -- Tyk MDCB v2.6.0 -- Tyk Developer Portal v1.9.0 -- Tyk Operator v0.18.0 - -##### Tyk Operator is covered under the same umbrella -Tyk Operator can now be installed as an optional component alongside any of the following Tyk umbrella charts: -- tyk-oss -- tyk-stack -- tyk-control-plane - -With bootstrapping, the `tyk-operator-conf` secret will be automatically configured during the bootstrapping process. This means that the Tyk Operator will be ready for use with just one command, simplifying the deployment and configuration process. - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v1.5.0">}}) below. - -#### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.5.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.5.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.5.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.5.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.5.0) - -#### Changelog {#Changelog-v1.5.0} - - -##### Added - - -
      - -
    • -
      -Gateway: Add option to enable fixed window rate limiter - -New field `gateway.enableFixedWindowRateLimiter` added to `tyk-gateway` chart. - -This feature allows users to enable fixed window rate limiter in the Gateway. The fixed window rate limiter feature permits requests up to the configured rate limit within a specified time window, after which any additional requests are blocked until the next window. This method has minimal impact on Redis and is straightforward to implement. However, it should be noted that it does not protect against traffic spikes as it lacks spike arrest behavior. The default value for this setting is `false`. -
      -
    • - - -
    • -
      -Dashboard and Gateway: Add init containers resources parameters - -Optional parameters `dashboard.initContainers.initAnalyticsConf.resources` and `gateway.initContainers.setupDirectories.resources` added to set resources for init containers in Dashboard and Gateway charts respectively. - -This feature is introduced to allow the definition of resource parameters for init containers, which is particularly useful in environments with namespace quotas that require specific resource definitions. Users can now specify the resources for init containers to comply with namespace resource quotas, ensuring that the init containers operate within the defined resource limits. The resource parameters can be defined at below locations. - -Tyk Dashboard chart - -```yaml -dashboard: - initContainers: - initAnalyticsConf: - resources: {} - # If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi -``` - -Tyk Gateway chart - -```yaml -gateway: - initContainers: - setupDirectories: - resources: {} - # If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi -``` - -
      -
    • - -
    • -
      -MDCB: Added SSL configurations for MDCB HTTP server - -Added `mdcb.httpServerOptions` for SSL configuration of the MDCB HTTP server. - -This feature allows users to enable SSL for the MDCB HTTP server by configuring SSL-specific options. Users can enhance the security of their MDCB HTTP server by enabling SSL. The configuration includes settings such as `useSSL`, `certificateKeyFile`, `certificateCertFile`, and `minVersion`. For other HTTP server options, users can utilize `extraEnvs` to configure additional parameters. - -```yaml -mdcb: - # defines the SSL/TLS settings for the http server where the healthcheck is exposed - httpServerOptions: - # if enabled then the endpoints will be served over https - useSSL: true - certificateKeyFile: /path-to-cert-keyfile - certificateCertFile: /path-to-certfile - - # For TLS 1.0 use 769, for TLS 1.1 use 770, for TLS 1.2 use 771, for TLS 1.3 use 772 - minVersion: 771 -``` - -
      -
    • - -
    • -
      -MDCB: Deprecated Healthcheck Port and added HTTP Port - -`mdcb.httpPort` added to define the port used for accessing MDCB HTTP endpoints. - -This change deprecates the previous healthcheck port in favor of using a defined HTTP port for accessing MDCB HTTP endpoints. This update streamlines the configuration by consolidating the HTTP endpoints under a single port setting, making it simpler to manage and configure the MDCB health checks. - -```yaml -mdcb: - # This is the preferred port setting for MDCB >= v2.6.0. - # Users should use httpPort instead of probes.healthCheckPort for newer versions. - httpPort: 8181 - - probes: - # This port lets MDCB allow standard health checks. - # It also defines the path for liveness and readiness probes. - # It is used to set TYK_MDCB_HEALTHCHECKPORT and TYK_MDCB_HTTPPORT when mdcb >= v2.6.0 - # This field will be deprecated in upcoming release. Use `httpPort` instead. - # healthCheckPort: 8181 -``` - -
      -
    • - -
    • -
      -Add tyk-operator dependency to umbrella charts - -`global.components.operator` added to determine whether the Tyk Operator component should be installed. - -This feature adds a dependency on the Tyk Operator to the umbrella charts, facilitating the installation of the Tyk Operator component. Users can now easily install the Tyk Operator component by setting the `global.components.operator` parameter. Note that the Tyk Operator requires `cert-manager` to be installed beforehand. It also expects secret `tyk-operator-conf` is present in the installation namespace. You can enable bootstrapping at `global.components.bootstrap` if you are working on a new installation to have this secret created for you. Refer to the Tyk Operator [installation guide]({{}}) for detailed information on pre-requisites. - -```yaml -global: - components: - # operator determines whether Tyk Operator component should be installed or not. - # Tyk Operator needs cert-manager to be installed beforehand. Make sure that cert-manager is installed. - # For further details, please refer to https://tyk.io/docs//api-management/automations#install-and-configure-tyk-operator/ - operator: false -``` - -
      -
    • - -
    • -
      -Add annotations to Tyk Stack and component Helm Charts - -Introduced `annotations` values to the Tyk stack and component Helm charts to define annotations for Deployments or StatefulSets. - -This enhancement allows users to define custom annotations for the Deployments or StatefulSets of Tyk components. Annotations are useful for supporting automated reloading of the Gateway or other components using tools like reloader. Previously, the Helm charts did not support any annotations at the deployment level. - -Users can now add custom annotations to facilitate automation and improve the management of Tyk components. The following annotations have been added: -- Dashboard: `dashboard.annotations` for Tyk Dashboard Deployment/StatefulSet -- Dev Portal: `annotations` for Tyk Developer Portal Deployment/StatefulSet -- Gateway: `gateway.annotations` for Tyk Gateway Deployment/StatefulSet -- MDCB: `mdcb.annotations` for MDCB Deployment/StatefulSet -- Pump: `pump.annotations` for Tyk Pump Deployment - -
      -
    • - -
    - - - -##### Fixed - -
      - -
    • -
      -Dashboard: Fix misconfiguration preventing detail log display with Mongo Pump - -This fix addresses a misconfiguration in the Dashboard chart that was causing the Log Browser not showing API activity logs for users utilizing Mongo Pump. The default configuration `dashboard.useShardedAnalytics` is now set to `true`, ensuring proper log visibility. Users who use Mongo Pump will now be able to view the API activity log as expected. Additionally, the correct Dashboard environment variable `TYK_DB_USESHARDEDANLAYTICS` is now set using `dashboard.useShardedAnalytics`. This enhancement ensures accurate log visibility and improves the overall user experience with the Dashboard by properly configuring sharded analytics. -
      -
    • - -
    • -
      -Gateway: Fix issue with control port and `latest` container image tag - -Resolved an issue in the Gateway chart that prevented the use of a container image with the `latest` tag when `gateway.control.enabled` is set to `true`. - -This fix addresses a problem in the Gateway chart where enabling the control port (`gateway.control.enabled`) would cause an error if the container image tag was set to `latest`. The helm chart template previously assumed that all images would use semantic versioning. - -Users can now use the `latest` tag for container images even when the control port is enabled. This enhancement removes the restriction and assumption of semantic versioning, providing more flexibility in specifying container image tags. -
      -
    • - -
    • -
      -Dev Portal: Fix issue that prevent bootstrap and developer portal to be enabled at the same time - -Resolved an issue in `tyk-stack` and `tyk-control-plane` chart that prevented bootstrap and devPortal components to be enabled at the same time. - -When user deploy Developer Portal using `tyk-stack` or `tyk-control-plane` Helm Chart, there was a problem before that bootstrapping and devPortal cannot be enabled at the same time. It was because dev portal was depending on secret `tyk-dev-portal-conf` to start up but the secret can only be created after all pods has been created successfully via the bootstrapping job. This problem arises when user use `--wait` flag in helm install or use ArgoCD for installation. - -We have fixed this issue by not passing required org ID and API key as command option during portal startup. The dev portal is configured after Pod creation via Dev Portal API. -
      -
    • - -
    - - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.6.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.6.md deleted file mode 100644 index 2b7fab4f8c..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-1.6.md +++ /dev/null @@ -1,251 +0,0 @@ ---- -title: Tyk Charts 1.6 Release Notes -date: 2024-07-31T15:49:10Z -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 1.6 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v1.6" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 1.6.X displayed in a reverse chronological order** - -### Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.6.0 Release Notes - -##### Release Date 14 August 2024 - -#### Breaking Changes - -This release has no breaking changes. - - - - - - - - - - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations - -There are no deprecation in this release. - - - -#### Upgrade instructions - -For users currently on v1.4.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -#### Release Highlights - - -##### Updated MDCB Health check probes -MDCB v2.7.0 release introduces `/liveness` and `/readiness` probes which give more accurate and detail health check information. MDCB deployment has been updated to use the new endpoints. See [MDCB Health Check]({{}}) section for information about the new probes. - -##### Updated default Tyk versions -Tyk Charts 1.6 will install the following Tyk component versions by default. -- Tyk Gateway v5.5.0 -- Tyk Dashboard v5.5.0 -- Tyk Pump v1.11.0 -- Tyk MDCB v2.7.0 -- Tyk Developer Portal v1.10.0 -- Tyk Operator v0.18.0 - -#### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v1.6.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/1.6.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/1.6.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/1.6.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/1.6.0) - -#### Changelog {#Changelog-v1.6.0} - - -##### Added - - -
      - -
    • -
      -MDCB: Added option to configure healthcheck cache renewal period - -Added `mdcb.healthcheck.cache_renewal_period` which configures the time interval (in seconds) at which the healthchecker refreshes its cached health status information (Redis and DB). Default to 10 (seconds). -
      -
    • - -
    • -
      -MDCB: Added Ingress to HTTP services - -Added Ingress resource for MDCB HTTP service at port `http_port`. - -```yaml -tyk-mdcb: - mdcb: - # New HTTP ingress for port 8181 - http_ingress: - enabled: false - # className specifies your ingress controller class name below - className: "" - # annotations specifies annotations to be added on Ingress resource. - annotations: { } - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - # hosts corresponds to the rules to be added on Ingress rules. - hosts: - - host: mdcb-http.example.com - paths: - - path: / - pathType: ImplementationSpecific - # tls corresponds to the tls configuration if Ingress rules use TLS - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local -``` -
      -
    • - -
    - - - -
      - -
    • -
      -MDCB: Updated liveness and readiness probes - -Updated MDCB liveness and readiness probes to `/liveness` and `/readiness` respectively. These endpoints are available from MDCB v2.7.0. If you are deploying an earlier version of MDCB, please update the paths to `/health` in values.yaml file. -For more details about new endpoints, check [MDCB Health check]({{}}) section. -
      -
    • -
    - -##### Fixed -
      - -
    • -
      -Portal: Ingress resource should not be created if not enabled - -Fixed the issue that when Developer Portal component is enabled, an Ingress resource is being created, although Portal Ingress is not enabled. -
      -
    • - - -
    - - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.0.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.0.md deleted file mode 100644 index e2ae85523b..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.0.md +++ /dev/null @@ -1,264 +0,0 @@ ---- -title: Tyk Charts 2.0 Release Notes -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 2.0 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v2.0" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 2.0.X displayed in a reverse chronological order** - -### Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 2.0.0 Release Notes - -##### Release Date 26 September 2024 - -#### Breaking Changes - -#### 1. URL Path Matching Configuration Changes - -Tyk Charts v2.0 introduces a **breaking change** related to URL path matching behavior in the Tyk Gateway. If you are using Tyk Gateway versions 5.0.14 (2023 LTS), 5.3.5 (2024 LTS), or 5.5.1 (latest feature branch) or above, two new configuration options have been added to the Gateway: - -- `http_server_options.enable_path_prefix_matching` -- `http_server_options.enable_path_suffix_matching` - -These options allow more restrictive URL path matching by controlling whether the request path matches the start or end of the specified pattern. If both are set to `true`, Tyk enforces "exact" path matching. By default, these options are set to `false` in the Gateway to avoid breaking existing configurations. - -However, starting with **Tyk Charts v2.0**, these options will be set to `true` by default, enforcing stricter security by requiring precise path matches. This change applies to new installations or upgrades via Tyk Charts v2.0 and above. - -From this version of Tyk Charts we also set the following configuration option to `true` by default as part of the stricter path matching: - -- `http_server_options.enable_strict_routes` - -**Impact on existing users:** - -- The change is **backward-compatible** for users upgrading their Tyk Gateway directly (i.e. not via Helm Chart), because by default, these features will not be active. This ensures that existing configurations are not affected if you update the Gateway manually. -- However, **if you install or upgrade via Tyk Charts v2.0**, these options will be set to `true` by default. This means stricter URL path matching will be enforced automatically, which could impact your existing routes or configurations if you're not prepared for it. Please ensure you understand and test these new configurations before upgrading your production environment. - -**Action required:** - -- Familiarize yourself with URL matching in Tyk [here]({{}}). -- For production setup guidance, see [this guide]({{}}). -- Configure the new options via the Helm chart, and test the changes in a non-production environment before upgrading. - -#### 2. Default Tyk Component Versions - -This release changes the default component versions in Tyk Charts v2.0 to **Long-Term Support (LTS)** versions for greater stability in production environments. The new defaults are: - -|Tyk Component|Default Version|Customization Parameter| -|---|---|---| -|Tyk Gateway|5.3.5 LTS|`--set tyk-gateway.gateway.image.tag=`| -|Tyk Dashboard|5.3.5 LTS|`--set tyk-dashboard.dashboard.image.tag=`| -|Tyk Pump|1.11.0|`--set tyk-pump.pump.image.tag=`| -|Tyk MDCB|2.7.0|`--set tyk-mdcb.mdcb.image.tag=`| -|Tyk Developer Portal|1.10.0|`--set tyk-dev-portal.image.tag=`| -|Tyk Operator|0.18.0|`--set tyk-operator.image.tag=`| - -If you need to use a different version for any component, adjust the Helm chart parameters during installation or upgrade. - - - - - - - - - - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations - -There are no deprecation in this release. - - - -#### Upgrade instructions - -For users currently on v1.x.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -#### Release Highlights - - -##### Support Gateway configuration for URL path matching -The default Gateway configuration in the Helm chart will set Tyk's URL path matching to **exact** mode. This ensures that the request URL must exactly match the listen path and endpoint patterns configured in the API definition. - -##### Updated default Tyk versions -Tyk Charts 2.0 will install the following Tyk component versions by default. -- Tyk Gateway v5.3.5 -- Tyk Dashboard v5.3.5 -- Tyk Pump v1.11.0 -- Tyk MDCB v2.7.0 -- Tyk Developer Portal v1.10.0 -- Tyk Operator v0.18.0 - -#### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.0.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.0.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.0.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.0.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.0.0) - -#### Changelog {#Changelog-v2.0.0} - - -##### Added - - -
      - -
    • -
      -Support for New Path Matching Configuration Options - -Tyk Charts v2.0 introduces support for the newly added Tyk Gateway configuration options: `enable_path_prefix_matching` and `enable_path_suffix_matching`. These settings allow more secure and explicit URL matching by restricting path pattern matching to the start or end of the request path. This enhancement benefits customers who need more precise route matching to ensure that only intended paths are matched in production environments, reducing the risk of unintentional routing. - -URL path matching mode is configurable using these `tyk-gateway` chart parameters: - -- `gateway.enablePathPrefixMatching` (default to `true`) -- `gateway.enablePathSuffixMatching` (default to `true`) -- `gateway.enableStrictRoutes` (default to `true`) - -Learn more about the settings in the [URL Path Matching]({{}}) documentation. - -
      -
    • - -
    • -
      -Configuration for Extra Volume Mounts in Tyk-Bootstrap -This release adds support for `extraVolumes` and `extraVolumeMounts` parameters in the `tyk-bootstrap` charts, enabling users to mount additional volumes. This is especially useful for users with custom storage or configuration needs in their deployments, offering more flexibility in managing their Tyk installation. - -The options are configurable using these `tyk-bootstrap` chart's parameters: - -- `bootstrap.extraVolumes` (default to empty list) -- `bootstrap.extraVolumeMounts` (default to empty list) - -
      -
    • - -
    - - - -##### Changed - -
      - -
    • -
      -Default to Long-Term Support (LTS) Versions for Components -Tyk Charts v2.0 now defaults to Long-Term Support (LTS) versions for Tyk Gateway and Tyk Dashboard. This change ensures greater stability and long-term support for customers deploying Tyk in production environments, reducing the risk of issues due to feature branch releases. Users can still override these versions if needed, but the default will provide a more predictable upgrade path for most use cases. -
      -
    • - -
    - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.1.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.1.md deleted file mode 100644 index 796f323347..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.1.md +++ /dev/null @@ -1,206 +0,0 @@ ---- -title: Tyk Charts 2.1 Release Notes -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 2.1 series." -tags: ["Tyk Charts", "Release notes", "changelog", "v2.1" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 2.1.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 2.1.0 Release Notes - -### Release Date 10 Oct 2024 - -### Release Highlights - - -Added the ability to specify a static IP for Kubernetes LoadBalancer services, giving users more control over network configurations for the Tyk Gateway and Dashboard. Added an option to configure the Dashboard container port, addressing issues with restricted port permissions. Updated the default versions of Tyk components. - -For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v2.1.0) below. - -### Breaking Changes - -This release has no breaking changes. - -However, if you are upgrading to [Tyk Operator v1.0]({{}}) using the Helm Chart, please read the [license requirement]({{}}) and Tyk Operator [installation and upgrade instructions]({{}}) carefully. - - - - - - - - - - -### Dependencies {#dependencies-2.1} - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecation in this release. - - - -### Upgrade instructions - -For users currently on v2.0.x, we strongly recommend promptly upgrading to the latest release. -
    - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.1.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.1.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.1.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.1.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.1.0) - -### Changelog {#Changelog-v2.1.0} - -#### Added - -
      - -
    • -
      -Ability to specify static IP for Kubernetes LoadBalancer service - -Added an optional `loadBalancerIP` parameter in the chart that allows users to set a static IP for Tyk Gateway and Dashboard services when using the `LoadBalancer` service type. This update provides enhanced control over IP configuration, useful for network stability in environments with multiple load balancers. - -Tyk gateway service configuration: -- `tyk-gateway.gateway.service.loadBalancerIP` (default to "") - -Tyk Dashboard service configuration: -- `tyk-dashboard.dashboard.service.loadBalancerIP` (default to "") - -
      -
    • - -
    • -
      -Ability to configure Dashboard container port - -Enables specifying an alternate port for the container while using standard ports in the service. This option resolves permission issues associated with restricted ports, such as port 443, within containers. - -
      -
    • - -
    • -
      -From v1.0 Tyk Operator Requires License Key - -Starting from Tyk Operator v1.0, a license key is required to use the Tyk Operator. You can provide it while installing Tyk Stack, Tyk Control Plane, or Tyk OSS helm chart by setting `global.license.operator` field. You can also set license key via a Kubernetes secret using `global.secrets.useSecretName` field. The secret should contain a key called `OperatorLicense`. - -
      -
    • - -
    - -#### Changed - -
      - -
    • -
      -Updated default versions of Tyk components -Tyk Charts 2.1 will install the following Tyk component versions by default. -- Tyk Gateway v5.3.6 -- Tyk Dashboard v5.3.6 -- Tyk Pump v1.11.0 -- Tyk MDCB v2.7.1 -- Tyk Developer Portal v1.10.0 -- Tyk Operator v1.0.0 -
      -
    • - -
    - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md b/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md deleted file mode 100644 index 5caccc6487..0000000000 --- a/tyk-docs/content/product-stack/tyk-charts/release-notes/version-2.2.md +++ /dev/null @@ -1,296 +0,0 @@ ---- -title: Tyk Charts 2.2 Release Notes -description: "Release notes documenting updates, enhancements and changes for Tyk Charts versions within the 2.2 series." -tags: ["Tyk Charts", "Release notes", "changelog", "Helm Chart", "v2.2" ] ---- - -****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - - -**This page contains all release notes for version 2.2.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 2.2.0 Release Notes - -### Release Date 09 December 2024 - -### Release Highlights - - -The Tyk Helm Charts v2.2.0 release brings exciting new features, improvements, and crucial fixes to enhance deployment flexibility, customization, and reliability. Here are the highlights: -* Sidecar containers support -* Dashboard enhancements: Configurable audit log storage, Open Policy Agent (OPA) settings -* Gateway enhancements: Custom liveness and readiness probes, enhanced logging configuration, customizable HPA behavior -* Operator updates: Custom deployment annotations, - -For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v2.2.0) below. - -### Breaking Changes - -This release has no breaking changes. - - - - - - - - - - -### Dependencies {#dependencies-2.2} - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x, 1.27.x, 1.28.x, 1.29.x, 1.30.x | 1.19+ | | -| [Helm](https://helm.sh) | 3.14.x | 3.x | | -| [Redis](https://redis.io) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway and Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard, Pump, and MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard, Pump, and MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecation in this release. - - - -### Upgrade instructions - - -You can use helm upgrade to upgrade your release - -```bash -helm repo add tyk-helm https://helm.tyk.io/public/helm/charts/ -helm repo update - -helm upgrade [RELEASE_NAME] tyk-helm/[CHART_NAME] -``` - -### Downloads -- [Source code](https://github.com/TykTechnologies/tyk-charts/archive/refs/tags/v2.2.0.tar.gz) -- [ArtifactHub - tyk-stack](https://artifacthub.io/packages/helm/tyk-helm/tyk-stack/2.2.0) -- [ArtifactHub - tyk-control-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-control-plane/2.2.0) -- [ArtifactHub - tyk-data-plane](https://artifacthub.io/packages/helm/tyk-helm/tyk-data-plane/2.2.0) -- [ArtifactHub - tyk-oss](https://artifacthub.io/packages/helm/tyk-helm/tyk-oss/2.2.0) - -### Changelog {#Changelog-v2.2.0} - -#### Added - -
      - -
    • -
      -Global: Configurable Tyk streams setting - -User can enable or disable Tyk Streams feature via `global.streaming.enabled`. This option is enabled by default. -
      -
    • - -
    • -
      -Dashboard: Configurable audit log storage - -Introduced new configuration options to manage audit logging for the Tyk Dashboard. This enhancement allows users to enable, customize, and specify how audit logs are stored and formatted. - -To configure, see [Tyk Stack]({{}}) documentation. -
      -
    • - -
    • -
      -Dashboard: Configurable Open Policy Agent (OPA) settings - -Introduced new options to enable and manage Open Policy Agent (OPA) support directly from the Helm chart. This feature simplifies the configuration process, guiding users to use the correct settings without relying on extraEnvs. - -To configure, see [Tyk Stack]({{}}) documentation. -
      -
    • - -
    • -
      -Gateway: Configurable liveness and readiness probes - -Support for configuring liveness and readiness probes for the Tyk Gateway via Helm charts. - -Users can now define custom configurations for these probes, providing more flexibility and control over health checks in Kubernetes deployments. Defaults are provided if custom configurations are not specified. - -This enhancement improves deployment reliability and ensures better integration with Kubernetes health monitoring systems. - -To configure, see [Tyk Stack]({{}}) documentation. -
      -
    • - -
    • -
      -Gateway: Enhanced log configuration - -Support for configuring the Tyk Gateway logging level and format through new fields under `.Values.gateway.log` in the Helm chart values.yaml. - -This enhancement enables fine-tuned control over logging behavior directly from the Helm chart, simplifying deployment customization. -
      -
    • - -
    • -
      -Gateway: Customizable HPA behavior - -Users can now define custom HPA behavior settings directly in the Helm values file via a new field a new field: `.Values.gateway.autoscaling.behavior`. - -This enhancement provides more flexibility in configuring HPA scaling behavior, allowing tailored performance tuning for Gateway deployments. -
      -
    • - -
    • -
      -Operator: Support for adding custom annotations to the Tyk Operator deployment - -Users can now specify annotations directly in the Helm values field `.Values.annotations`, enabling better integration with external tools and systems that rely on metadata annotations. -
      -
    • - -
    • -
      -Configurable sidecar containers - -Support for adding sidecar containers for Tyk components, enhancing flexibility and integration capabilities. This feature allows for the addition of auxiliary containers through `extraContainers` field to the following components: - -- Tyk Gateway -- Tyk Dashboard -- Tyk MDCB -- Tyk Pump -- Tyk Enterprise Developer Portal - -
      -
    • - -
    - -#### Changed - -
      - -
    • -
      -Updated default versions of Tyk components - - Tyk Charts 2.2 will install the following Tyk component versions by default. - - - Tyk Gateway v5.3.8 - - Tyk Dashboard v5.3.8 - - Tyk Pump v1.11.1 - - Tyk MDCB v2.7.2 - - Tyk Developer Portal v1.12.0 - - Tyk Operator v1.1.0 - -
      -
    • - -
    - -#### Fixed - -
      - -
    • -
      -Gateway: Corrected template name for OpenTelemetry caFilePath - -Corrected the template name for the OpenTelemetry caFilePath in the Gateway configuration. -Updated template reference from `otel-CAPath` to `otel-tlsCAPath` to ensure proper functionality. -This fix addresses misconfigurations related to the OpenTelemetry TLS CA path and ensures accurate rendering of Gateway templates. -
      -
    • - -
    • -
      -MDCB: Fixed MDCB service configuration when using LoadBalancer as the service type - -The `externalTrafficPolicy` field is now correctly set under the spec section instead of selectors. -This fix ensures proper functionality and alignment with Kubernetes service configuration requirements. -
      -
    • - -
    • -
      -Tyk Operator license key handling in tyk-oss chart - -Resolved an issue where the Tyk OSS chart did not set the Operator license key in the secret created for the Operator. This fix ensures seamless configuration of the license key when deploying Tyk Operator. -
      -
    • - -
    - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md index d70e24ebba..e50ba2c97e 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-control-plane-chart.md @@ -504,7 +504,7 @@ In Tyk control plane, Tyk Gateway acts as a management gateway that is used for Configure the following details below, inside the `tyk-gateway` section. #### Update Tyk Gateway Version -Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. +Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. #### Enabling TLS diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md index 5ae7e5d6a4..93da92f786 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-data-plane-chart.md @@ -331,7 +331,7 @@ global: Configure below inside `tyk-gateway` section. #### Update Tyk Gateway Version -Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. +Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. #### Enabling TLS diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md index 8f9e7549aa..a739f018d1 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-oss-chart.md @@ -238,7 +238,7 @@ operatorSecret: Configure below inside `tyk-gateway` section. #### Update Tyk Gateway Version -Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/u/tykio). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. +Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/u/tykio). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. #### Enabling TLS diff --git a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md index 60074430c6..32fe9c1318 100644 --- a/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md +++ b/tyk-docs/content/product-stack/tyk-charts/tyk-stack-chart.md @@ -487,7 +487,7 @@ Note: If you are using `global.secrets.useSecretName`, you must configure the op This section explains how to configure the `tyk-gateway` section for updating the Gateway version, enabling TLS, enabling autoscaling etc. #### Update Tyk Gateway Version -Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. +Set version of gateway at `tyk-gateway.gateway.image.tag`. You can find the list of version tags available from [Docker hub](https://hub.docker.com/r/tykio/tyk-gateway/tags). Please check [Tyk Release notes]({{}}) carefully while upgrading or downgrading. #### Enabling TLS diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4.md deleted file mode 100644 index f33901c511..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4.md +++ /dev/null @@ -1,295 +0,0 @@ ---- -date: 2017-03-24T09:58:52Z -title: Tyk Dashboard v2.4 -tags: ["Tyk", "Release notes", "Dashboard", "v2.4", "2.4"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.4/ ---- - -## New in this release: - -This release touch all our products and brings you numerous long awaited features and fixes. -Here are the packages and their versions we are releasing today: Tyk Gateway v2.4.0, Tyk Dashboard v1.4.0, Tyk Pump v0.4.2, MDCB v1.4.0, TIB v0.2. - -## Major highlights - -### Mutual TLS - -A major feature of this release is the implementation of Mutual TLS. Now you can protect your APIs by allow listing certificates, idenitfy users based on them, and increase security between Tyk and upstream API. For details, see [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). - - -### Extended use of Multiple Policies - -We have extended support for partitioned policies, and you can now mix them up when creating a key. Each policy should have own partition, and will not intersect, to avoid conflicts while merging their rules. - -Using this approach could be useful when you have lot of APIs and multiple subscription options. Before, you had to create a separate policy per API and subscription option. - -Using multiple partitioned policies you can create basic building blocks separately for accessing rules, rate limits and policies, and then mix them for the key, to creating unique combination that fit your needs. - -We have added a new `apply_policies` field to the Key definition, which is an string array of Policy IDs. -> **NOTE**: The old key apply_policy_id is supported, but is now deprecated. - -We have updated the Dashboard **Apply Policies** section of the **Add Key** section. - -{{< img src="/img/release-notes/apply_policy.png" alt="apply-policy" >}} - -For this release multiple policies are only supported only via the Add Key section and via the API. Support for OIDC, oAuth, and Portal API Catalogs are planned for subsequent releases. - -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -### Global API Rate Limits - -We have added a new API definition field `global_rate_limit` which specifies a global API rate limit in the following format: `{"rate": 10, "per": 1}`, similar to policies or keys. - -The API rate limit is an aggregate value across all users, which works in parallel with user rate limits, but has higher priority. - -Extended Dashboard API designer Rate Limiting and Quotas section in Core settings: - -{{< img src="/img/release-notes/rate_limits.png" alt="rate-limits" >}} - -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -### Specify custom analytics tags using HTTP headers - -We have added a new API definition field `tag_headers` which specifies a string array of HTTP headers which can be extracted and turned to tags. - -For example if you include `X-Request-ID` header to tag_headers, for each incoming request it will include a `x-request-id-` tag to request an analytic record. - -This functionality can be useful if you need to pass additional information from the request to the analytics, without enabling detailed logging, which records the full request and response objects. - -We have added a new **Tag headers** section to the Dashboard **API Designer Advanced** tab. - -{{< img src="/img/release-notes/tag_headers.png" alt="tag_headers" >}} - -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -### Single-Sign-On (SSO) improvements - -More SSO functionality is something that a lot of our customers have been asking for. In this release we've significantly improved our support for SSO, and you can now: - -* Enable Tyk Identity Broker to apply LDAP filters to user search [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/ldap" >}}) -* Set permissions for your users, logged via SSO, via `sso_permission_defaults` in Dashboard config file. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) -* Setup a login page redirect, using `sso_custom_login_url` and `sso_custom_portal_login_url` Dashboard config options to enable users login using a custom SSO login page. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) -* For those who love to build everything in-house, we have added new API for custom dashboard authentication integrations. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/custom" >}}) - -## Moar! -This release is packed with way more more cool stuff. Here are detailed release notes for each product: - -### Tyk Gateway v2.4.0 - -#### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -#### Global API rate limits -[Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) - -#### Specify custom analytics tags using HTTP headers -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -#### Attaching Multiple Policies to the Keys -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -#### Default User Agent set to Tyk/$VERSION -If no user agent is specified in a request, it is now set as `Tyk/$VERSION`. - -#### Include `x-tyk-api-expires` date header for versioned APIs -If a request is made for an API which has an expiry date, the response will include the `x-tyk-api-expires` header with expiry date. - -[Docs]({{< ref "getting-started/key-concepts/versioning" >}}) - -#### Run Admin Control API on a separate port -Using `control_api_port` option in configuration file, you can run the admin control api on a separate port, and hide it behind firewall if needed. - -[Docs]({{< ref "tyk-oss-gateway/configuration#control_api_port" >}}) - -#### Added a Configuration Linter - -We have added a new `tyk lint ` command which will validate your `tyk.conf` file and validate it for syntax correctness, misspelled attribute names or format of values. The Syntax can be: - -`tyk lint` or `tyk --conf=path lint` - -If `--conf` is not used, the first of the following paths to exist is used: - -`./tyk.conf` -`/etc/tyk/tyk.conf` - -[Docs]({{< ref "tyk-oss-gateway/configuration" >}}) - -#### Set log_level from tyk.conf - -We have added a new `log_level` configuration variable to `tyk.conf` to control logging level. - -Possible values are: `debug`, `info`, `warn`, `error` - -[Docs]({{< ref "tyk-oss-gateway/configuration#log_level" >}}) - -#### Added jsonMarshal to body transform templates - -We have added the `jsonMarshal` helper to the body transform templates. You can apply jsonMarshal on a string in order to perform JSON style character escaping, and on complex objects to serialise them to a JSON string. - -Example: `{{ .myField | jsonMarshal }}` - -[Docs]({{< ref "transform-traffic/request-body" >}}) - -#### Added a blocking reload endpoint - -Now you can add a `?block=true` argument to the `/tyk/reload` API endpoint, which will block a response, until the reload is performed. This can be useful in scripting environments like CI/CD workflows. - -[Docs]({{< ref "tyk-gateway-api" >}}) - -#### `tyk_js_path` file now contains only user code - -Internal JS API not budled into tyk binary, and `js/tyk.js` file used only for custom user code. It is recommended to delete this file, if you are not using it, or remove Tyk internal code from it. New releases do not ship this file by default. - -#### Improved Swagger API import defaults - -When importing Swagger based APIs they now generate tracked URLs instead of allow listed ones. - -[More](https://github.com/TykTechnologies/tyk/issues/643) - -#### Respond with 503 if all hosts are down. -Previously, the internal load balancer was cycling though hosts even if they were known as down. - -#### Request with OPTIONS method should not be cached. -[More](https://github.com/TykTechnologies/tyk/issues/376) - -#### Health check API is officially deprecated. -This was very resource consuming and unstable feature. We recommend using load balancers of your choice for this. - -#### Fixed custom error templates for authentication errors. -[More](https://github.com/TykTechnologies/tyk/issues/438) - - -### Tyk Dashboard v1.4.0 - -#### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -#### Global API rate limits -[Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) - -#### Specify custom analytics tags using HTTP headers -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -#### Attaching Multiple Policies to the Keys -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -#### Set permissions for users logged via SSO (Tyk Identity Broker) -Added new option `sso_permission_defaults` in Dashboard config file. -Example: - -``` -"sso_permission_defaults": { - "analytics": "read", - "apis": "write", - "hooks": "write", - "idm": "write", - "keys": "write", - "policy": "write", - "portal": "write", - "system": "write", - "users": "write" -}, -``` -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) - -#### Set custom login pages for portal and dashboard -If you are using 3-rd party authentification like TIB, you maybe want to redirect from standard login pages to your own using following attributes in dashboard config: `sso_custom_login_url`, `sso_custom_portal_login_url`. - -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) - -#### Added new set of APIs for custom dashboard authentification -Added new `/admin/sso` endpoint for custom integration. In fact, the same API is used by our own Tyk Identity Broker. - -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/custom" >}}) - - -#### Service discovery form improved with most common pre-defined templates - -Now you can pre-fill the form with most popular templates like consul or etcd. - -#### RPC credentials renamed to Organization ID -Yay! - -#### Replaced text areas with a code editors - -All multi-line text fields now replaced with a code editors. - -#### Replace dropdowns with the live search component - -All the dropdown lists now support live search, and work with a large number of elements (especially handy for API or Policiy lists). - -#### Display user ID and email on when listing users - -The **Users list** now displays the **User ID** and **Email**. - -#### Added search for portal developers - -We have added search for the users listed in the developer portal. - -#### Key request email link to developer details - -The email address in a **Key Request** from the **Developer Portal** is now a link to the relevant developer profile. - -#### Country code in log browser links to geo report - -The country code in the log browser has been changed to a link to the geographic report. - -#### Added support for HEAD methods in the Dashboard API Designer. - -#### Redirect user to the login page if session is timed out. - -#### When creating a portal API catalog, you can now attach documentation without saving the catalog first. - -#### Fixed the` proxy.preserve_host_header` field when saved via the UI. -Previously, the field was available in the API definition, but got removed if the API was saved via the UI. - -#### Fixed the port removal in service discovery properties. -https://github.com/TykTechnologies/tyk-analytics-ui/issues/12 - -#### Prevent an admin user revoking their own permissions. -This is a UI only fix, it is still allowable via the API (which is OK). - -#### Other UX Improvements - -* Key pieces of data made accessible to quickly copy+paste -* Improved help tips -* Get your API URL without having to save and go back -* Improved pagination -* Improved feedback messaging -* Improved charts -* Improved analytics search - -## Tyk Pump v0.4.2 - -#### Support added for Mongo SSL connections - -See https://tyk.io/docs/configure/tyk-pump-configuration/ for a sample pump.conf file. - -### MDCB v1.4.0 -Added support for Mutual TLS, mentioned by Gateway and Dashboard above. See [Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -Also fixed bug when Mongo connections became growing though the roof if client with wrong credentials tries to connect. - - -### TIB v0.2 - -Tyk Identity Broker now fully support LDAP search with complex filters! [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/ldap" >}}) - -### Upgrading all new Components - -> **NOTE**: This release is fully compatible with the previous version, except that if you want to use new features, like Mutual TLS, you need to upgrade all the related components. - -Cloud users will be automatically upgraded to the new release. - -Hybrid users should follow the upgrade instructions [here]({{< ref "upgrading-tyk#upgrade-guides-toc" >}}). - -Self-Managed users can download the new release packages from their usual repositories. - -[3]: /img/release-notes/tag_headers.png -[4]: /img/release-notes/import_api_definition.png -[5]: /img/release-notes/live_search.png -[6]: /img/release-notes/user_list.png -[7]: /img/release-notes/dev_list.png -[8]: /img/release-notes/key_request_user.png - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5.md deleted file mode 100644 index 2372b8e9ef..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5.md +++ /dev/null @@ -1,208 +0,0 @@ ---- -date: 2017-03-24T09:58:52Z -title: Tyk Dashboard v2.5 -tags: ["Tyk", "Release notes", "Dashboard", "v2.5", "2.5"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.5/ ---- - -## New in this Release: - -This release touches all our products and brings you numerous features and fixes. Here are the packages and their versions we are releasing today: Tyk Gateway v2.5.0, Tyk Dashboard v1.5.0, Tyk Pump v0.6.0, MDCB v1.5.0, TIB v0.3. - - -## Major Highlights - -### New Dashboard Look and Feel - -Our Dashboard has had a UI overhaul, with the following improvements: - -* A more modern, fun look and feel -* Consistent layouts and action buttons across each section -* Better feedback on errors and updates -* Various UX improvements - -### SSO with OpenId Identity Providers - -With TIB v0.3 we have made it possible to integrate any OpenID supported Identity provider with Tyk so you can configure Single Sign On (SSO), if the provider supports those. - -### Searching API and Policies List - -This long awaited feature has been added on the Dashboard UI. - -### Default API Versioning - -You can now specify a default API version when using a versioning strategy. - -### Tyk Pump with MDCB - -We've added MDCB support in this release of Tyk Pump - -## Moar! -This release is packed with way more more cool stuff. Here are detailed release notes for each product: - -### Tyk Gateway v2.5.0 - -#### New Relic Instrumentation Support - -We have added support for New Relic Instrumentation using: - -`"newrelic": {"app_name": "", "license_key": ""}` - -[Docs]({{< ref "basic-config-and-security/report-monitor-trigger-events/instrumentation" >}}) - -#### Default API Versioning - -You can now specify a default API version, and it will be used if a version is not set via headers, or URL parameters. Use the new option: - -`spec.version_data.default_version` - -[Docs]({{< ref "getting-started/key-concepts/versioning" >}}) - -#### Disable URL Encoding - -You can disable URL encoding using a new boolean `http_server_options` setting: - -`skip_target_path_escaping` - -[Docs]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) - -#### Enable Key Logging - -By default all key ids in logs are hidden. You can now turn it on if you want to see them for debugging reasons using the `enable_key_logging` option. - -[Docs]({{< ref "tyk-oss-gateway/configuration#enable_key_logging" >}}) - - -#### Specify TLS Cipher Suites - -We have added support for specifying allowed SSL ciphers using the following option: - -`http_server_options - ssl_ciphers` - -[Docs]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) - -### Plugins Updates - -* Coprocess plugins now have access to `config_data` -* The JSVM `spec` object now has access to `APIID` and `OriginID` to reflect similar functionality of Coprocess plugins. -* Plugins now have access to Host HTTP Header. - -[JSVM Docs]({{< ref "plugins/supported-languages/javascript-middleware/middleware-scripting-guide" >}}) -[Plugin Data Structure Docs]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-data-structures" >}}) - - -### Tyk Dashboard v1.5.0 - -#### A Fresh Look and Feel - -With this release we have refreshed the entire Dashboard UI with a new look-and-feel, bringing with it such improvements as: - -* A more modern, fun look and feel -* Consistent layouts and action buttons across each section -* Better feedback on errors and updates -* UX improvements - -#### Search on API and Policy List Pages - -We have added API and Policy search functionality, which should help those with long lists. - -* [API Docs]({{< ref "tyk-apis/tyk-dashboard-api/api-definitions" >}}) -* [Policy Docs]({{< ref "tyk-apis/tyk-dashboard-api/portal-policies" >}}) - -#### A New, Interactive Getting Started Walkthrough - -We have swapped out the old Getting started tutorial and added a new interactive one, which should make it easier for new users to get started with the Dashboard UI. - -#### Advanced URL Rewrites - -We have extended the URL Rewrite plugin functionality by enabling users to create more advanced rewrite rules based on Header matches, Query string variable/value matches, Path part matches, (i.e. components of the path itself), Session metadata values, and Payload matches. - -[Docs]({{< ref "transform-traffic/url-rewriting" >}}) - -#### Portal Session Lifetime - -You can now control the portal session lifetime using the `portal_session_lifetime` config variable. - -[Docs](https://tyk.io/docs/configure/tyk-dashboard-configuration-options/) - -#### Configure Port for WebSockets - -We have added `notifications_listen_port` option to configure the port used by WebSockets for real-time notifications. - -[Docs]({{< ref "tyk-oss-gateway/configuration" >}}) - -#### Slug - -Once set, the API slug will no longer be overridden when the API title is changed. - -#### Custom Domain - -We have fixed the API URL if a custom domain is set. - - -### Tyk Pump v0.5.0 - -#### Splunk Support - -We added support for forwarding analytics data to Splunk. A sample configuration is: - -``` -"pumps": { - "splunk": { - "name": "splunk", - "meta": { - "collector_token": "", - "collector_url": "https://.cloud.splunk.com: - 8088", - "ssl_insecure_skip_verify": true - } - } -}, -``` - -#### Analytics Collection Capping - -Detailed analytics collection capping is now enabled by default and configurable via the `collection_cap_enable` and `collection_cap_max_size_bytes` options. - - - -### MDCB v1.5.0 - -We've introduced long awaited support for using Tyk Pump in conjunction with MDCB to use any of services supported by Tyk Pump, like ElasticSearch, Splunk and etc. This works by setting `forward_analytics_to_pump` to true, which disables analytics processing by MDCB itself, and enables the forwarding of all data to Tyk Pump running inside your management environment. - - -### TIB v0.3 - -With this release, you now can use any OpenID Connect compatible provider with TIB. This means that you can use almost any Identity management solution, supporting OpenID, like Okta, Ping or Keycloak. - -Use `SocialProvider` with the following options: - -``` -"UseProviders": [{ - "Name": "openid-connect", - "Key": "CLIENT-KEY", - "Secret": "CLIENT-SECRET", - "DiscoverURL": "https:///.well-known/openidconfiguration" -}] -``` - -### Packaging changes across all products - -New deb and rpm packages add the "tyk" user and group so that package files and directories would be owned by it and the process run with its effective uid and gid. In addition to this gateway PID now has to reside in its own sub-rundir due to this change, so that's created (and additionally managed by systemd where it's available), default pidfile location changed appropriately so that upgrade wouldn't require any config changes by the users. The gateway config file is now only readable and writable by the "tyk" user and group. This change is applied across all our products except Gateway: its changes scheduled to 2.6. - -The "default" init system files are not removed on upgrade/remove anymore so that it's now a way for users to run the respective process with custom environment variables. - -The bug with removal of init system files on upgrade in rpm-based systems is now fixed. - - -### Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk](https://tyk.io/docs/upgrading-tyk/). - -### Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6.md deleted file mode 100644 index 9cbe28bd49..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6.md +++ /dev/null @@ -1,402 +0,0 @@ ---- -title: Tyk Dashboard v2.6 -tags: ["Tyk", "Release notes", "Dashboard", "v2.6", "2.6"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.6/ ---- - -## New in this Release: - -### Tyk Gateway v2.6.0 - -#### Organization Level Rate Limiting - -Endpoints Create organization keys and -Add/update organization keys now allow you to set rate limits at an organization level. You will need to add the following fields in your create/add/update key request: - -* `"allowance"` -* `"rate"` - -These are the number of allowed requests for the specified `per` value, and need to be set to the same value. - -* `"per"` is the time period, in seconds. - -So, if you want to restrict an organization rate limit to 100 requests per second you will need to add the following to your request: -``` - "allowance": 100, - "rate": 100, - "per": 5 -``` - -> **NOTE:** if you don't want to have organization level rate limiting, set `"rate"` or `"per"` to zero, or don't add them to your request. - -See the Keys section of the [Tyk Gateway REST API]({{< ref "tyk-gateway-api" >}}) Swagger doc for more details. - -#### Keys hashing improvements - -Now it is possible to do more operations with key by hash (when we set `"hash_keys":` to `true` in `tyk.conf`): - -- endpoints `POST /keys/create`, `POST /keys` and `POST /keys/{keyName}` also return field `"key_hash"` for future use -- endpoint `GET /keys` get all (or per API) key hashes. You can disable this endpoint by using the new `tyk.conf` setting `enable_hashed_keys_listing` (set to false by default) -- endpoint `GET /keys/{keyName}` was modified to be able to get a key by hash. You just need provide the key hash as a `keyName` -and call it with the new optional query parameter `hashed=true`. So the new format is `GET /keys/{keyName}?hashed=true"` -- also, we already have the same optional parameter for endpoint `DELETE /keys/{keyName}?hashed=true` - -#### JSON schema validation - -You can now use Tyk to verify user requests against a specified JSON schema and check that the data sent to your API by a consumer is in the right format. This means you can offload data validation from your application to us. - -If it's not in the right format, then the request will be rejected. And even better, the response will be a meaningful error rather than just a 'computer says no'. - -Schema validation is implemented as for the rest of our plugins, and its configuration should be added to `extended_paths` in the following format: -``` -"validate_json": [{ - "method": "POST", - "path": "me", - "schema": {..schema..}, // JSON object - "error_response_code": 422 // 422 default however can override. -}] -``` - -The schema must be a draft v4 JSON Schema spec, see http://json-schema.org/specification-links.html#draft-4 for details. An example schema can look like this: -``` -{ - "title": "Person", - "type": "object", - "properties": { - "firstName": { - "type": "string" - }, - "lastName": { - "type": "string" - }, - "age": { - "description": "Age in years", - "type": "integer", - "minimum": 0 - } - }, - "required": ["firstName", "lastName"] -} -``` - -#### New endpoint to get list of tokens generated for provided OAuth-client - -`GET /oauth/clients/{apiID}/{oauthClientId}/tokens` - -This endpoint allows you to retrieve a list of all current tokens and their expiry date issued for a provided API ID and OAuth-client ID in the following format. New endpoint will work only for newly created tokens: -``` -[ - { - "code": "5a7d110be6355b0c071cc339327563cb45174ae387f52f87a80d2496", - "expires": 1518158407 - }, - { - "code": "5a7d110be6355b0c071cc33988884222b0cf436eba7979c6c51d6dbd", - "expires": 1518158594 - }, - { - "code": "5a7d110be6355b0c071cc33990bac8b5261041c5a7d585bff291fec4", - "expires": 1518158638 - }, - { - "code": "5a7d110be6355b0c071cc339a66afe75521f49388065a106ef45af54", - "expires": 1518159792 - } -] -``` - -You can control how long you want to store expired tokens in this list using `oauth_token_expired_retain_period ` which specifies the retain period for expired tokens stored in Redis. The value is in seconds, and the default value is `0`. Using the default value means expired tokens are never removed from Redis. - -#### Creating OAuth clients with access to multiple APIs - -When creating a client using `POST /oauth/clients/create`, the `api_id` is now optional - these changes make the endpoint more generic. If you provide the `api_id` it works the same as in previous releases. If you don't provide the `api_id` the request uses policy access rights and enumerates APIs from their setting in the newly created OAuth-client. - -At the moment this changes not reflected on Dashboard UI yet, as we going to do major OAuth improvements in 2.7 - -#### Certificate public key pinning - -Certificate pinning is a feature which allows you to allow public keys used to generate certificates, so you will be protected in case an upstream certificate is compromised. - -Using Tyk you can allow one or multiple public keys per domain. Wildcard domains are also supported. - -Public keys are stored inside the Tyk certificate storage, so you can use Certificate API to manage them. - -You can define them globally, from the Tyk Gateway configuration file using the `security.pinned_public_keys` option, or via an API definition `pinned_public_keys` field, using the following format: -``` -{ - "example.com": "", - "foo.com": "/path/to/pub.pem", - "*.wild.com": "," -} -``` - -For `key-id` you should set the ID returned after you upload the public key using the Certificate API. Additionally, you can just set path to public key, located on your server. You can specify multiple public keys by separating their IDs by a comma. - -Note that only public keys in PEM format are supported. - -If public keys are not provided by your upstream, you can extract them -by yourself using the following command: -> openssl s_client -connect the.host.name:443 | openssl x509 -pubkey -noout - -If you already have a certificate, and just need to get its public key, you can do it using the following command: -> openssl x509 -pubkey -noout -in cert.pem - -**Note:** Upstream certificates now also have wildcard domain support - -#### JQ transformations (experimental support) - -> This feature is experimental and can be used only if you compile Tyk yourself own using `jq` tag: `go build --tags 'jq'` - -If you work with JSON you are probably aware of the popular `jq` command line JSON processor. For more details, see here https://stedolan.github.io/jq/ - -Now you can use the full power of its queries and transformations to transform requests, responses, headers and even context variables. - -We have added two new plugins: - -* `transform_jq` - for request transforms. -* `transform_jq_response` - for response transforms - -Both have the same structure, similar to the rest of our plugins: -`{ "path": "", "method": "", "filter": "" }` - -#### Request Transforms -Inside a request transform you can use following variables: -* `.body` - your current request body -* `._tyk_context` - Tyk context variables. You can use it to access request headers as well. - -Your JQ request transform should return an object in the following format: -`{ "body": , "rewrite_headers": , "tyk_context": }`. - -`body` is required, while `rewrite_headers` and `tyk_context` are optional. - - -#### Response Transforms -Inside a response transform you can use following variables: -* `.body` - your current response body -* `._tyk_context` - Tyk context variables. You can use it to access request headers as well. -* `._tyk_response_headers` - Access to response headers - -Your JQ response transform should return an object in the following format: -`{ "body": , "rewrite_headers": }`. - -`body` is required, while `rewrite_headers` is optional. - -#### Example -``` -"extended_paths": { - "transform_jq": [{ - "path": "/post", - "method": "POST", - "filter": "{\"body\": (.body + {\"TRANSFORMED-REQUEST-BY-JQ\": true, path: ._tyk_context.path, user_agent: ._tyk_context.headers_User_Agent}), \"rewrite_headers\": {\"X-added-rewrite-headers\": \"test\"}, \"tyk_context\": {\"m2m_origin\": \"CSE3219/C9886\", \"deviceid\": .body.DEVICEID}}" - }], - "transform_jq_response": [{ - "path": "/post", - "method": "POST", - "filter": "{\"body\": (.body + {\"TRANSFORMED-RESPONSE-BY-JQ\": true, \"HEADERS-OF-RESPONSE\": ._tyk_response_headers}), \"rewrite_headers\": {\"JQ-Response-header\": .body.origin}}" - }] -} -``` - - -### Tyk Dashboard v1.6.0 - -#### API categories - -You can apply multiple categories to an API definition, and then filter by these categories on the API list page. - -They might refer to the APIs general focus: 'weather', 'share prices'; geographic location 'APAC', 'EMEA'; or technical markers 'Dev', 'Test'. It's completely up to you. - -From an API perspective, categories are stored inside API definition `name` field like this: "Api name #category1 #category2", e.g. categories just appended to the end of the name. - -Added new API `/api/apis/categories` to return list of all categories and belonging APIs. - -#### Raw API Definition mode - -Now you can directly edit a raw API definition JSON object directly from the API Designer, by selecting either the **Raw API Definition** or the **API Designer** at the top of the API Designer screen. - -{{< img src="/img/dashboard/system-management/raw_or_designer_mode.png" alt="Raw or Designer" >}} - -This feature comes especially handy if you need copy paste parts of one API to another, or if you need to access fields not yet exposed to the Dashboard UI. - -#### Certificate public key pinning - -You can configure certificate pinning on the **Advanced** tab of the API Designer, using a similar method to how you specify upstream client certificates. - -{{< img src="/img/release-notes/certificate_pinning.png" alt="Certificate Pinning" >}} - -#### JSON schema validation - -Reflecting the Tyk Gateway changes, on the Dashboard we have added a new **Validate JSON** plugin, which you can specify per URL, and can set both a schema, and custom error code, if needed. - -#### Improved key hashing support - -The Tyk Dashboard API reflects changes made in the v2.6.0 Gateway API, and now supports more operations with key by hash (when we have set `"hash_keys":` to ` true` in `tyk_analytics.conf`): - -- endpoint `POST /keys/` also returns a new field `key_hash` per each key in the list -- endpoint `GET /apis/{apiId}/keys/{keyId}` supports query string parameter `hashed=true` to get the key info via hash -- endpoint `GET /apis/{apiId}/keys` returns keys hashes -- endpoint `DELETE /apis/{apiId}/keys?hashed=true` can delete a key by its hash, but its functionality is disabled by default, unless you set `enable_delete_key_by_hash` boolean option inside the Dashboard configuration file. - - -#### Key requests management API now supports OAuth - -For this release we've improved our developer portal APIs to fully support an OAuth2.0 based workflow. Developers using your API will now be able to register OAuth clients and manage them. - -This change is not yet supported by our built-in portal, but if you are using custom developer portals, you can start using this new functionality right away. Full UI support for built-in portal will be shipped with our next 2.7 release. - -Developers can request access to an API protected with OAuth and get OAuth client credentials. - -The endpoint `POST /api/portal/requests` now has an optional `"oauth_info"` field which identifies the OAuth key request. - -Example of the OAuth key request: -``` -{ - "by_user": "5a3b2e7798b28f03a4b7b3f0", - "date_created": "2018-01-15T04:49:20.992-04:00", - "for_plan": "5a52dfce1c3b4802c10053c8", - "version": "v2", - "oauth_info": { - "redirect_uri": "http://new1.com,http://new2.com" - } -} -``` - -Where: - -- `"by_user"` - contains the ID of portal developer who is requesting OAuth access -- `"for_plan"` - subscription ID -- `"version"` - is expected to have the value `"v2"` -- `"oauth_info"` - simple structure which contains a field with comma-separated list of redirect URI for OAuth flow - -A new field `"oauth_info"` will be present in replies for endpoints `GET /api/portal/requests/{id}` and `GET /api/portal/requests` - -When this kind of OAuth key request gets approved when using endpoint `PUT /api/portal/requests/approve/{id}` -a new OAuth-client is generated for a developer specified in the specified `"by_user"` field. - -Example of OAuth key request approval reply: -``` -{ - "client_id": "203defa5162b42708c6bcafcfa28c9fb", - "secret": "YjUxZDJjNmYtMzgwMy00YzllLWI2YzctYTUxODQ4ODYwNWQw", - "policy_id": "5a52dfce1c3b4802c10053c8", - "redirect_uri": "http://new1.com,http://new2.com" -} -``` - -Where: - -- `"client_id"` and `"secret"` are OAuth-client credentials used to request the get token (they are to be kept in secret) -- `"policy_id"` - the subscription this OAuth-client provides access to -- `"redirect_uri"` - with comma-separated list of redirect URI for OAuth flow - -Also, if you set email notifications in your portal, an email with the OAuth-client credentials will be sent to the developer -who made that OAuth key request. - -There is also a change in the reply from the `GET /api/portal/developers` endpoint.The developer object will have new field - -`"oauth_clients"` which will contain a mapping of subscription IDs to the list of OAuth clients that the developer requested and -was approved, i.e.: -``` -"oauth_clients": { - "5a52dfce1c3b4802c10053c8": [ - { - "client_id": "203defa5162b42708c6bcafcfa28c9fb", - "redirect_uri": "http://new1.com,http://new2.com", - "secret": "YjUxZDJjNmYtMzgwMy00YzllLWI2YzctYTUxODQ4ODYwNWQw" - } - ] -}, -``` - -#### New endpoints to get tokens per OAuth client - -These endpoints allow you to get a list of all current tokens issued for provided OAuth client ID: - -- `GET /apis/oauth/{apiId}/{oauthClientId}/tokens` -- `GET /apis/oauth/{oauthClientId}/tokens` when the API ID is unknown or OAuth-client provides access to several APIs - - -#### Renamed the response `_id` field to `id` in List Key Requests - -We have renamed the response `_id` field when retrieving a list of key requests to `id`. - -See [List Key Requests]({{< ref "tyk-apis/tyk-dashboard-api/manage-key-requests#list-key-requests" >}}) for more details. - - -#### Developers can request a password reset email - -If a developer forgets their password, they can now request a password reset email from the Developer Portal Login screen. - -{{< img src="/img/dashboard/portal-management/password_request.png" alt="Request email reset" >}} - -See [Developer Profiles]({{< ref "tyk-developer-portal/tyk-portal-classic/developer-profiles#reset-developer-password" >}}) for more details. - -#### SSO API custom email support - -Now you can set email address for users logging though the Dashboard SSO API, by adding an "Email" field to the JSON payload which you sent to `/admin/sso` endpoint. For example: -``` -POST /admin/sso HTTP/1.1 -Host: localhost:3000 -admin-auth: 12345 - -{ - "ForSection": "dashboard", - "Email": "user@example.com", - "OrgID": "588b4f0bb275ff0001cc7471" -} -``` - -#### Set Catalog settings for each individual API - -Now you can override the global catalog settings and specify settings per catalog. -The Catalog object now has `config` field, with exactly same structure as Portal Config, except new `override` boolean field. -If set, Catalog settings will override global ones. - -At the moment the following options can be overriden: `Key request fields`, `Require key approval` and `Redirect on key request` (with `Redirect to` option as well). - -#### {{}}Blocklist{{}} IP Support - -Tyk allows you to block IP Addresses, which is located in the **Advanced Options** tab in the **Endpoint Designer**. - -{{< img src="/img/release-notes/blacklist_option.png" alt="Blocklist Support" >}} - -### Tyk Identity Broker v0.4.0 - -With this release TIB joins the Tyk product line as a first class citizen and is now distributed via packages and [Docker image](https://hub.docker.com/r/tykio/tyk-identity-broker/). - -#### Support for SSO API email field -If IDP provides a user email, it should be passed to the Dashboard SSO API, and you should see it in the Dashboard UI. - -#### Improved support for local IDPs -If you run a local IDP, like Ping, with an untrusted SSL certificate, you can now turn off SSL verification by setting `SSLInsecureSkipVerify` to `true` in the TIB configuration file. - -#### Added Redis TLS support -To enable set `BackEnd.UseSSL` and, optionally, `BackEnd.SSLInsecureSkipVerify`. - -### Tyk Pump v0.5.2 - -#### Redis TLS support -Added new `redis_use_ssl` and `redis_ssl_insecure_skip_verify` options. - - -### Redis TLS support - -Many Redis hosting providers now support TLS and we're pleased to confirm that we do too. - -Whether it's the open source API Gateway, or Dashboard, Pump, Sink and Tyk Identity Broker (TIB): you can now make secure connections to Redis from all Tyk products, as long as your provider allows it. - -### MDCB v1.5.3 - -#### Redis TLS support -Added new `redis_use_ssl` and `redis_ssl_insecure_skip_verify` options. - -### Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk](https://tyk.io/docs/upgrading-tyk/). - -### Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7.md deleted file mode 100644 index ab19cea814..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Tyk Dashboard v2.7 -tags: ["Tyk", "Release notes", "Dashboard", "v2.7", "2.7"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.7/ ---- - -## New in this Release: - -### Tyk Gateway v2.7.0 - -#### Performance improvements - - -> **TLDR** -> To get benefit or performance improvements ensure that you have `close_connections` set to `false` and set `max_idle_connections_per_host` according to our [production perfomance guide]({{< ref "planning-for-production" >}}) - -We have thoroughly analyzed every part of our Gateway, and the results are astounding, up to 160% improvement, compared to our 2.6 release. - -Such a performance boost comes from various factors, such as optimizing our default configs, better HTTP connection re-use, optimization of the analytics processing pipeline, regexp caching, doing fewer queries to the database, and numerous small changes in each of the middleware we have. - -Our performance testing plan was focused on replicating our customer's setup, and try not to optimize for “benchmarks”: so no supercomputers and no sub-millisecond inner DC latency. Instead, we were testing on average performance 2 CPU Linode machine, with 50ms latency between Tyk and upstream. For testing, we used the Tyk Gateway in Hybrid mode, with a default config, except for a single 2.7 change where `max_idle_connections_per_host ` is set to 500, as apposed to 100 in 2.6. Test runner was using [Locust](https://locust.io/) framework and [Boomer](https://github.com/myzhan/boomer) for load generation. - -For a keyless API we were able to achieve 3.7K RPS (requests per second) for 2.7, while 2.6 showed about 2.5K RPS, which is a 47% improvement. - -For protected APIs, when Tyk needs to track both rate limits and quotas, 2.7 shows around 3.1K RPS, while 2.6 shows around 1.2K RPS, which is 160% improvement! - -In 2.7 we optimized the connection pool between Tyk and upstream, and previously `max_idle_connections_per_host` option was capped to 100. In 2.7 you can set it to any value. `max_idle_connections_per_host` by itself controls an amount of keep-alive connections between clients and Tyk. If you set this value too low, then Tyk will not re-use connections and will have to open a lot of new connections to your upstream. If you set this value too big, you may encounter issues with slow clients occupying your connection and you may reach OS limits. You can calculate the correct value using a straightforward formula: if latency between Tyk and Upstream is around 50ms, then a single connection can handle 1s / 50s = 20 requests. So if you plan to handle 2000 requests per second using Tyk, the size of your connection pool should be at least 2000 / 20 = 100. For example, on low-latency environments (like 5ms), a connection pool of 100 connections will be enough for 20k RPS. - -To get the benefit of optimized connection pooling, ensure that `close_connections` is set to `false`, which enables keep-alive between Tyk and Upstream. - -#### Custom key hashing algorithms - -Key hashing is a security technique introduced inside Tyk a long time ago, which allows you to prevent storing your API tokens in database, and instead, only store their hashes. Only API consumers have access to their API tokens, and API owners have access to the hashes, which gives them access to usage and analytics in a secure manner. Time goes on, algorithms age, and to keep up with the latest security trends, we introduce a way to change algorithms used for key hashing. - -This new feature is in public beta, and turned off by default, keeping old behavior when Tyk uses `murmur32` algorithm. To set the custom algorithm, you need to set `hash_key_function` to one of the following options: -- `murmur32` -- `murmur64` -- `murmur128` -- `sha256` - -MurMur non-cryptographic hash functions is considered as industry fastest and conflict-prone algorithms up to date, which gives a nice balance between security and performance. With this change you now you may choose the different hash length, depending on your organization security policies. As well, we have introduced a new `sha256` **cryptographic** key hashing algorithm, for cases when you are willing to sacrifice performance with additional security. - -Performance wise, setting new key hashing algorithms can increase key hash length, as well as key length itself, so expect that your analytics data size to grow (but not that much, up to 10%). Additionally, if you set the `sha256` algorithm, it will significantly slowdown Tyk, because `cryptographic` functions are slow by design but very secure. - -Technically wise, it is implemented by new key generation algorithms, which now embed additional metadata to the key itself, and if you are curious about the actual implementation details, feel free to check the following [pull request](https://github.com/TykTechnologies/tyk/pull/1753). - -Changing hashing algorithm is entirely backward compatible. All your existing keys will continue working with the old `murmur32` hashing algorithm, and your new keys will use algorithm specified in Tyk config. Moreover, changing algorithms is also backward compatible, and Tyk will maintain keys multiple hashing algorithms without any issues. - - -### Tyk Dashboard v1.7.0 - -#### User Groups - -Instead of setting permissions per user, you can now [create a user group]({{< ref "basic-config-and-security/security/dashboard/create-user-groups" >}}), and assign it to multiple users. It works for Single Sign-On too, just specify group ID during [SSO API]({{< ref "tyk-apis/tyk-dashboard-admin-api/sso" >}}) flow. - -This feature is available to all our Cloud and Hybrid users. For Self-Managed installations, this feature is available for customers with an "Unlimited" license. - -To manage user groups, ensure that you have either admin or “user groups” permission for your user, which can be enabled by your admin. - -From an API standpoint, user groups can be managed by [new Dashboard API]({{< ref "tyk-apis/tyk-dashboard-api/user-groups" >}}). The User object now has a new `group_id` field, and if it is specified, all permissions will be inherited from the specified group. [SSO API]({{< ref "tyk-apis/tyk-dashboard-admin-api/sso" >}}) has been updated to include `group_id` field as well. - -#### Added SMTP support -Now you can configure the Dashboard to send transactional emails using your SMTP provider. See [Outbound Email Configuration]({{< ref "configure/outbound-email-configuration" >}}) for details. - -#### Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk]({{< ref "upgrading-tyk" >}}). - -### Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) - - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8.md deleted file mode 100644 index 70385bc738..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: Tyk Dashboard v2.8 -tags: ["Tyk", "Release notes", "Dashboard", "v2.8", "2.8"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.8/ ---- - -## Debugger - -You can now safely test all API changes without publishing them, and visually see the whole request flow, including which plugins are running and even their individual logs. - -We have added a new `Debugging` tab in the API designer which provides a "Postman" like HTTP client interface to simulate queries for the current API definition being edited. - -You can even debug your virtual endpoints by dynamically modifying the code, sending the request via `Debugger` and watching the virtual endpoint plugin logs. - -See [Debugging Tab]({{< ref "advanced-configuration/transform-traffic/endpoint-designer#debugging" >}}) for more information. - ---- - -## Developer portal oAuth support - -The Developer portal now fully supports exposing oAuth2 APIs: - -* Developers can register their oAuth clients and see analytics -* Administrators can see list of oAuth clients from a developer screen - ---- - -## Multi-organization users - -NOTE: Currently only available with >2 node Dashboard license. - -You can now create users with the same email address in different organizations. Users will then be able to select an organization -when logging in, and can easily switch between organizations via the navigation menu. To enable set -`"enable_multi_org_users": true`. - ---- - -## Developer management improvements - -* You can now manually create developer subscriptions from the developer screen. -* We've added a quick way to change a subscription policy and reset a quota -* All actions on the developer screen now only require developer permissions - -## Dashboard Audit Log improvements - -There is a [new section]({{< ref "product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log" >}}) in the Tyk Dashboard config file where you can specify parameters for the audit log (containing audit records for all requests made to all endpoints under the `/api` route). - ---- - - -## Detailed changelog - -- Added API Debugger tab to the API Designer. -- Extended the Portal templating functionality. -- Similar to the Gateway, you now can specify a list of acceptable TLS ciphers using the - `http_server_options.cipher_suites` array option. -- Audit log improvements -- Exposing oAuth2 APIs to developer portal -- Allow for the retrieval of an API via it's external API -- Allow updating keys by hash -- Added support for `SMTP` noauth. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9.md deleted file mode 100644 index 42696ab3b7..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9.md +++ /dev/null @@ -1,155 +0,0 @@ ---- -title: Tyk Dashboard v2.9 -tags: ["Tyk", "Release notes", "Dashboard", "v2.9", "2.9"] -aliases: - - /product-stack/tyk-dashboard/release-notes/old-releases/version-2.9/ ---- - -### TCP Proxying - -Tyk now can be used as a reverse proxy for your TCP services. It means that you can put Tyk not only on top of your APIs, but on top of **any** network application, like databases, services using custom protocols and etc. - -The main benefit of using Tyk as your TCP proxy is that functionality you used to managed your APIs now can be used for your TCP services as well. Features like load balancing, service discovery, Mutual TLS (both authorization and communication with upstream), certificate pinning: all work exactly the same way as for your HTTP APIs. - -See our [TCP Proxy Docs]({{< ref "key-concepts/tcp-proxy" >}}) for more details. - -### APIs as Products - -With this release we have removed all the barriers on how you can mix and match policies together, providing you with ultimate flexibility for configuring your access rules. - -Now a key can have multiple policies, each containing rules for different APIs. In this case each distinct policy will have its own rate limit and quota counters. For example if the first policy gives access to `API1` and second policy to `API2` and `API3`, if you create a key with both policies, your user will have access to all three APIs, where `API1` will have quotas and rate limits defined inside the first policy, and `API2`, `API3` will have shared quotas and rate limits defined inside the second policy. - -Additionally you can now mix policies defined for the same API but having different path and methods access rules. For example you can have one policy which allows only access to `/users` and a second policy giving user access to a `/companies` path. If you create a key with both policies, their access rules will be merged, and user will get access to both paths. See [Multiple APIs for single Key Requests]({{< ref "tyk-developer-portal/tyk-portal-classic/portal-concepts#multiple-apis-for-a-single-key-request" >}}). - -#### Developer Portal Updates - -Developers now can have multiple API keys, and subscribe to multiple catalogs with a single key. Go to the Portal settings and set `Enable subscribing to multiple APIs with single key` option to enable this new flow. When enabled, developers will see the new API generation user interface, which allows users to request access to multiple Catalogs of the **same type** with a single key. - -From an implementation point of view, Developer objects now have a `Keys` attribute, which is the map where the key is a `key` and the value is an array of policy IDs. The `Subscriptions` field can be considered as deprecated, with retained backwards compatibility. We have added new set of Developer APIs to manage the keys, similar to the deprecated subscriptions APIs. - -Other changes: - -- Added two new Portal templates, which are used by a new key request flow `portal/templates/request_multi_key.html`, `portal/templates/request_multi_key_success.html` -- The Portal Catalog list page has been updated to show the Catalog authentication mode -- The API dashboard screen now show keys instead of subscriptions, and if subscribed to multiple policies, it will show the allowance rules for all catalogs. -- The Key request API has been updated to accept an `apply_policies` array instead of `for_plan` - -### JWT and OpenID scope support - -Now you can set granular permissions on per user basis, by injecting permissions to the "scope" claim of a JSON Web Token. To make it work you need to provide mapping between the scope and policy ID, and thanks to enchanced policy merging capabilities mentioned above, Tyk will read the scope value from the JWT and will generate dynamic access rules. Your JWT scopes can look like `"users:read companies:write"` or similar, it is up to your imagination. OpenID supports it as well, but at the moment only if your OIDC provider can generate ID tokens in JWT format (which is very common this days). - -See our [JWT Scope docs]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) for more details. - -### Go plugins - -[Go](https://golang.org/) is an open source programming language that makes it easy to build simple, reliable, and efficient software. The whole Tyk stack is written in Go language, and it is one of the reasons of behind our success. - -With this release you now can write native Go plugins for Tyk. Which means extreme flexibility and the best performance without any overhead. - -Your plugin can be as simple as: - -```{.go} -package main -import ( - "net/http" -) -// AddFooBarHeader adds custom "Foo: Bar" header to the request -func AddFooBarHeader(rw http.ResponseWriter, r *http.Request) { - r.Header.Add("Foo", "Bar") -} -``` - -See our [Golang plugin documentation]({{< ref "plugins/supported-languages/golang" >}}) for more details. - -### Distributed tracing - -We have listened to you, and tracing is recently one of your most common requests. Distributed tracing takes your monitoring and profiling experience to the next level, since you can see the whole request flow, even if it has complex route though multiple services. And inside this flow, you can go deep down into the details like individual middleware execution performance. -At the moment we are offering [OpenTracing](https://opentracing.io/) support, with [Zipkin](https://zipkin.io/) and [Jaeger](https://www.jaegertracing.io/) as supported tracers. - -See our [Distributed Tracing documentation]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview" >}}) for more details. - -### HMAC request signing - -Now Tyk can sign a request with HMAC, before sending to the upsteam target. - -This feature is implemented using [Draft 10](https://tools.ietf.org/html/draft-cavage-http-signatures-10) RFC. - -`(request-target)` and all the headers of the request will be used for generating signature string. -If the request doesn't contain a `Date` header, middleware will add one as it is required according to above draft. - -A new config option `request_signing` can be added in an API Definition to enable/disable the request signing. It has following format: - -```{.json} -"request_signing": { - "is_enabled": true, - "secret": "xxxx", - "key_id": "1", - "algorithm": "hmac-sha256" -} -``` - -The following algorithms are supported: - -1. `hmac-sha1` -2. `hmac-sha256` -3. `hmac-sha384` -4. `hmac-sha512` - -### Simplified Dashboard installation experience - -We worked a lot with our clients to build a way nicer on-boarding experience for Tyk. Instead of using the command line, you can just run the Dashboard, and complete a form which will configure your Dashboard. However, we did not forget about our experienced users too, and now provide a CLI enchanced tool for bootstrapping Tyk via a command line. - -See our updated [Getting Started]({{< ref "tyk-self-managed/install" >}}) section and [new CLI documentation]({{< ref "tyk-on-premises" >}}). - -### DNS Caching - -Added a global DNS cache in order to reduce the number of request to a Gateway's local DNS server and the appropriate gateway config section. This feature is turned off by default. - -``` -"dns_cache": { - "enabled": true, //Turned off by default - "ttl": 60, //Time in seconds before the record will be removed from cache - "multiple_ips_handle_strategy": "pick_first" //A strategy, which will be used when dns query will reply with more than 1 ip address per single host. -}, -``` - -### Python Plugin Improvements - -We have completed a massive rewrite of our Python scripting engine in order to simplify the installation and usage of Python scripts. From now on, you no longer need to use a separate Tyk binary for Python plugins. Everything is now bundled to the main binary. -This also means that you can combine JSVM, Python and Coprocess plugins inside the same installation. -In addition you can now use any Python 3.x version. Tyk will automatically detect a supported version and will load the required libraries. If you have multiple Python versions available, you can specify the exact version using `python_version`. - -### Importing Custom Keys using the Dashboard API - -Previously if you wanted migrate to Tyk and keep existing API keys, you had to use our low level Tyk Gateway API, which has lot of constraints, especially regarding complex setups with multiple organizations and data centers. - -We have introduced a new Dashboard API for importing custom keys, which is as simple as `POST /api/keys/{custom_key} {key-payload}`. This new API ensures that Keys from multiple orgs will not intersect, and it also works for multi-data center setups, and even Tyk SaaS. - -### Single sign on for the Tyk SaaS - -Before SSO was possible only for Tyk On-Premise, since it required access to low-level Dashboard Admin APIs. With 2.9 we have added new a new Dashboard SSO API, which you can use without having super admin access, and it works at the organization level. This means that all our Tyk SaaS users can use 3rd party IDPs to manage Dashboard users and Portal developers. - -> **NOTE**: This feature is available by request. Please contact our sales team for details. - -See our [Dashboard SSO documentation]({{< ref "tyk-apis/tyk-dashboard-api/sso" >}}) for more details. - -### Importing WSDL APIs - -WSDL now is a first class citizen at Tyk. You can take your WSDL definition and simply import to the Dashboard, creating a nice boilerplate for your service. See [Import APIs]({{< ref "getting-started/import-apis" >}}) for more details. - -### Updated Versions - -- Tyk Gateway 2.9.0 -- Tyk Dashboard 1.9.0 -- Tyk Pump 0.8.0 -- Tyk MDCB 1.7.0 - -### Upgrading From Version 2.8 - -#### Tyk On-Premises - -For this release, you should upgrade your Tyk Pump first. - -#### Tyk MDCB - -For this release, you should upgrade your MDCB component first. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md deleted file mode 100644 index c7e9d5fbdf..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/overview.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Tyk Dashboard Release Notes -description: "Links to Tyk major minor releases for Tyk Gateway" -tags: ["Release notes"] ---- - -This page provides access to release notes for Tyk Dashboard. Links to archived releases are also included. - -### Release 5 - -- [v5.7]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.7.md" >}}) -- [v5.6]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.6.md" >}}) -- [v5.5]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.5.md" >}}) -- [v5.4]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.4.md" >}}) -- [v5.3]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.3.md" >}}) - LTS -- [v5.2]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.2.md" >}}) -- [v5.1]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.1.md" >}}) -- [v5.0]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.0.md" >}}) - - -Historic release notes can be previewed by expanding the links in the sections below. - -### Release 4 -
    - - Click to expand - - -- [v4.3]({{< ref "product-stack/tyk-dashboard/release-notes/version-4.3.md" >}}) -- [v4.2]({{< ref "product-stack/tyk-dashboard/release-notes/version-4.2.md" >}}) -- [v4.1]({{< ref "product-stack/tyk-dashboard/release-notes/version-4.1.md" >}}) -- [v4.0]({{< ref "product-stack/tyk-dashboard/release-notes/version-4.0.md" >}}) -
    - -### Release 3 -
    - - Click to expand - - -- [v3.2]({{< ref "product-stack/tyk-dashboard/release-notes/version-3.2.md" >}}) -- [v3.1]({{< ref "product-stack/tyk-dashboard/release-notes/version-3.1.md" >}}) -- [v3.0]({{< ref "product-stack/tyk-dashboard/release-notes/version-3.0.md" >}}) -
    - -## Archived Releases - -### Release 2 -
    - - Click to expand - - -- [v2.9]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9.md" >}}) -- [v2.8]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8.md" >}}) -- [v2.7]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7.md" >}}) -- [v2.6]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6.md" >}}) -- [v2.5]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5.md" >}}) -- [v2.4]({{< ref "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4.md" >}}) -
    diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/release-highlights-and-upgrades/.placeholder b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/release-highlights-and-upgrades/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.0.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.0.md deleted file mode 100644 index b9873f1332..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.0.md +++ /dev/null @@ -1,123 +0,0 @@ ---- -title: Tyk Dashboard v3.0 -description: "Tyk Dashboard 3.0 release notes" -tags: ["release notes", "Tyk Dashboard", "v3.0", "3.0"] ---- - -## Release Highlights - -#### Version changes and LTS releases - -We have bumped our major Tyk Gateway version from 2 to 3, a long overdue change as we’ve been on version 2 for 3 years. We have also changed our Tyk Dashboard major version from 1 to 3, and from now on it will always be aligned with the Tyk Gateway for major and minor releases. The Tyk Pump has also now updated to 1.0, so we can better indicate major changes in future. - -Importantly, such a big change in versions does not mean that we going to break backward compatibility. More-over we are restructuring our internal release strategy to guarantee more stability and to allow us to deliver all Tyk products at a faster pace. We aim to bring more clarity to our users on the stability criteria they can expect, based on the version number. -Additionally we are introducing Long Term Releases (also known as LTS). - -Read more about this changes in our blogpost: https://tyk.io/introducing-long-term-support-some-changes-to-our-release-process-product-versioning/ - -#### New Look and Feel - -We have a brand new look to our Tyk Dashboard. About half a year ago, we made some changes to our visual branding to better express our love for creativity and great UX. Those changes started with our website and now we are also incorporating these visual changes into the UI of our products. We do this to keep our brand consistent across the whole Tyk experience and to enhance your experience using our products. - -See our updated [Tutorials]({{< ref "getting-started/installation" >}}) section. - -#### Universal Data Graph and GraphQL - -Tyk now supports GraphQL **natively**. This means Tyk doesn’t have to use any external services or process for any GraphQL middleware. You can securely expose existing GraphQL APIs using our GraphQL core functionality. - -In addition to this you can also use Tyk’s integrated GraphQL engine to build a Universal Data Graph. The Universal Data Graph (UDG) lets you expose existing services as one single combined GraphQL API. - -All this without even have to build your own GraphQL server. If you have existing REST APIs all you have to do is configure the UDG and Tyk has done the work for you. - -With the Universal Data Graph Tyk becomes your central integration point for all your internal as well as external APIs. In addition to this, the UDG benefits from all existing solutions that already come with your Tyk installation. That is, your Data Graph will be secure from the start and there’s a large array of out of the box middlewares you can build on to power your Graph. - -Read more about the [GraphQL]({{< ref "graphql" >}}) and [Universal Data Graph]({{< ref "universal-data-graph" >}}) - - -#### Policies and Keys UX changes - -We have a lot to update you on with our UX & UI revamp, but one thing we want to highlight here are the updates to the policies and keys Dashboard pages. We know there was confusion in the way we set policies and keys up in the Tyk Dashboard, so we redesigned the UI workflow to make it less error-prone, simpler and more intuitive when you create, view and edit security policies and keys. - -When you create, view or edit a key the steps are in a more logical order. We’ve removed the long form that needed to be filled out and replaced it with tabs so you can find and enter information easily. We’ve also grouped all information within each API so you know the exact set up of each of your access rights without any confusion. The new workflow should allow tasks to be completed faster and more efficiently. - -See updated tutorials on how to [create a policy]({{< ref "getting-started/create-security-policy" >}}) and [keys]({{< ref "getting-started/create-api-key" >}}) - -We also have a [blog post](https://tyk.io/the-transformation-of-policies-and-keys/) that explains what we've done, and why we did it. - - -#### Tyk Identity broker now built-in to the Dashboard - -Previously you had to run a separate process to setup SSO (single sign on). Now this functionality is built-in to the dashboard and got UI revamp. So now you can just start the dashboard, and via UI, create a SSO flow, without installing 3-rd party components. Including SSO via social logins, OpenID Connect and LDAP (with SAML coming very soon!) including integration with the Dashboards RBAC and your Identity Provider. - -See [updated flow details]({{< ref "tyk-identity-broker" >}}) - - -#### Using external secret management services - -Want to reference secrets from a KV store in your API definitions? We now have native Vault & Consul integration. You can even pull from a tyk.conf dictionary or environment variable file. - -[Read more]({{< ref "tyk-configuration-reference/kv-store" >}}) - - -#### Co-Process Response Plugins - -We added a new middleware hook allowing middleware to modify the response from the upstream. Using response middleware you can transform, inspect or obfuscate parts of the response body or response headers, or fire an event or webhook based on information received by the upstream service. - -At the moment the Response hook is supported for [Python and gRPC plugins]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-work#coprocess-dispatcher---hooks" >}}). - - -#### Enhanced Gateway health check API - -Now the standard Health Check API response include information about health of the dashboard, redis and mdcb connections. -You can configure notifications or load balancer rules, based on new data. For example, you can be notified if your Tyk Gateway can’t connect to the Dashboard (or even if it was working correctly with the last known configuration). - -[Read More]({{< ref "planning-for-production/ensure-high-availability/health-check" >}}) - -#### Enhanced Detailed logging -Detailed logging is used in a lot of the cases for debugging issues. Now as well as enabling detailed logging globally (which can cause a huge overhead with lots of traffic), you can enable it for a single key, or specific APIs. - -New detailed logging changes are available only to our Self-Managed customers currently. - -[Read More]({{< ref "tyk-stack/tyk-pump/useful-debug-modes" >}}) - -#### Better Redis failover - -Now, if Redis is not available, Tyk will be more gracefully handle this scenario, and instead of simply timing out the Redis connection, will dynamically disable functionality which depends on redis, like rate limits or quotas, and will re-enable it back once Redis is available. The Tyk Gateway can even be started without Redis, which makes possible scenarios, such as when the Gateway proxies Redis though itself, like in a Redis Sentinel setup. - -#### Weight-Based Load Balancing - -The Tyk Dashboard now allows you to control weighting of the upstreams, when using load balancing functionality. For example now you can configure Tyk to send 20% of traffic to one upstream, with 80% to another upstream service. - -This enables you to perform Canary or A/B tests of their APIs and services. Similarly, if caches require warming, then we can send a low % of traffic to these services, and when confident that they can handle the load, start incrementally sending a higher % of traffic to these services. - -[Read More]({{< ref "planning-for-production/ensure-high-availability/load-balancing#configure-load-balancing-and-weighting-via-the-dashboard" >}}) - -#### Ability to shard analytics to different data-sinks - -In a multi-org deployment, each organization, team, or environment might have their preferred analytics tooling. At present, when sending analytics to the Tyk Pump, we do not discriminate analytics by org - meaning that we have to send all analytics to the same database - e.g. MongoDB. Now the Tyk Pump can be configured to send analytics for different organizations to different places. E.g. Org A can send their analytics to MongoDB + DataDog. But Org B can send their analytics to DataDog + expose the Prometheus metrics endpoint. - -It also becomes possible to put a {{}}blocklist{{}} in-place, meaning that some data sinks can receive information for all orgs, whereas others will not receive OrgA’s analytics if blocked. - -This change requires updating to new Tyk Pump 1.0 - -[Read More]({{< ref "tyk-pump/configuration" >}}) - -#### 404 Error logging - unmatched paths - -Concerned that client’s are getting a 404 response? Could it be that the API definition or URL rewrites have been misconfigured? Telling Tyk to track 404 logs, will cause the Tyk Gateway to produce error logs showing that a particular resource has not been found. - -The feature can be enabled by setting the config `track_404_logs` to `true` in the gateway's config file. - - -## Changelog -- Fixed the bug when tokens created with non empty quota, and quota expiration set to `Never`, were treated as having unlimited quota. Now such tokens will stop working, once initial quota is reached. - -## Updated Versions - -- Tyk Dashboard 3.0 -- Tyk Pump 1.0 - -## Upgrading From Version 2.9 - -No specific actions required. -If you are upgrading from version 2.8, pls [read this guide]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md#upgrading-from-version-28" >}}) diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.1.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.1.md deleted file mode 100644 index d42e87ec29..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.1.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -title: Tyk Dashboard v3.1 -description: "Tyk Dashboard 3.1 release notes" -tags: ["release notes", "Tyk Dashboard", "v3.1", "3.1"] ---- - -## Release Highlights - -#### Identity Management UX and SAML support -You will notice that the experience for creating a new profile in the Identity management section of the dashboard was changed to a ‘wizard’ approach which reduces the time it takes to get started and configure a profile. -In addition, users are now able to use SAML for the dashboard and portal login, whether you use TIB(Tyk Identity Broker) internally or externally of the dashboard. - -This follows the recent changes that we have made to embed TIB (Tyk Identity Broker)in the dashboard. See 3.0 [release notes](https://tyk.io/docs/release-notes/version-3.0/) for more information regarding this. - -To learn more [see the documentation](https://tyk.io/docs/getting-started/tyk-components/identity-broker/) - -#### UDG (Universal Data Graph) & GraphQL -##### Schema Validation - -For any GraphQL API that is created via Dashboard or through our API, the GraphQL schema is now validated before saving the definition. Instant feedback is returned in case of error. - -##### Sync / Update schema with upstream API (Proxy Only Mode) - -If you’ve configured just a proxy GraphQL API, you can now keep in sync the upstream schema with the one from the API definition, just by clicking on the `Get latest version` button on the `Schema` tab from API Designer - -Docs [here](https://tyk.io/docs/graphql/syncing-schema/) - -##### Debug logs - -You can now see what responses are being returned by the data sources used while configuring a UDG (universal data graph). These can be seen by calling the `/api/debug` API or using the playground tab within API designer. - -The data that will be displayed will show information on the query before and after the request to a data source happens, as follows: - -Before the request is sent: - -Example log message: "Query.countries: preSendHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Fieldname and Upstream url; - - -After the request is sent: - -Example log message: "Query.countries: postReceiveHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Filename, response body, status code. - -Example: - -```{"typename": "Query", "fielname": "countries", "response_body": "{\"data\":{}}", "status_code": 200}``` - -Docs [here](https://tyk.io/docs/graphql/graphql-playground/) - -#### Portal -##### GraphQL Documentation - -Documentation for the GraphQL APIs that you are exposing to the portal is available now through a GraphQL Playground UI component, same as on the playground tab of API Designer. - -Also to overcome the CORS issues that you might encounter while testing documentation pages on the portal, we have pre-filled the CORS settings section in API Designer with explicit values from the start. All you need to do is to check the “Enable CORS” option. - -##### Portal - API key is hidden in email -You now have the option to hide the API key in the email generated after you approve the key request for a developer. - -[Docs here](https://tyk.io/docs/tyk-developer-portal/key-requests/) - - -## Changelog -The 3.1 version includes the fixes that are part of 3.0.1. -https://github.com/TykTechnologies/tyk/releases/tag/v3.0.1 - - -## Updated Versions -- Tyk Dashboard 3.1 - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.2.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.2.md deleted file mode 100644 index af405ef83b..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-3.2.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Tyk Dashboard v3.2 -description: "Tyk Dashboard 3.2 release notes" -tags: ["release notes", "Tyk Dashboard", "v3.2", "3.2"] ---- - -## Release Notes - -#### Bring your own Identity Provider - Dynamic Client Registration now available! - -DCR is a protocol of the Internet Engineering Task Force put in place to set standards in the dynamic registration of clients with authorization servers. This feature is a way for you to integrate your Tyk Developer Portal with an external identity provider such as Keycloak, Gluu, Auth0 or Okta. -The portal developer won't notice a difference. However, when they create the app via Tyk Developer portal, Tyk will dynamically register that client on your authorization server. This means that it is the Authorization Server that will issue the Client ID and Client Secret for the app. - -Check our DCR docs [here]({{< ref "/tyk-developer-portal/tyk-portal-classic/dynamic-client-registration" >}}) - -We also took this opportunity to give a refresh to the portal settings UI so let us know if you like it! - -#### GraphQL and UDG improvements - -We've updated the GraphQL functionality of our [Universal Data Graph]({{< ref "universal-data-graph" >}}). You’re now able to deeply nest GraphQL & REST APIs and stitch them together in any possible way. - -Queries are now possible via WebSockets and Subscriptions are coming in the next Release (3.3.0). - -You're also able to configure [upstream Headers dynamically]({{< ref "universal-data-graph/udg-getting-started/header-forwarding" >}}), that is, you’re able to inject Headers from the client request into UDG upstream requests. For example, it can be used to acccess protected upstreams. - -We've added an easy to use URL-Builder to make it easier for you to inject object fields into REST API URLs when stitching REST APIs within UDG. - -Query-depth limits can now be configured on a per-field level. - -If you’re using GraphQL upstream services with UDG, you’re now able to forward upstream error objects through UDG so that they can be exposed to the client. - - -#### Extendable Tyk Dashboard permissions system - -The Tyk Dashboard permission system can now be extended by writing custom rules using an Open Policy Agent (OPA). The rule engine works on top of the Tyk Dashboard API, which means you can control not only access rules, but also the behavior of all Dashboard APIs (except your public developer portal). You can find more details about OPA [here]({{< ref "/content/tyk-dashboard/open-policy-agent.md" >}}). - -In addition, you can now create your own custom permissions using the Additional Permissions API or by updating `security.additional_permissions` map in the Tyk Dashboard config, and writing Opa rule containing logic for the new permission. - -## Changelog - -In addition to the above, version 3.2 includes all the fixes that are part of 3.0.5 -https://github.com/TykTechnologies/tyk/releases/tag/v3.0.5 - -## Updated Versions -Tyk Dashboard 3.2 - -## Upgrade process -If you already have GraphQL or UDG APIs you need to follow this upgrade guide https://tyk.io/docs/graphql/migration-guide/ diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.0.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.0.md deleted file mode 100644 index b5dc954b1c..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.0.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: Tyk Dashboard v4.0 -description: "Tyk Dashboard 4.0 release notes" -tags: ["release notes", "Tyk Dashboard", "v4.0", "4.0"] ---- - -## Release Highlights - -#### GraphQL federation - -As we know, ease-of-use is an important factor when adopting GraphQL. Modern enterprises have dozens of backend services and need a way to provide a unified interface for querying them. Building a single, monolithic GraphQL server is not the best option. It is hard to maintain and leads to a lot of dependencies and over-complication. - -To remedy this, Tyk 4.0 offers GraphQL federation that allows the division of GraphQL implementation across multiple backend services, while still exposing them all as a single graph for the consumers. Subgraphs represent backend services and define a distinct GraphQL schema. A subgraph can be queried directly, as a separate service or federated in the Tyk Gateway into a larger schema of a supergraph – a composition of several subgraphs that allows execution of a query across multiple services in the backend. - -[Federation docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md" >}}) - -[Subgraphs and Supergraphs docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md#subgraphs-and-supergraphs" >}}) - -#### GraphQL subscriptions - -Subscriptions are a way to push data from the server to the clients that choose to listen to real-time messages from the server, using the WebSocket protocol. There is no need to enable subscriptions separately; Tyk supports them alongside GraphQL as standard. - -With release 4.0, users can federate GraphQL APIs that support subscriptions. Federating subscriptions means that events pushed to consumers can be enriched with information from other federated graphs. - -[Subscriptions docs]({{< ref "/content/getting-started/key-concepts/graphql-subscriptions.md" >}}) - -#### SQL database support -The other major capability in Tyk 4.0 is that the Tyk Dashboard can store its data in a SQL  relational database.  - -Until now, Tyk Dashboard has used MongoDB for storing everything from data such as APIs, policies and users through to analytics and logs. MongoDB is still a great storage choice for most projects. However, not all users have MongoDB as part of their tech stack. Some are in heavily regulated industries which means adding it would be a pain. For others, the document storage type and lack of proper ACID transaction support may not be the best solution. These users can now choose a SQL database solution instead.  - -From version 4.0, Tyk Dashboard and Tyk Pump will support four data storage layers, which can be configured separately, each with a different officially supported database solution (if needed). All data stored in SQL databases will provide the same information in the Dashboard that MongoDB did. - -While SQL support for Tyk products does not depend on specific database features, with this release, we will provide official support for [PostgreSQL DB for production purposes]({{< ref "/content/planning-for-production/database-settings.md" >}}), and SQLite for development and PoC environments. Note that SQL support is available for self-managed setups only. - -As part of SQL support we are also providing tooling to perform seamless migration of your Dashboard data from Mongo to SQL. However, at the moment migration of analytics data is not supported. -[MongoDB to SQL migration docs]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}) - -## Changelog -- Now it is possible to configure GraphQL upstream authentification, in order for Tyk to work with its schema -- JWT scopes now support arrray and comma delimeters -- Go plugins can be attached on per-endpoint level, similar to virtual endpoints - -## Updated Versions -Tyk Dashboard 4.0 -Tyk Pump 1.5 - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.1.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.1.md deleted file mode 100644 index 2ce09ad9af..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.1.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: Tyk Dashboard v4.1 -description: "Tyk Dashboard 4.1 release notes" -tags: ["release notes", "Tyk Dashboard", "v4.1", "4.1"] ---- - -## Release Highlights - -#### OpenAPI as a native API definition format -Tyk has always had a proprietary specification for defining APIs. From Tyk v4.1 we now support defining APIs using the Open API Specification (OAS) as well, which can offer significant time and complexity savings. [This is an early access capability]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}). - -As we extend our OAS support, we would very much like your feedback on how we can extend and update to best meet your needs: . - -This capability is available in both the open source and paid versions of Tyk. See our [High Level Concepts]({{< ref "getting-started/key-concepts/high-level-concepts" >}}) for more details, or jump to [OAS Getting Started documentation]({{< ref "getting-started/using-oas-definitions/create-an-oas-api" >}}). - - -#### MDCB Synchroniser - -Tyk Gateway v4.1 enables an improved synchroniser functionality within Multi Data Center Bridge (MDCB) v2.0. Prior to this release, the API keys, certificates and OAuth clients required by worker Gateways were synchronised from the controller Gateway on-demand. With Gateway v4.1 and MDCB v2.0 we introduce proactive synchronisation of these resources to the worker Gateways when they start up. - -This change improves resilience in case the MDCB link or controller Gateway is unavailable, because the worker Gateways can continue to operate independently using the resources stored locally. There is also a performance improvement, with the worker Gateways not having to retrieve resources from the controller Gateway when an API is first called. - -Changes to keys, certificates and OAuth clients are still synchronised to the worker Gateways from the controller when there are changes and following any failure in the MDCB link. - -#### Go Plugin Loader -When upgrading your Tyk Installation you need to re-compile your plugin with the new version. At the moment of loading a plugin, the Gateway will try to find a plugin with the name provided in the API definition. If none is found then it will fallback to search the plugin file with the name: `{plugin-name}_{Gw-version}_{OS}_{arch}.so` - -From v4.1.0 the plugin compiler automatically names plugins with the above naming convention. It enables you to have one directory with different versions of the same plugin. For example: - -- `plugin_v4.1.0_linux_amd64.so` -- `plugin_v4.2.0_linux_amd64.so` - -So, if you upgrade from Tyk v4.1.0 to v4.2.0 you only need to have the plugins compiled for v4.2.0 before performing the upgrade. - -## Changelog - -#### Added -- Added support for new OAS api definition format, and new API creation screens -- Dashboard boostrap instalation script extended to support SQL databases -- Added `TYK_DB_OMITCONFIGFILE` option for Tyk Dashboard to ignore the values in the config file and load its configuration only from environment variables and default values -- Added a new config option `identity_broker.ssl_insecure_skip_verify` that will allow customers using the embedded TIB to use IDPs exposed with a self signed certificate. Not intended to be used in production, only for testing and POC purposes. -- Added option to configure certificates for Tyk Dashboard using [environment variables](https://tyk.io/docs/tyk-dashboard/configuration/#http_server_optionscertificates). - -#### Changed -- Detailed information about certificates can be viewed from certificates listing page -- Dashboard APIs GQL Playground now shows additional information about certificates -- Dashboard will now use default version of GraphiQL Playground which can switch between light and dark modes for more accessibility -- Banner for resyncing GraphQL schema has been given a new, more accessible look in line with the rest of Dashboard design - -#### Fixed -- Fixed an issue with key lookup where keys were not being found when using the search field -- Fixed an issue with object types dropdown in Universal Data Graph config, where it wasn’t working correctly when object type UNION was chosen -- Fixed an issue in Universal Data Graph which prevented users from injecting an argument value or parameter value in the domain part of the defined data source upstream URL - -## Updated Versions -Tyk Dashboard 4.1 -Tyk MDCB 2.0.1 - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.2.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.2.md deleted file mode 100644 index 31334bdccb..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.2.md +++ /dev/null @@ -1,133 +0,0 @@ ---- -title: Tyk Dashboard v4.2 -description: "Tyk Dashboard 4.2 release notes" -tags: ["release notes", "Tyk Dashboard", "v4.2", "4.2"] ---- - -## Release Highlights - -#### GraphQL Federation improvements - -##### Changed GUI in Universal Data Graph configuration section. - -A new GUI introduces enhancements to the user experience and more consistent user journey for UDG. -This change does not yet cover all possible use cases and is released with a feature flag. To enable the new GUI, analytics.conf needs the following setting: - -``` -"ui": { - "dev": true -} -``` - -What’s possible with this change: -- Importing GraphQL schema created outside of Tyk (formats accepted .json, .graphql, .grahqls) -- Creating GraphQL schema in Tyk using schema editor -- Hide/Unhide schema editor to focus on graphical representation of the schema -- Resizing schema editor to adjust workspace look & feel to user preferences -- Improved search in schema editor (search and search & replace available) -- Quick link to UDG documentation from schema editor - -> Note: Full configuration of new Universal Data Graph is not yet possible in the GUI, however any UDGs created earlier will not be broken and will work as previously. - -#### Changes to federation entities -##### Defining the base entity -Entities must be defined with the `@key` directive. The fields argument must reference a field by which the entity can be uniquely identified. Multiple primary keys are possible. For example: - -Subgraph 1 (base entity): -``` -type MyEntity @key(fields: "id") @key(fields: "name") { - id: ID! - name: String! -} -``` - Attempting to extend a non-entity with an extension that includes the @key directive or attempting to extend a base entity with an extension that does not include the @key directive will both result in errors. - -##### Entity stubs - -Entities cannot be shared types (be defined in more than one single subgraph). -If one subgraph references a base entity (an entity defined in another subgraph), that reference must be declared as a stub (stubs look like an extension without any new fields in federation v1). This stub would contain the minimal amount of information to identify the entity (referencing exactly one of the primary keys on the base entity regardless of whether there are multiple primary keys on the base entity). For example, a stub for MyEntity from Subgraph 1 (defined above): - -Subgraph 2 (stub) -``` -extend type MyEntity @key(fields: "id") { - id: ID! @external -} -``` - -##### Supergraph extension orphans -It is now possible to define an extension for a type in a subgraph that does not define the base type. -However, if an extension is unresolved (an extension orphan) after an attempted federation, the federation will fail and produce an error. - -##### Improved Dashboard UI and error messages -GraphQL-related (for example when federating subgraphs into a supergraph) errors in the Dashboard UI will show a lean error message with no irrelevant prefixes or suffixes. - -Changed the look & feel of request logs in Playground tab for GraphQL APIs. New component presents all logs in a clearer way and is easier to read for the user - -##### Shared types -Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is identical. -Shared types cannot be extended outside of the current subgraph, and the resolved extension must be identical to the resolved extension of the shared type in all other subgraphs (see subgraph normalization notes). Attempting to extend a shared type will result in an error. -The federated supergraph will include a single definition of a shared type, regardless of how many times it has been identically defined in its subgraphs. - -##### Subgraph normalization before federation -Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. A valid example involving a shared type: - -Subgraph 1: -``` -enum Example { - A, - B -} - -extend enum Example { - C -} -``` - -Subgraph 2: -``` -enum Example { - A, - B, - C -} -``` - -The enum named “Example” defined in Subgraph 1 would resolve to be identical to the same-named enum defined in Subgraph 2 before federation takes place. The resulting supergraph would include a single definition of this enum. - -##### Validation -Union members must be both unique and defined. -Types must have bodies, e.g., enums must contain at least one value; inputs, interfaces, or objects must contain at least one field - -#### OpenAPI -Added support for the Request Body Transform middleware, for new Tyk OAS API Definitions. - -#### Universal Data Graph - -Added support for Kafka as a data source in Universal Data Graph. Configuration allows the user to provide multiple topics and broker addresses. - -## Changelog - -#### Added -- Added support for Kafka as a data source in Universal Data Graph. -- Added support for the Request Body Transform middleware for OAS based APIs - -#### Changed -- Improved GraphQL Dashboard UI error messages -- Changed GUI in Universal Data Graph -- Changed look & feel of request logs in Playground tab for GraphQL APIs. - -#### Fixed -- Fixed an issue with key lookup where keys were not being found when using the search field -- Fixed an issue with object types dropdown in Universal Data Graph config, where it wasn’t working correctly when object type UNION was chosen -- Fixed an issue in Universal Data Graph which prevented users from injecting an argument value or parameter value in the domain part of the defined data source upstream URL - -## Updated Versions - -Tyk Dashboard 4.2 - - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.3.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.3.md deleted file mode 100644 index 049a725d29..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-4.3.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: Tyk Dashboard v4.3 -description: Tyk Dashboard v4.3 release notes -tags: ["release notes", "Tyk Dashboard", "v4.3", "4.3"] ---- - -## Release Highlights - -#### Tyk OAS APIs - Versioning via the Dashboard - -Tyk v4.3 adds API versioning to the Dashboard UI, including: - -- Performing CRUD operations over API versions -- Navigate seamlessly between versions -- A dedicated manage versions screen -- easily identify the default version and the base API. - -#### Importing OAS v3 via the Dashboard - -Importing OpenAPI v3 documents in order to generate Tyk OAS API definition is now fully supported in our Dashboard UI. Our UI automatically detects the version of your OpenAPI Document, and will suggest options that you can pass or allow Tyk to read from the provided document, in order to configure the Tyk OAS API Definition. Such as: - -- custom upstream URL -- custom listen path -- authentication mechanism -- validation request rules and limit access only to the defined paths. - -[Importing OAS v3 via the Dashboard]({{< ref "/content/getting-started/using-oas-definitions/import-an-oas-api.md#tutorial-7-using-the-tyk-dashboard-ui" >}}) - -#### Updated the Tyk Dashboard version of Golang, to 1.16. - -**Our Dashboard is using Golang 1.16 version starting with 4.3 release. This version of the Golang release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** - -The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. - -Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. - - -## Changelog - -#### Added - -- Added an option for using multiple header/value pairs when configuring GraphQL API with a protected upstream and persisting those headers for future use. -- Added documentation on how edge endpoints Dashboard configuration can be used by users to add tags for their API Gateways. -- When retrieving the Tyk OAS API Definition of a versioned API, the base API ID is passed on the GET request as a header: `x-tyk-base-api-id`. -- If Edge Endpoints Dashboard configuration is present, when users add segment/tags to the Tyk OAS API Definition, their corresponding URLs are populated in the servers section of the OAS document. -- Listen path field is now hidden from the API Designer UI, when the screen presents a versioned or internal API. - -#### Changed - -- Extended existing `x-tyk-gateway` OAS documentation and improved the markdown generator to produce a better-formatted documentation for `x-tyk-gateway` schema. -- Complete change of Universal Data Graph configuration UI. New UI is now fully functional and allows configuration of all existing datasources (REST, GraphQL and Kafka). -- Changed look & feel of request logs for GraphQL Playground. It is now possible to filter the logs and display only the information the user is interested in. - -#### Fixed - -- Fixed: OAS API definition showing management gateway URL even if segment tags are present in cloud. From now on OAS servers section would be filled with edge endpoint URLs if configured. -- Adding a path that contains a path parameter, doesn’t throw an error anymore on the Dashboard UI, and creates default path parameter description in the OAS. - -## Updated Versions - -Tyk Dashboard 4.3 ([docker images](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=1&name=4.3.0)) - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - -{{< note success >}} -**Note** - -Note: Upgrading the Golang version implies that all the Golang custom plugins that you are using need to be recompiled before migrating to 4.3 version of the Gateway. Check our docs for more details [Golang Plugins]({{< ref "/content/plugins/supported-languages/golang.md" >}}). -{{< /note >}} diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.0.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.0.md deleted file mode 100644 index bebe1b2742..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.0.md +++ /dev/null @@ -1,277 +0,0 @@ ---- -title: Tyk Dashboard v5.0 -tags: ["release notes", "Tyk Dashboard", "v5.0", "5.0", "5.0.0", "5.0.1", "5.0.1", "5.0.2", "5.0.3", "5.0.4", "5.0.5", "5.0.6", "5.0.7", "5.0.8", "5.0.9", "5.0.10", "5.0.11", "5.0.12", "5.0.13", "5.0.14"] -weight: 2 ---- - -**Licensed Protected Product** - -**This page contains all release notes for version 5.0.X displayed in reverse chronological order** - ---- - -## 5.0.15 Release Notes - -### Release Date 24 October 2024 - -### Release Highlights - -This is a version bump to align with Gateway v5.0.15, no changes have been implemented in this release. - -### Breaking Changes - -There are no breaking changes in this release. - -### Upgrade instructions {#upgrade-5.0.15} - -If you are upgrading to 5.0.15, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Changelog {#Changelog-v5.0.15} - -No changes in this release. - - ---- - -## 5.0.14 Release Notes {#rn-v5.0.14} - -### Release Date 18th September 2024 - -### Upgrade Instructions - -This release is not tightly coupled with Tyk Gateway v5.0.14, so you do not have to upgrade both together. - - -Go to the [Upgrading Tyk](https://tyk.io/docs/product-stack/tyk-gateway/release-notes/version-5.0/#upgrading-tyk) section for detailed upgrade instructions. - - -### Release Highlights - -This release fixes some display issues in Tyk Dashboard and Tyk Classic Portal when using PostgreSQL. - -### Changelog {#Changelog-v5.0.14} - -#### Fixed - -
      -
    • -
      -Tyk Dashboard UI: Fixed display issue for API statistics - -Fixed an issue where API statistics were not being shown when using PostgreSQL and adding two or more tags in the Activity page -
      -
    • -
    • -
      -Tyk Dashboard UI: Fixed issue with display of HTTP 429 status codes on the Activity page - -Fixed an issue where HTTP 429 status codes were not being shown on the Activity page when using PostgreSQL -
      -
    • -
    • -
      -Tyk Classic Portal UI: Fixed display of graphs and requests counter - -Fixed wrong graphs and incorrect requests counter on Tyk Classic Portal when using PostgreSQL -
      -
    • -
    • -
      -Tyk Dashboard UI: fixed issues with the Error Breakdown display, specifically related to date handling - -Fixed Error Breakdown issue showing errors that happened on different dates than selected date -
      -
    • -
    - ---- - -## 5.0.13 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.13) - ---- - -## 5.0.12 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.12) - ---- - -## 5.0.11 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.11) - ---- - -## 5.0.10 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.10) - ---- - -## 5.0.9 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.9) - ---- - -## 5.0.8 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.8) - ---- - -## 5.0.7 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.7). - ---- - -## 5.0.6 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.6). - ---- - -## 5.0.5 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.5). - ---- - -## 5.0.4 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.4). - ---- - -## 5.0.3 Release Notes -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.3). - ---- - -## 5.0.2 Release Notes - -##### Release Date 29 May 2023 - -#### Release Highlights - -##### Support for MongoDB 5 and 6 -From Tyk 5.0.2, we added support for MongoDB 5.0.x and 6.0.x. To enable this, you have to set new Dashboard config option driver to *mongo-go*. -The driver setting defines the driver type to use for MongoDB. It can be one of the following values: -- [mgo](https://github.com/go-mgo/mgo) (default): Uses the *mgo* driver. This driver supports MongoDB versions <= v4.x (lower or equal to v4.x). You can get more information about this driver in the [mgo](https://github.com/go-mgo/mgo) GH repository. To allow users more time for migration, we will update our default driver to the new driver, *mongo-go*, in next major release. -- [mongo-go](https://github.com/mongodb/mongo-go-driver): Uses the official MongoDB driver. This driver supports MongoDB versions >= v4.x (greater or equal to v4.x). You can get more information about this driver in [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) GH repository. - -See how to [Choose a MongoDB driver]({{< ref "planning-for-production/database-settings/mongodb#choose-a-mongodb-driver" >}}) - -**Note: Tyk Pump 1.8.0 and MDCB 2.2 releases have been updated to support the new driver option** - -#### Downloads - -[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0.2/images/sha256-fe3009c14ff9096771d10995a399a494389321707e951a3c46f944afd28d18cd?context=explore) - - -#### Changelog {#Changelog-v5.0.2} - -##### Fixed -- Fixed a bug on migration of a portal catalog with deleted policy to SQL -- Fixed: Redirect unregistered user to new page when SSOOnlyForRegisteredUsers is set to true - ---- - -## 5.0.1 Release Notes - -##### Release Date 25 Apr 2023 - -#### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.0.1">}}) below. - -#### Downloads -- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0.1/images/sha256-013d971fc826507702f7226fa3f00e1c7e9d390fc0fb268bed42e410b126e89d?context=explore) - -#### Changelog {#Changelog-v5.0.1} - -##### Added -- Improved security for people using the Dashboard by adding the Referrer-Policy header with the value `no-referrer` -- Added ability to select the plugin driver within the Tyk OAS API Designer - -##### Changed -- When creating a new API in the Tyk OAS API Designer, caching is now disabled by default - -##### Fixed -- Fixed a bug where a call to the `/hello` endpoint would unnecessarily log `http: superfluous response.WriteHeader call` -- Fixed a bug where the Dashboard was showing *Average usage over time* for all Developers, rather than just those relevant to the logged in developer -- Fixed a bug where logged in users could see Identity Management pages, even if they didn't have the rights to use these features -- Fixed a bug that prevented Tyk Dashboard users from resetting their own passwords -- Fixed issue with GraphQL proxy headers added via UI -- Fixed a bug where the Dashboard would not allow access to any screens if a logged in user didn’t have access to the APIs resource regardless of other access rights -- Fixed a bug on the key management page where searching by `key_id` did not work - you can now initiate the search by pressing enter after typing in the `key_id` -- Fixed a bug where Dashboard API could incorrectly return HTTP 400 when deleting an API -- Fixed UDG UI bug that caused duplicate data source creation on renaming -- Fixed schema validation for custom domain in Tyk OAS API definition -- Fixed a bug where the left menu did not change when Dashboard language was changed -- Fixed a bug that caused the Dashboard to report errors when decoding multiple APIs associated with a policy -- Fixed a bug where it was not possible to disable the Use Scope Claim option when using JWT authentication -- Fixed a bug in the default OPA rule that prevented users from resetting their own password -- Fixed a bug where authToken data was incorrectly stored in the JWT section of the authentication config when a new API was created - ---- - -## v5.0.0 Release Notes - -##### Release Date 28 Mar 2023 - -#### Release Highlights - -##### Improved OpenAPI support - -Tyk Dashboard has been enhanced with **all the custom middleware options** for Tyk OAS APIs, so **for the first time** you can configure your custom middleware from the Dashboard; this covers the full suite of custom middleware from pre- to post- and response plugins. We’ve got support for middleware bundles, Go plugins and Tyk Virtual Endpoints, all within the new and improved Tyk Dashboard UI. - -[Versioning your Tyk OAS APIs]({{< ref "getting-started/key-concepts/oas-versioning" >}}) is easier than ever, with the Tyk OSS Gateway now looking after the maintenance of the list of versions associated with the base API for you; we’ve also added a new endpoint on the Tyk API that will return details of the versions for a given API. - -Tyk Dashboard hasn’t been left out, we’ve implemented a brand new version management UI for Tyk OAS APIs, to make it as easy as possible for you to manage those API versions as you develop and extend your API products with Tyk. - -We’ve improved support for [OAS Mock Responses]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}), with the Tyk OAS API definition now allowing you to register multiple Mock Responses in a single API, providing you with increased testing flexibility. - -Another new feature in the Tyk OAS API Designer is that you can now update (PATCH) your existing Tyk OAS APIs through the Dashboard API without having to resort to curl. That should make life just that little bit easier. -Of course, we’ve also addressed some bugs and usability issues as part of our ongoing ambition to make Tyk OAS API the best way for you to create and manage your APIs. - -##### GraphQL and Universal Data Graph improvements - -This release is all about making things easier for our users with GraphQL and Universal Data Graph. - -In order to get our users up and running with a working Universal Data Graph quickly, we’ve created a repository of examples that anyone can import into their Dashboard or Gateway and see what Universal Data Graph is capable of. Import can be done in two ways: -- manually, by simply copying a Tyk API definition from GitHub - [TykTechnologies/tyk-examples](https://TykTechnologies/tyk-examples): A repository containing example API definitions and policies for Tyk products. -- via command line [using tyk-sync]({{< ref "universal-data-graph/udg-examples" >}}) - -To make it easier for our users to find their way to Universal Data Graph, we’ve also given it its own space in the Dashboard. From now on you can find UDG under Data Graphs section of the menu. - -It also got a lot easier to turn a Kafka topic into a GraphQL subscription. Using our new Dashboard API endpoint, users will be able to transform their AsyncAPI documentation into Universal Data Graph definition with a single click. Support for OAS coming soon as well! - -With this release we are also giving our users [improved headers for GQL APIs]({{< ref "graphql/gql-headers" >}}). It is now possible to use context variables in request headers and persist headers needed for introspection separately for improved security. - -Additionally we’ve added Dashboard support for introspection control on policy and key level. It is now possible to allow or block certain consumers from being able to introspect any graph while creating a policy or key via Dashboard. - -#### Downloads - -[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.0/images/sha256-3d736b06b023e23f406b1591f4915b3cb15a417fcb953d380eb8b4d71829f20f?tab=vulnerabilities) - -#### Changelog {#Changelog-v5.0.0} - -##### Added -- Numerous UX improvements -- New UI for custom middleware for Tyk OAS APIs -- Significantly improved Tyk OAS API versioning user experience -- It now possible to use PATCH method to modify Tyk OAS APIs via the Dashboard API -- Now you can turn a Kafka topic into a GraphQL subscription by simply [importing your AsyncAPI definition]({{< ref "tyk-apis/tyk-dashboard-api/data-graphs-api" >}}) -- Way to control access to introspection on policy and key level - -##### Changed -- Universal Data Graph moved to a separate dashboard section - ---- - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-374cc3d0-f16d-4620-a435-68c53553ca40) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.1.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.1.md deleted file mode 100644 index 501a4fa27b..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.1.md +++ /dev/null @@ -1,144 +0,0 @@ ---- -title: Tyk Dashboard v5.1 -description: "Release notes 5.1 for Tyk Dashboard" -tags: ["Release notes", "Dashboard", "5.1"] -main: menu ---- - -**Licensed Protected Product** - -### Support Lifetime -Minor releases are supported until our next minor comes out in Q3. - -## 5.1 Release Notes - -##### Release Date 23 June 2023 - -#### Breaking Changes -**Attention warning*: Please read carefully this section. We have two topics to report: - -##### Golang Version upgrade -Our Dashboard is using [Golang 1.19](https://tip.golang.org/doc/go1.19) programming language starting with the 5.1 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. Don’t forget that, if you’re using GoPlugins, you'll need to [recompile]({{< ref "plugins/supported-languages/golang#upgrading-your-tyk-gateway" >}}) these to maintain compatibility with the latest Gateway. - -##### Tyk OAS APIs -To provide a superior experience with OAS APIs, we have made some changes which include various security fixes, improved validation etc. Upgrading to v5.1 from v4.x.x may be irreversible, rollback to v4.x.x could break your OAS API definitions. For this reason, we recommend making a database backup so you can always restore from the backup (of v4.X.X) in case you encounter a problem during the upgrade. Please refer to our guides for detailed information on [upgrading Tyk]({{}}) and [how to back up tyk]({{}}) - -#### Deprecation -There are no deprecations in this release. - -#### Upgrade Instructions -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -#### Release Highlights - -##### Dashboard Analytics for API Ownership - -When we implemented Role Based Access Control and API Ownership in Tyk -Dashboard, we unlocked great flexibility for you to assign different roles to -different users and user groups with visibility and control over different -collections of APIs on your Gateway. Well, from 5.1 we have added a new Role, -which layers on top of the existing “Analytics” role and can be used to restrict -a user’s access, within the Dashboard Analytics screens, to view only the -statistics from APIs that they own; we’ve called this “Owned Analytics”. Due to -the way the analytics data are aggregated (to optimize storage), a user granted -this role will not have access to the full range of charts. Take a look at the -documentation for a full description of this new [user role]({{< ref "basic-config-and-security/security/dashboard/user-roles" >}}). - -##### Import API examples from within the Dashboard - -In 5.0 we introduced the possibility to import API examples manually or via -[_Tyk Sync_]({{< ref "/api-management/automations#synchronize-tyk-environment-with-github-repository" >}}). We have now extended this feature and it is now possible to do this without -leaving the Dashboard. When having an empty “Data Graphs” section you will be -presented with 3 icon buttons with one of them offering you to import an Example -API. - -If you already have Data Graphs in your Dashboard you can either click on -the “Import” button or click on the “Add Data Graph“ button and select “Use -example data graph“ on the next screen. The examples UI will present you with a -list of available examples. You can navigate to the details page for every -example and import it as well from the same page. - -##### Improved nested GraphQL stitching - -Before this release, it was only possible to implement nested GraphQL stitching -(GraphQL data source inside another data source) by using a REST data source and -providing the GraphQL body manually. We have now extended the GraphQL data source so -that you can provide a custom operation and therefore access arguments or object -data from parent data sources. - -To use this feature you will only need to check the “Add GraphQL operation“ checkbox when creating a GraphQL data source. - -##### Import UDG API from OAS 3.0.0 - -We added a [Dashboard API Endpoint]({{< ref "universal-data-graph/datasources/rest#automatically-creating-rest-udg-configuration-based-on-oas-specification" >}}) that is capable of taking an OAS 3.0.0 document and converting it into a UDG API. - -This will generate the full schema as well as the data sources that are defined inside the OAS document. - -##### Changed default RPC pool size for MDCB deployments - -We have reduced the default RPC pool size from 20 to 5. This can reduce the CPU and -memory footprint in high throughput scenarios. Please monitor the CPU and memory -allocation of your environment and adjust accordingly. You can change the pool -size using [slave_options.rpc_pool_size]({{< ref "tyk-oss-gateway/configuration#slave_optionsrpc_pool_size" >}}) - -#### Downloads - -[docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.1/images/sha256-8cde3c6408b9a34daa508a570539ca6cd9fcb8ee5c4790abe907eaecddc1bd9b?context=explore) - - -#### Changelog - -##### Added - -- Added two endpoints to the dashboard to support the retrieval of example API definitions. One for fetching all examples and another for fetching a single example. -- Added a way to display UDG examples from the [tyk-examples](https://github.com/TykTechnologies/tyk-examples) repository in the Dashboard UI -- Added screens in Dashboard New Graph flow, that allows users to choose between creating a graph from scratch or importing one of our example graphs -- Added a screen to display details of a UDG example API -- Added a feature to display a full [_Tyk Sync_]({{}}) command that will allow a user to import an example UDG into their Dashboard -- Added `/examples` endpoint to Dashboard API that returns a list of available API examples that can later be imported into the Dashboard `GET /api/examples` -- Added `/data-graphs/data-sources/import` endpoint to Dashboard API that transforms an OpenAPI document into UDG config and publishes it in Dashboard `POST /api/data-graphs/data-sources/import` -- Added query param `apidef=true` to example detail endpoint in Dashboard API to retrieve the API definition of an example -- Added new `owned_analytics` user permission which restricts the user's access only to analytics relating to APIs they own. These are the _API Activity Dashboard Requests_ and _Average Errors Over Time_ charts in the Tyk Dashboard. Note that it is not currently possible to respect API Ownership in other aggregated charts - -##### Changed - -- Tyk Dashboard updated to Go 1.19 -- Updated npm package dependencies of Dashboard, to address critical and high CVEs -- Changed the field mapping tickbox description in GUI to be 'Use default field mapping' - -##### Fixed - -- Fixed an issue when using custom authentication with multiple authentication methods. Custom authentication could not be selected to provide the base identity -- Fixed an issue where the login URL was displayed as undefined when creating a TIB Profile using LDAP as a provider -- Fixed an issue where it was not possible to download Activity by API or Activity by Key from the Dashboard when using PostgreSQL for the analytics store -- Fixed an issue where a new user could be stuck in a password reset loop in the dashboard if TYK_DB_SECURITY_FORCEFIRSTLOGINPWRESET was enabled -- Fixed an issue where the `ssl_force_common_name_check` flag was disappearing. The flag was disappearing after being updated via dashboard UI raw API editor and a subsequent page reload. It was also disappearing when updating the API Definition via the GW/DB API. -- Fixed an issue where a user could update their email address to match that of another user within the same organization -- Fixed an issue where users without `user:write` permission were able to update their permissions through manipulation of Dashboard API calls -- Fixed an issue where the versions endpoint returned APIs that were not owned by the logged-in user -- Fixed an issue where the log browser showed analytics for APIs not owned by the logged-in user -- Fixed an issue that prevented non-admin users from seeing _Endpoint Popularity_ data in the Tyk Dashboard -- Fixed an issue where additional data was returned when requesting analytics with p=-1 query when using SQL for the analytics store -- Fixed an issue so that filtering by API now respects API Ownership in three Dashboard charts. - - - Gateway Dashboard - API Activity Dashboard - Requests - - Activity by API - Traffic Activity per API - - Errors - Average Errors Over Time - -- Fixed an issue so that the Log Browser now respects API Ownership. A user will now only be able to see logs for the APIs that they are authorized to view -- Fixed filters for the Log Browser, Errors - Average Errors Over Time and API Activity Dashboard - Requests so that a user can only select from versions of APIs for which they have visibility -- Fixed UI bug so that data graphs created with multiple words are [sluggified](https://www.w3schools.com/django/ref_filters_slugify.php#:~:text=Definition%20and%20Usage,ASCII%20characters%20and%20hyphens%20(%2D).), i.e. spaces are replaced with a hyphen `-` -- Fixed an issue with routing, which was sending the user to a blank screen while creating a new Data Graph or importing an example API - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-374cc3d0-f16d-4620-a435-68c53553ca40) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.2.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.2.md deleted file mode 100644 index 1c48a6a103..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.2.md +++ /dev/null @@ -1,583 +0,0 @@ ---- -title: Tyk Dashboard 5.2 Release Notes -date: 2023-09-27T15:49:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.2.X series." -tags: ["Tyk Dashboard", "Release notes", "v5.2", "5.2.0", "5.2", "changelog", "5.2.1", "5.2.2", "5.2.3", "5.2.4"] ---- - -**Licensed Protected Product** - -**This page contains all release notes for version 5.2.X displayed in reverse chronological order** - -## Support Lifetime -Minor releases are supported until our next minor comes out. There is no 5.3 scheduled in Q4. Subsequently, 5.2 will remain in support until our next LTS version comes out in March 2024. - ---- - -## 5.2.5 Release Notes - -**Release Date 19 Dec 2023** - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Release Highlights -Dashboard 5.2.5 was version bumped only, to align with Gateway 5.2.5. Subsequently, no changes were encountered in release 5.2.5. Gateway 5.2.5 was a critical patch release. For further information please see the release notes for Gateway [v5.2.5]({{< ref "product-stack/tyk-gateway/release-notes/version-5.2.md" >}}) - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.5/images/sha256-c09cb03dd491e18bb84a0d9d4e71177eb1396cd5debef694f1c86962dbee10c6?context=explore) - -### Changelog {#Changelog-v5.2.5} -Since this release was version bumped only to align with Gateway v5.2.5, no changes were encountered in this release. - ---- - - - ---- - -## 5.2.4 Release Notes - -**Release Date 7 Dec 2023** - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.4">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.4/images/sha256-8862e98c6ffd67d47b496275b228f4f8faae4359b9c8e42bcd8bd8a47d0c45e4?context=explore) - -### Changelog {#Changelog-v5.2.4} - -#### Fixed - -
      -
    • -
      - Poor experience when using the Open Policy Agent (OPA) editor - - Fixed two UI issues with the [OPA editor]({{< ref "tyk-dashboard/open-policy-agent#using-the-open-policy-agent-in-the-dashboard" >}}) in the Tyk Dashboard to improve experience when using this feature. Scrolling beyond the end of the OPA window does not now start to scroll the API Designer window, and minimizing then re-expanding the OPA editor no longer limits the text to one line. -
      -
    • -
    • -
      - Annoying bugs when setting Dashboard user access controls - - Fixed minor issues in the Dashboard UI when configuring the user access controls for the Identity Management (TIB) and Real Time Notifications permissions. -
      -
    • -
    • -
      - Unable to select Mutual TLS version 1.3 from the API Designer dropdown - - Fixed an issue where TLS 1.3 was not offered as an option in the "Minimum TLS version" dropdown in the API Designer. Also we gave better (human readable) names to the options, like TLS 1.0, TLS 1.1 etc. instead of their corresponding numbers 769, 770 etc. -
      -
    • -
    • -
      - Tyk Dashboard panic when using mongo-go driver - - Fixed a situation where Tyk Dashboard could panic when using the mongo-go driver. -
      -
    • -
    • -
      - Confusing error message if user tries to modify Tyk OAS API using a Tyk Classic API endpoint/summary> - - Improved the error message that is returned when user tries to update a Tyk OAS API using a Tyk Classic API endpoint when `allow_unsafe_oas` is not enabled. -
      -
    • -
    - -#### Added - -
      -
    • -
      - Implemented a `tyk version` command that provides more details about the Tyk Dashboard build - - This prints the release version, git commit, Go version used, architecture and other build details. -
      -
    • -
    - ---- - -## 5.2.3 Release Notes - -**Release Date 21 Nov 2023** - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.3">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.3/images/sha256-7d61ed3ee3f03ff0e2f91be71a9113b90ef6637b1cef1f30d4c3e04ead09fa6a?context=explore) - -### Changelog {#Changelog-v5.2.3} - -#### Fixed - -
      -
    • -
      -Unable to resize OPA editor in Tyk Dashboard - -Fixed an issue where the [OPA editor]({{< ref "tyk-dashboard/open-policy-agent#using-the-open-policy-agent-in-the-dashboard" >}}) was not resizable. The fix ensures the floating OPA editor is now resizable and the resizing operation is smooth, improving user experience. -
      -
    • -
    • -
      -User Search not working unless you enter the full email address - -Fixed an issue where the [User Search]({{< ref "basic-config-and-security/security/dashboard/search-users" >}}) was not working unless the full email address was entered. The fix restores the functionality of showing suggestions for names as they are typed in, improving user experience and search efficiency. -
      -
    • -
    • -
      -Dashboard 4.1.0+ cannot retrieve certificates from downrev gateways - -Fixed an issue where Dashboard 4.1.0+ was unable to retrieve certificates from a Tyk Gateway with a version lower than 4.1.0. This was due to a change made in the 4.1 versions relating to the way certificate details are retrieved in the dashboard; in the newer versions, we can view more details of the certificates. Now you can use Tyk Dashboard with any version of the Tyk Gateway and still retrieve and view certificate details; the fix ensures smooth staged upgrades and prevents potential issues for customers who have weeks or months between upgrading components. -
      -
    • -
    • -
      -Authentication Mode changes after changing API Protocol in API Designer - -Fixed an issue in the Tyk Classic API Designer where if you changed the protocol for an API (for example from HTTP to HTTPS) then the authentication mechanism would be automatically set to Authentication Token. -
      -
    • -
    • -
      -Unable to configure external OAuth flow using Raw API editor - -Fixed an issue in the Classic API Designer where the 'use_standard_auth' value was constantly reverting to 'true' when editing an API with an [external OAuth flow]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}). This fix ensures the 'use_standard_auth' value remains consistent, enabling the use of external OAuth via the Raw API editor. -
      -
    • -
    • -
      -If the GraphQL subscription upstream disconnects, the UI is unaware of the reconnection event - -Fixed an issue with failed GraphQL subscriptions between the upstream and the Dashboard. When an upstream subscription was disconnected and later reconnected, the UI did not update to reflect the reconnection, preventing the seamless consumption of messages. Now the Dashboard can continue consuming messages after upstream reconnects. -
      -
    • -
    - ---- - -## 5.2.2 Release Notes - -**Release Date 31 Oct 2023** - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.2">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.2/images/sha256-c6e701e270ebb2fed815483723375c454d0479ae41b5be2e1a6198b8d1e1a154?context=explore) - -### Changelog {#Changelog-v5.2.2} - -#### Added - -
      -
    • -
      -Added new Dashboard configuration option `allow_unsafe_oas` - -Added a new Dashboard configuration option `allow_unsafe_oas`. This permits the modification of Tyk OAS APIs via the Tyk Classic API endpoints. This is not a recommended action due to the risk of inconsistent behavior and potential for breaking changes while Tyk OAS is in [Early Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}). This is provided for early adopters and will be deprecated later, once Tyk OAS reaches full maturity. - -
      -
    • -
    - -#### Fixed -
      -
    • -
      -Fixed security policy grant permissions issue encountered with MongoDB - -Fixed an issue when using MongoDB and [Tyk Security Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This was due to the policy cleaning operation that is triggered when an API is deleted from a policy in a MongoDB installation. With this fix, the policy cleaning operation will not remove the final (deleted) API from the policy; Tyk recognizes that the API record is invalid and denies granting access rights to the key. -
      -
    • -
    • -
      -User might not correctly inherit all permissions from their user group - -Fixed an issue in the Tyk Dashboard where a user might not correctly inherit all permissions from their user group, and could incorrectly be granted visibility of Identity Management. -
      -
    • -
      -Tyk would not store Policy ID in the API Definition for a policy that did not exist - -Fixed an issue where Tyk would not store the *Policy Id* in the *API Definition* for a policy that did not exist. When using *JWT Authentication*, the *JWT Default Policy Id* is stored in the *API Definition*. If this policy had not been created in Tyk at the time the *API Definition* was created, Tyk Dashboard would invalidate the field in the *API Definition*. When the policy was later created, there would be no reference to it from the *API Definition*. This was a particular issue when using *Tyk Operator* to manage the creation of assets on Tyk. -
      -
    • -
    • -
      -Service Uptime page did not report the number of success hits correctly - -Fixed an issue in the Dashboard *Service Uptime* page where the number of success hits was being incorrectly reported as the total number of hits, inclusive of failures. After this fix, the *Success Column* displays only the number of success hits. -
      -
    • -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: - -- [CVE-2022-33082](https://nvd.nist.gov/vuln/detail/CVE-2022-33082) -- [CVE-2022-28946](https://nvd.nist.gov/vuln/detail/CVE-2022-28946) -- [CVE-2021-23409](https://nvd.nist.gov/vuln/detail/CVE-2021-23409) -- [CVE-2021-23351](https://nvd.nist.gov/vuln/detail/CVE-2021-23351) -- [CVE-2023-28119](https://nvd.nist.gov/vuln/detail/CVE-2023-28119) -- [CVE-2022-21698](https://nvd.nist.gov/vuln/detail/CVE-2022-21698) -- [CVE-2020-26160](https://nvd.nist.gov/vuln/detail/CVE-2020-26160) -- [CVE-2019-19794](https://nvd.nist.gov/vuln/detail/CVE-2019-19794) -- [CVE-2010-0928](https://nvd.nist.gov/vuln/detail/CVE-2010-0928) -- [CVE-2007-6755](https://nvd.nist.gov/vuln/detail/CVE-2007-6755) -- [CVE-2018-5709](https://nvd.nist.gov/vuln/detail/CVE-2018-5709) -
      -
    • -
    • -
      -Azure SAML2.0 Identity Provider was preventing users from authenticating - -Fixed an issue encountered with *Azure SAML2.0 Identity Provider* that was preventing users from authenticating. -
      -
    • -
    • -
      -Fields defined in Uptime_Tests.Check_List were not correctly handled in API Designer - -Fixed an issue encountered with the *API Designer* where fields defined in *Uptime_Tests.Check_List* were not correctly handled. Uptime tests can now be configured for *Tyk Classic APIs* using the *Raw API Definition* editor. -
      -
    • -
    • -
      -Tyk Dashboard API security vulnerability - -Fixed a security vulnerability with the Tyk Dashboard API where the `api_version` and `api_id` query parameters were potential targets for SQL injection attack. -
      -
    • -
    - -#### Updated - -
      -
    • -
      -Renamed License Limit to License Entitlement on Tyk Dashboard's Licensing Statistics screen - -On Tyk Dashboard's Licensing Statistics screen, we have renamed the License Limit to License Entitlement. We've also improved the experience when there is no limit in the license by hiding the License Entitlement line if no limit is set. -
      -
    • -
    - ---- - -## 5.2.1 Release Notes - -**Release Date 10 Oct 2023** - -### Breaking Changes - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible result in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are on a 5.2.0 we advise you to upgrade ASAP and if you are on an older version skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.1/images/sha256-2f9d8af0e57f7fe4afb618dcf34772c001104dc0ec62a27541d12dc9ae90d5c8?context=explore) - -### Changelog {#Changelog-v5.2.1} - -#### Added - -
      -
    • -
      -Support added to Tyk Dashboard API for Tyk Sync to fully support OAS API Definitions - -Added support to Tyk Dashboard API so that Tyk Sync can fully support Tyk OAS API Definitions; this will be enabled from Tyk Sync version 1.4.1. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Pagination in APIs screen was breaking for API of type GraphQL/UDG - -Fixed a bug in the *Tyk Dashboard* UI where pagination in the APIs screen was breaking for API of type GraphQL/UDG. This resulted in the page failing to load data and displaying a 'No data to display' message. -
      -
    • - -
    • -
      -Unable to disable Add Graph Operation checkbox in the GraphQL data source configuration screen - -Fixed an issue where the 'Add GraphQL Operation' checkbox in the GraphQL data source configuration screen couldn't be disabled, even when no operation was added. Now, its state can be adjusted based on the presence of GraphQL operations and variables. -
      -
    • -
    - ---- - -## 5.2.0 Release Notes - -**Release Date 29 Sep 2023** - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Release Highlights - -We're thrilled to bring you some exciting enhancements and crucial fixes to improve your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. - -Configure Caching Timeouts Per API Endpoint and Enable Advanced Caching Options From Within Dashboard - -We’ve added the ability to [configure]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}) per-endpoint timeouts for Tyk’s response cache, giving you increased flexibility to tailor your APIs to your upstream services. While doing this, we’ve also fixed a longstanding issue within the *Tyk Dashboard* so that you can configure more of the [advanced caching]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-api-designer" >}}) options from within the UI. - -#### Added Body Transform Middleware to Tyk OAS API Definition - -With this release, we are adding the much requested *Body Transformations* to *Tyk OAS API Definition*. You can now [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) middleware for both [request]({{< ref "transform-traffic/request-body" >}}) and [response]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) *Body Transformations* and - as a *Tyk Dashboard* user - you’ll be able to do so from within our simple and elegant API Designer tool. Visually test and preview *Body Transformations* from within the API Designer. - -#### Track Usage Of License APIs, Gateways And Distributed Data Planes Over Time - -Within the Dashboard UI, we’ve enhanced the *Licensing* information page, so that you can visualise your usage of licensed APIs, *Gateways* and distributed *Data Planes* over time. This allows the visualisation of deployed and active APIs using a range of different types of interactive charts. - - -### Downloads - -Tyk Dashboard 5.2 - [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-dashboard/v5.2.0/images/sha256-28ff62e1e1208d02fec44cf84c279a5f780207ccbb7c3bdef23d1bf8fc6af3b8?context=explore) - - -### API Changes - -The following is a list of API changes in this release. Please visit our [Postman collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) for further information on our APIs. - -
      -
    • -
      -Added /system/stats endpoint to provide statistics for total and active APIs deployed - -Added a new [endpoint]({{< ref "/tyk-dashboard-api" >}}), */system/stats*, to provide insight and operational statistics on total and active APIs deployed. The endpoint's flexible date filtering options, equip users to obtain comprehensive insights into usage trends. -
      -
    • -
    - - -### Changelog {#Changelog-v5.2.0} - -#### Added - -
      -
    • -
      -Configure request and response body transformations - -Added support for API developers to easily [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) both request and response *Body Transformations* for more precise data management when working with *Tyk OAS* APIs. Define input data, craft transformation templates and test them against specific inputs for reliable customization. -
      -
    • -
    • -
      -Adding a new data source is simpler when working with UDG - -Adding a new [data source]({{< ref "universal-data-graph/udg-getting-started/connect-datasource#3-configure-datasource-details" >}}) is simpler when working with *UDG*. The default value for the *data source name* is pre-filled, saving time. The *data source name* is pre-filled in the format *fieldName_typeName*, with *typeName* being the name of any GraphQL type. -
      -
    • -
    • -
      -Added /system/stats endpoint to provide statistics for total and active APIs deployed - -Added a new [endpoint]({{< ref "/tyk-dashboard-api" >}}), */system/stats*, to provide insight and operational statistics on total and active APIs deployed. The endpoint's flexible date filtering options, equip users to obtain comprehensive insights into usage trends. -
      -
    • -
    - -#### Changed -
      -
    • -
      -Saving operation is simpler when creating an API within the API Designer - -Improved the flow when creating an API within the *API Designer* so that you remain on the same screen after saving. This means you can continue editing without having to navigate back to the screen to make subsequent changes. -
      -
    • -
    • -
      -Saving a UDG data source is simpler and quicker - -Updated the [screen]({{< ref "/universal-data-graph/udg-getting-started/connect-datasource" >}}) for configuring and saving *UDG* data sources. The *Save* button has been replaced with *Save & Update API* button and users no longer need to click *Update* at the top of the screen to persist changes. Saving a *UDG* data source is now simpler and quicker. -
      -
    • -
    • -
      -Enhanced API usage monitoring added to Dashboard - -Updated the *Dashboard* with enhanced API usage monitoring. Users now benefit from an insightful chart on the *Licensing Statistics* page, detailing: maximum, minimum and average counts of created and active APIs. Flexible date filtering, license limit reference lines and the ability to toggle between line and bar graphs empower users to monitor usage effortlessly, ensuring license adherence. -
      -
    • -
    • -
      -New chart introduced on License Statistics page to show number of deployed Data Planes - -A new chart has been introduced on the *License Statistics* page that presents the number of deployed *Data Planes*. This addition enables users to easily monitor their *Data Plane* usage and nearness to their contract limits. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Advanced cache config data was absent in the Raw Editor - -Fixed an issue where *advanced_cache_config* data was absent in the *Raw Editor*. This fix now ensures that *advanced_cache_config* can be configured. Furthermore, API modifications in the *Designer* no longer lead to data loss, safeguarding cache configuration consistency. The UI now offers a clear view of advanced cache settings, including the new *Timeout* field and *Cache* response codes fields. -
      -
    • -
    • -
      -403 errors were raised with JWT claim names containing spaces - -Fixed an issue with *JWT claim names* containing spaces. Previously 403 errors were raised when using tokens containing such claims. -
      -
    • -
    • -
      -Popular endpoints were not displayed in Tyk Dashboard when SQL aggregated analytics was enabled - -Fixed an issue where *popular endpoints* data was not displayed in *Tyk Dashboard* with *SQL aggregated analytics* enabled. Users can now view *popular endpoints* when viewing *Traffic Activity* per API or filtering by API with *SQL aggregated analytics* enabled. -
      -
    • -
    • -
      -Fixed security issue with expired certificates - -Fixed a potential security vulnerability where *static* or *dynamic mTLS* requests with expired certificates could be proxied upstream. -
      -
    • -
    • -
      -Users were unable to view request analytics for a specific date in the API Activity dashboard - -Fixed an issue in the *API Activity* dashboard where users were unable to view request analytics for a specific date. Subsequently, users can now make informed decisions based on access to this data. -
      -
    • -
    • -
      -Enforced timeout configuration parameter for an API endpoint was not validated - -Fixed an issue where the [Enforced Timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) configuration parameter of an API endpoint accepted negative values, without displaying validation errors. With this fix, users receive clear feedback and prevent unintended configurations. -
      -
    • -
    • -
      -Duplicate APIs could be created when click save button multiple times in API Designer - -Fixed an issue in *Tyk Dashboard* where duplicate APIs could be created with the same names and listen paths if you clicked multiple times on the *save* button in the API Designer. Now, this is not possible anymore and there is no risk of creating multiple APIs with the same name. -
    • - -
    • -
      -Connection issues were encountered with MongoDB connection strings - -Fixed an issue with *MongoDB* connection strings. To ensure consistent compatibility with both *mgo* and *mongo-go* drivers, users should now utilize URL-encoded values within the *MongoDB* connection string's username and password fields when they contain characters like "?", "@". This resolves the need for different handling across *MongoDB* drivers. -
      -
    • -
    - ---- - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-374cc3d0-f16d-4620-a435-68c53553ca40) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.3.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.3.md deleted file mode 100644 index 303599ebfb..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.3.md +++ /dev/null @@ -1,1437 +0,0 @@ ---- -title: Tyk Dashboard 5.3 LTS Release Notes -date: 2023-09-27T15:49:11Z -description: "Release notes documenting updates enhancements, and changes for Tyk Dashboard versions within the 5.3.X series." -tags: ["Tyk Dashboard", "Release notes", "changelog", "v5.3", "5.3.0", "5.3.1", "5.3.2", "5.3.3", "5.3.4", "5.3.5", "5.3.6", "5.3.7", "5.3.8" ] ---- - - - -**This page contains all release notes for version 5.3.X displayed in a reverse chronological order** - -## Support Lifetime - -As outlined in the [LTS policy]({{< ref "developer-support/special-releases-and-features/long-term-support-releases" >}}), version 5.3 is a long-term support release with full support available until May 2025. Maintenance support will continue until May 2026. Our next long-term support release will be announced at the end of April 2025. - ---- - -## 5.3.8 Release Notes - -### Release Date 07 November 2024 - -### Release Highlights -This release focuses mainly on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.8">}}) below. - -### Breaking Changes - -This release has no breaking changes. - -### Dependencies {#dependencies-5.3.8} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.8 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.8} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. - -### Upgrade Instructions -If you are upgrading to 5.3.8, please follow the detailed [upgrade instructions](#upgrading-tyk). - - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.8) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.8 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.0.md" >}}) - -### Changelog {#Changelog-v5.3.8} - -#### Added - -
      -
    • -
      -Advanced notice of deprecation of dedicated External OAuth and OpenID Connect auth options - -The UI now displays a deprecation notice for the dedicated [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect (OIDC)]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}) authentication mechanisms. This provides advanced notification that these authentication options will be deprecated in version 5.7.0. Users are advised to migrate to the [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method, which supports integration with both OAuth and OIDC providers, in preparation for future upgrade. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -User Group dropdown limitations in Dashboard - -Fixed an issue with the user group dropdown in the Dashboard UI, ensuring that all available user groups are displayed when creating a new user. -
      -
    • -
    • -
      -Rate Limiting settings not saved when Upstream Certificates enabled for Tyk OAS API - -Fixed an issue in the Tyk OAS API Designer where Rate Limiting settings were not saved when Upstream Certificates were enabled. This fix ensures that both Rate Limits and Upstream Certificates configurations can now be saved together -
      -
    • -
    - ---- -## 5.3.7 Release Notes - -### Release Date 22 October 2024 - -### Release Highlights - -This is a version bump to align with Gateway v5.3.7, no changes have been implemented in this release. - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.3.7} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.7 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.7} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.3.7} - -If you are upgrading to 5.3.7, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.7) -- ```bash - docker pull tykio/tyk-dashboard:v5.3.7 - ``` -- Helm charts - - [Tyk Charts v2.0.0]({{}}) - -### Changelog {#Changelog-v5.3.7} - -No changes in this release. - ---- - -## 5.3.6 Release Notes - -### Release Date 04 October 2024 - -### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.6">}}) below. - -### Breaking Changes -**Attention**: Please read this section carefully. -Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in the image. - -If moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -When upgrading to 5.3.6, please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Dependencies {#dependencies-5.3.6} - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.6). - - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.6). - - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.6 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.6} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.6) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.6 - ``` -- Helm charts - - [tyk-charts v2.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.0.md" >}}) - -### Changelog {#Changelog-v5.3.6} - - -#### Changed - -
      -
    • -
      -Upgrade to Go 1.22 for Tyk Dashboard -The Tyk Dashboard has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, and access to the latest features available in the new Golang release. -
      -
    • -
    • -
      - Introducing Distroless Containers for Tyk Dashboard (2024 LTS) - - In this release, we've enhanced the security of the Tyk Dashboard image by changing the build process to support [distroless](https://github.com/GoogleContainerTools/distroless) containers. This significant update addresses critical CVEs associated with Debian, ensuring a more secure and minimal runtime environment. Distroless containers reduce the attack surface by eliminating unnecessary packages, which bolsters the security of your deployments. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Gateway secret could be exposed in debug logs - - -Resolved an issue where the Gateway secret was inadvertently included in the log generated by the Dashboard for a call to the `/api/keys` endpoint when in debug mode. This issue has been fixed to prevent sensitive information from appearing in system logs. -
      -
    • - -
    • -
      -Dashboard didn't display correctly if more than 10 policies assigned to a key - - -We have resolved an issue where the Keys page would display a blank screen if a key was associated with more than 10 policies. The UI has been fixed to display the page properly, regardless of the number of policies attached to a key. -
      -
    • - -
    • -
      -Dashboard UI did not prevent multiple versions of a Tyk Classic API from being assigned to a policy - -When working with Tyk Classic APIs, you cannot permit access to multiple versions of the same API from a single policy. We have fixed an issue in the Dashboard UI where users were able to attach multiple versions to a policy leading to an unusable policy. The UI now correctly prevents the addition of multiple versions of an API to a single policy. -
      -
    • - -
    • -
      -Dashboard didn't correctly record scope to policy mappings for JWTs - - -We have fixed an issue in the Dashboard UI when assigning multiple claim to policy mappings while configuring JWT auth for an API. The scope name was incorrectly recorded instead of the policy ID for the second and subsequent JWT scope mappings. The UI now correctly associates the defined claim with the appropriate policy, ensuring accurate JWT scope to policy mappings. -
      -
    • - -
    - -#### Security Fixes - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high-priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: -- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) -
      -
    • - -
    - ---- - -## 5.3.5 Release Notes - - -### Release Date 26 September 2024 - - -### Release Highlights - -This is a version bump to align with Gateway v5.3.5, no changes have been implemented in this release. - -### Breaking Changes - -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - - -### Deprecations - -There are no deprecations in this release. - - -### Upgrade Instructions - -When upgrading to 5.3.5, please follow the [detailed upgrade instructions](#upgrading-tyk). - - -### Dependencies {#dependencies-5.3.5} - - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.5). - - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.5). - - -#### Compatibility Matrix For Tyk Components - - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.5| MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.5} - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Downloads - -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.5) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.5 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{}}) - -### Changelog {#Changelog-v5.3.5} - - No changes in this release. - ---- - -## 5.3.4 Release Notes - -### Release Date August 26 2024 - -### Breaking Changes -**Attention**: Please read this section carefully. -There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -When upgrading to 5.3.4 please follow the [detailed upgrade instructions](#upgrading-tyk). - - -### Release Highlights -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.4">}}) below. - -### Dependencies {#dependencies-5.3.0} - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). - - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). - - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.4 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.4} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.4) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.4 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) - -### Changelog {#Changelog-v5.3.4} - - -#### Fixed - -
      -
    • -
      -Fixed display issue for API stats - -Fixed API’s stats not being shown when adding 2 or more tags in the Activity page and using Postgres -
      -
    • - -
    • -
      -Fixed display issue of 429 status codes on the Activity page - -Fixed 429 status codes not being shown on the Activity page when using Postgres -
      -
    • - -
    • -
      -Fixed display of graphs and requests counter on Portal - -Fixed wrong graphs and incorrect requests counter on Portal when using Postgres -
      -
    • - -
    • -
      -Fixed Error Breakdown display issues with dates - -Fixed Error Breakdown issues with dates (it was showing errors that happened on different dates than the one that was actually displayed) -
      -
    • -
    - ---- -## 5.3.3 Release Notes - -### Release Date August 2nd 2024 - -### Breaking Changes -**Attention**: Please read this section carefully. -There are no breaking changes in this release, however, if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -When upgrading to 5.3.3 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Release Highlights - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.3">}}) below. - -### Dependencies {#dependencies-5.3.0} - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). - - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.3). - - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.3 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.3} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.3) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.3 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) - -### Changelog {#Changelog-v5.3.3} - - -#### Added - -
      -
    • -
      -Corrected ordering of Tyk OAS API paths to prevent Middleware misapplication - -Fixed an issue where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered, preventing this middleware misapplication and ensuring both the HTTP method and URL match accurately. -
      -
    • -
    - ---- - -#### Fixed - -
      -
    • -
      -Save API button now visible for all users - -Addressed an issue in SSO where user permissions were not correctly applied, ensuring the Save API button is visible to all users in the Dashboard UI. -
      -
    • -
    • -
      -Dashboard blank page issue when retrieving key for API with mTLS and dynamic JWT Auth fixed - -Resolved a bug causing the Dashboard UI to display a blank page when creating a key for an API using static mTLS with dynamic JWT authentication. -
      -
    • -
    • -
      -Empty Endpoint popularity page issue resolved in version 5.3.1 - -Addressed an issue where the Dashboard displayed an empty page when accessing Activity by Endpoint information after upgrading to Tyk 5.3.1. Users can now see all necessary information. -
      -
    • -
    - ---- - -## 5.3.2 Release Notes - - -### Release Date 5th June 2024 - - -### Breaking Changes -**Attention**: Please read this section carefully. - - -There are no breaking changes in this release, however if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - - -### Deprecations -There are no deprecations in this release. - - -### Upgrade Instructions -When upgrading to 5.3.2 please follow the [detailed upgrade instructions](#upgrading-tyk). - - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.2">}}) below. - - -### Dependencies {#dependencies-5.3.0} - - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.2). - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.2). - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.2 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.2} - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.2) - - ```bash - docker pull tykio/tyk-dashboard:v5.3.2 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) - - -### Changelog {#Changelog-v5.3.2} - - -#### Fixed - -
      -
    • -
      -Fixed Dashboard Analytics for PostgreSQL - -Resolved an issue in the `api/usage` endpoint where the Dashboard with PostgreSQL integration returned unfiltered results when one valid tag was used. Corrected the need for duplicating the same parameter as a workaround for filtering by multiple tags. Results are now properly filtered as expected, improving the accuracy and reliability of analytics data. -
      -
    • -
    • -
      -Enhanced Password Reset security - -Modified default OPA rules to prevent unauthorized admins from modifying other admins' passwords, mitigating potential 'rogue admin' behavior. Tyk Dashboard clients using custom OPA rules should update their rule set accordingly. Contact your assigned Tyk representative for assistance. -
      -
    • -
    • -
      -Fixed Universal Data Graph Schema Editor Import Issue - -Resolved an issue in the GQL schema editor for Data Graphs, where users couldn't utilize the 'Import Schema' button. Now, it's possible to import files containing GQL schemas into the Dashboard. -
      -
    • -
    • -
      -Enhanced Dashboard UI language - -Adjusted wording in Tyk's Dashboard UI to ensure inclusivity and clarity, removing any potentially oppressive language. -
      -
    • -
    • -
      -API Template not associated with Tyk Organization - -Fixed an issue where API Templates were not correctly assigned to Tyk Organizations allowing the potential for accidental sharing of secret data between Organizations through use of the incorrect template. -
      -
    • -
    • -
      -Added control over access to context variables from middleware when using Tyk OAS APIs - -Addressed a potential issue when working with Tyk OAS APIs where request context variables are automatically made available to relevant Tyk and custom middleware. We have introduced a control in the Tyk OAS API definition to disable this access if required. -
      -
    • -
    • -
      -Resolved PostgreSQL Dashboard Analytics issue - -Fixed an issue in the api/usage endpoint where Dashboard+Postgres returned unfiltered results with one valid tag, requiring duplication of the parameter as a workaround for multiple tags. Analytics now correctly filter results as expected. -
      -
    • -
    - ---- - -## 5.3.1 Release Notes - -### Release Date 24 April 2024 - -### Breaking Changes -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however if moving from a version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -When upgrading to 5.3.1, please follow the [detailed upgrade instructions](#upgrading-tyk). - - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.1">}}) below. - -### Dependencies {#dependencies-5.3.0} - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database. If you are [using MongoDB]({{< ref "planning-for-production/database-settings/mongodb" >}}) we recommend that you upgrade to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.1). - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.1 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.1} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.1) -- ```bash - docker pull tykio/tyk-dashboard:v5.3.1 - ``` -- Helm charts - - [tyk-charts v1.3]({{< ref "product-stack/tyk-charts/release-notes/version-1.3.md" >}}) - -### Changelog {#Changelog-v5.3.1} - -#### Fixed - -
      -
    • -
      -Improved security: user search method transitioned to POST - -Improved the behavior of the Dashboard when searching for users to avoid transmitting sensitive information (user email addresses) in the request query parameters. Deprecated the `GET` method for the `/api/users/search` endpoint in favor of a `POST` method with the same logic but with parameters supplied in the request body. -
      -
    • -
    • -
      -Improved security: removal of Access-Control-Allow-Credentials header - -As Tyk Dashboard and Tyk Classic Portal do not accept cross origin requests we have removed the `Access-Control-Allow-Credentials` header from Dashboard API responses to prevent any potential misuse of the header by attackers. This allows simplification of the web application's security configuration. -
      -
    • -
    • -
      -Improved security: mitigation against brute force attacks based on login response time analysis - -Implemented a randomised delay to obscure login response times, mitigating brute force attacks that rely on response time analysis. -
      -
    • -
    • -
      -Improved security: now unable to log into deleted Orgs - -Fixed a bug where a user was still able to log into an Organization on the Tyk Dashboard after that Organization had been deleted. Now, when an Organization is deleted, it will not be offered as an option when logging in. -
      -
    • -
    • -
      -Improved security: suppressed accidental exposure of access keys to stdout - -Fixed an issue where access keys could accidentally also be printed to the Dashboard's stdout when a call was made to `/api/keys` to retrieve the keys. This has now been suppressed. -
      -
    • -
    • -
      -Endpoint Designer does not handle wildcards in GraphQL policy allow/block lists - -The Endpoint Designer did not correctly display a GraphQL policy's allow or block list if a wildcard character (`*`) was used in the list's definition. This has been fixed and now, if the wildcard (`*`) is present in the allow/block list definition, the UI correctly displays the list of allowed/blocked fields. -
      -
    • -
    • -
      -Open Policy Agent editor fails to open on Windows platform - -Fixed an issue that was preventing the OPA editor from being visible using the keyboard shortcut when using Microsoft Windows. -
      -
    • -
    • -
      -Common keyboard shortcuts not working with UDG URL field in Data Graph Designer - -Fixed an issue where common keyboard shortcuts (Cmd + X, A, C, V) were not working correctly when configuring the URL field for a UDG data source. -
      -
    • -
    • -
      -Unexplained HTTP 400 error reported in Tyk OAS API Designer - -Fixed an issue in the Tyk OAS API Designer where there was no input validation of the OAuth Introspection URL. The Gateway reported an HTTP 400 error when attempting to save an API with an illegal value, however the API Designer did not guide the user to the source of the error. Now there is automatic validation of the text entered in the Introspection URL field. -
      -
    • -
    • -
      -Replaced the text editor used in Tyk Dashboard to address cursor issues - -Fixed an issue with the text editor in the Tyk OAS API Designer where the cursor was misaligned with where characters would be entered. We have replaced the text editor module throughout the Tyk Dashboard to use a more modern, supported library. -
      -
    • -
    • -
      -Activity by Graph chart sometimes had display issues - -The 'Top 5 Errors by Graph' bar chart in the Activity by Graph dashboard experienced display issues with long graph names and sometimes showed empty bars. This has been resolved, and the chart now displays accurately. -
      -
    • -
    • -
      -Analytics screens fail when too many requests are aggregated - -Fixed a bug where some Tyk Dashboard analytics screens stopped working when the analytics aggregates collection grew too large. -
      -
    • -
    • -
      -Unable to delete APIs from DocumentDB storage - -In [Tyk 5.2.2]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.2.md#Changelog-v5.2.2" >}}) we fixed an issue when using MongoDB and Tyk Security Policies where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This introduced an unintended side-effect for users of DocumentDB such that they were unable to delete APIs from the persistent storage. We identified that this was due to the use of the `$expr` operator in the solution - and discovered that this is supported by MongoDB but not by DocumentDB. We have now reimplemented the fix and removed the limitation introduced for DocumentDB users. -
      -
    • -
    • -
      -Unable to clear the API cache in distributed data plane Gateways from the control plane Dashboard - -Addressed a bug where clearing the API cache from the Tyk Dashboard failed to invalidate the cache in distributed data plane gateways. -
      -
    • -
    - ---- - -## 5.3.0 Release Notes - -### Release Date 5 April 2024 - -### Deployment Options for Tyk Dashboard - -#### Tyk Cloud -Tyk Dashboard 5.3.0 is available on Tyk Cloud since 5th April 2024. - -#### Self-Managed -This release is ready for installation on your own infrastructure. - -### Breaking Changes - -**Attention: Please read this section carefully.** - -#### Tyk OAS APIs Compatibility Caveats {#TykOAS-v5.3.0} - -This upgrade transitions Tyk OAS APIs out of [Early Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}). - -- **Out of Early access** - - This means that from now on, all Tyk OAS APIs will be backwards compatible and in case of a downgrade from 5.3.X to 5.3.0, the Tyk OAS API definitions will always work. -- **Not Backwards Compatible** - - Tyk OAS APIs in Tyk Dashboard v5.3.0 are not [backwards compatible](https://tinyurl.com/3xy966xn). This means that the new Tyk OAS API format used by Tyk Gateway/Dashboard v5.3.X does not work with older versions of Tyk Gateway/Dashboard, i.e. you cannot export these API definitions from a v5.3.X Tyk Dashboard and import to an earlier version. - - The upgrade of Tyk OAS API definitions is **not reversible**, i.e. you cannot use version 5.3.X Tyk OAS API definitions with an older version of Tyk Dashboard. - - This means that if you wish to downgrade or revert to your previous version of Tyk, you will need to restore these API definitions from a backup. Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed instructions on backup before upgrading to v5.3.0. - - When using MongoDB as your persistent data store, Tyk OAS APIs from v5.3.0 require a minimum version of MongoDB 5.0. - - If you are not using Tyk OAS APIs, Tyk will maintain backward compatibility standards. -- **Not Forward Compatible** - - Tyk OAS API Definitions prior to v5.3.0 are not [forward compatible](https://tinyurl.com/t3zz88ep) with Tyk Gateway v5.3.X. - - This means that any Tyk OAS APIs created in any previous release (4.1.0-5.2.x) cannot work with the new Tyk Dashboard v5.3.X without being migrated to its [latest format]({{}}). -- **MDCB deployment and Tyk OAS APIs** - - Tyk OAS APIs created in Tyk v5.3.0 will not be loaded by the data plane gateways if you are using MDCB v2.4 or older. This means that MDCB users already working with Tyk OAS APIs **must wait for the release of MDCB v2.5** before upgrading Tyk Gateway and Dashboard to v5.3.0. - - Tyk Dashboard v5.3.0 managing Tyk OAS APIs requires Tyk Gateway v5.3.0 and MDCB v2.5.X for proper functionality. Older versions of Tyk Gateway may experience compatibility issues with Tyk OAS API definitions from v5.3.0. -- **After upgrade (the good news)** - - If you had a Tyk OAS API prior to v5.3.0 then Tyk Dashboard will automatically update the API definition to [latest format]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}). - - This means that you do not have to do anything to make your Tyk OAS APIs compatible with the new 5.3.0 release as Tyk Dashboard will take care of that during start-up. - - As mentioned above, this upgrade of Tyk OAS API definitions is irreversible. - -**Important:** Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for essential instructions on how to backup before upgrading to v5.3.0 - -### Dependencies {#dependencies-5.3.0} - - -With MongoDB 4.4 reaching [EOL](https://www.mongodb.com/legal/support-policy/lifecycles) in February 2024, we can no longer guarantee full compatibility with this version of the database and recommend upgrading to a version that we have tested with, as indicated [below](#3rdPartyTools-v5.3.0). - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.3.0 | MDCB v2.5 | MDCB v2.5 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.3.0} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions {#upgrade-5.3.0} - -**The following steps are essential to follow before upgrading** - -1. For Self Managed deployments - Backup Your environment using the [usual guidance]({{}}) documented with every release (this includes backup config file and database). -2. For all deployments - Backup all your API definitions (Tyk OAS API and Classic Definitions): - - For Tyk Cloud deployments - To perform the backup please use our guide for [exporting APIs and policies]({{}}). - - For Self-Managed deployments - To perform the backup please use [Tyk Sync]({{}}). -4. Performing the upgrade - For all deployments, follow the instructions in the [upgrade guide](#upgrading-tyk) when upgrading Tyk. - -### Release Highlights - -We are excited to announce the release of 5.3.0, packed with new features, improvements and bug fixes to enhance your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v5.3.0) below. - -#### Tyk OAS Feature Maturity - -Tyk OAS is now out of [Early Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}) as we have reached feature maturity. You are now able to make use of the majority of Tyk's features from your Tyk OAS APIs, so they are a credible alternative to the legacy Tyk Classic APIs. -From Tyk 5.3.0 we support the following features when using Tyk OAS APIs with Tyk Dashboard: -- Security - - All Tyk-supported client-gateway authentication methods including custom auth plugins - - Automatic configuration of authentication from the OpenAPI description - - Gateway-upstream mTLS - - CORS - -- API-level (global) middleware including: - - Response caching - - Custom plugins for PreAuth, Auth, PostAuth, Post and Response hooks - - API-level rate limits - - Request transformation - headers - - Response transformation - headers - - Service discovery - - Internal API - -- Endpoint-level (per-path) middleware including: - - Request validation - headers and body (automatically configurable from the OpenAPI description) - - Request transformation - method, headers and body - - Response transformation - headers and body - - URL rewrite and internal endpoints - - Mock responses (automatically configurable from the OpenAPI description) - - Response caching - - Custom Go Post-Plugin - - Request size limit - - Virtual endpoint - - Allow and block listing - - Do-not-track - - Circuit breakers - - Enforced timeouts - - Ignore authentication - -- Observability - - Open Telemetry tracing - - Detailed log recording (include payload in the logs) - - Do-not-track endpoint - -- Governance - - API Versioning - - API Categories - - API Ownership - -#### API Templates - -Exclusively for Tyk OAS APIs, we are pleased to announce the introduction of API Templates: an API governance feature provided to streamline the process of creating APIs. An API template is an asset managed by Tyk Dashboard that is used as the starting point - a blueprint - from which you can create a new Tyk OAS API definition. With templates you can standardize configuration of your APIs more easily, combining your service-specific OpenAPI descriptions with enterprise requirements such as health endpoints, caching and authorization. - -#### Enhanced User Permissions - - Introducing allow list in field-based permissions via the Dashboard specifically tailored for GraphQL APIs. Users can now define granular access control for API key holders based on types and fields from a GraphQL schema. This feature enhances security and flexibility in managing API access, providing a more tailored and secure experience for users. - - #### Global Header Management - - We've introduced global header management specifically for UDG, simplifying header configuration across all data sources. Users can now effortlessly add, adjust, and delete multiple global headers, ensuring consistency and efficiency throughout API management, ultimately saving developers time and effort - -#### GraphQL focused analytics -We have made the first step towards bringing our users GraphQL-focused monitoring capabilities. Users can now gain valuable insights into error trends and usage patterns for GraphQL APIs, when storing graph analytics in SQL databases. With the addition of popularity and error bar charts, users can delve deeper into their data, facilitating optimization and troubleshooting efforts. - -#### Redis v7.x Compatibility -We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible with Redis v7.x. - -#### MongoDB v7.0.x Compatibility -We have upgraded `mongo-go` driver to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that both Tyk 5.0.x+ and Tyk 5.3 are compatible with MongoDB v7.0.x. - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.3.0) -- ```bash - docker pull tykio/tyk-dashboard:v5.3.0 - ``` -- Helm charts - - [tyk-charts GH Repo](https://github.com/TykTechnologies/tyk-charts/releases) - -### Changelog {#Changelog-v5.3.0} - - -#### Added - -
      -
    • -
      -Additional features now supported in Tyk OAS API Designer when working with Tyk OAS APIs - -The following features have been added in 5.3.0 to bring Tyk OAS to feature maturity: - - Detailed log recording (include payload in the logs) - - Enable Open Telemetry tracing - - API-level header transforms (request and response) - - Endpoint-level cache - - Circuit breakers - - Track endpoint logs for inclusion in Dashboard aggregated data - - Do-not-track endpoint - - Enforced upstream timeouts - - Configure endpoint as Internal (not available externally) - - URL rewrite - - Per-endpoint request size limit - - Request transformation - method, header - - Response transformation - header - - Custom domain certificates -
      -
    • -
    • -
      -Implemented Design Elements for GraphQL Permissions - -Support for field-based permissions allow list has been added in the Dashboard. Users can now define which types and fields from a GraphQL schema an API key holder can access by simply putting a tick next to them in the policy/key definition screens. -
      -
    • -
    • -
      -Added API Categories support for Tyk OAS APIs - -In this update, we've added support for API Categories for Tyk OAS APIs in the Tyk Dashboard, enhancing portfolio management by enabling efficient categorization and organization of APIs. -
      -
    • -
    • -
      -Added API Ownership support for Tyk OAS APIs - -We’ve extended the API ownership capabilities of Tyk Dashboard to Tyk OAS APIs. This feature allows you to manage visibility of APIs deployed on the Dashboard, streamlining governance processes and enhancing internal security. -
      -
    • -
    • -
      -Added API Templates for Tyk OAS APIs - -Extended Tyk Dashboard API to support CRUD operations on API Templates, enabling users to create, apply, and manage templates programmatically. - -Added Dashboard UI functionality for creation and management of API Templates, including the ability to create templates from existing Tyk OAS APIs. You can apply templates during API creation, including when importing OpenAPI documents. Access to API templates is controlled through the introduction of a new user permission. -
      -
    • -
    • -
      -Import OpenAPI Documents from File or URL - -Now you can import the OpenAPI description from a file or URL when creating or updating your Tyk OAS APIs. -
      -
    • -
    • -
      -Introduced Global Header Management for GraphQL - -Access the new Global Header Management feature directly through the Headers Management tab. Swiftly add and configure multiple global headers or remove them with a single click, ensuring they're forwarded to all GraphQL data sources. This enhancement streamlines header management, providing a more user-friendly experience. -
      -
    • -
    • -
      -Added monitoring capabilities for GraphQL APIs in the Dashboard - -We’ve enabled basic Graph monitoring in the Dashboard. Due to the specificity of GQL APIs, monitoring them as you would REST, is not enough. One endpoint vs multiple endpoints, multiple queries/mutations vs HTTP methods, errors that happen not only in HTTP layer but also come back in response body - that all makes monitoring GQL slightly more complex than just looking at request and error rates. - -A new section of the Dashboard offers the following information: -- top 5 most popular graphs and operations requested within them within a specified period of time -- top 5 graphs with errors within a specified period of time -- summary of number of requests, number of successful responses, number of errors, average latency and last access date within a specified period of time for all graphs -
      -
    • - -
    • -
      -Support MongoDB v7.0.x - -Tyk 5.3 integrates with [storage v1.2.2](https://github.com/TykTechnologies/storage), which updated mongo-go driver we use from v1.11.2 to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that Tyk 5.0.x+ is compatible with MongoDB v7.0.x -
      -
    • - -
    • -
      -Support Redis v7.0.x - -Tyk 5.3 refactors Redis connection logic by using [storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), which integrates with [go-redis](https://github.com/redis/go-redis) v9. Subsequently, support now exists for Redis v7.0.x. -
      -
    • -
    - - -#### Changed - -
      -
    • -
      -Enhanced Dashboard Navigation: Introducing Favorite Screens - -Every Dashboard menu item can now be flagged as a favorite so that it is pinned to the top of the menu navigation bar for easier access. We've also made a few changes in styling, so that the navigation menu is nicer to look at. -
      -
    • -
    • -
      -Improved UI for GraphQL Data Source Headers Management - -We have moved data source header management to a separate tab, so that it is easy to configure global headers that will be forwarded to all data sources by default. The data source configuration screen displays all headers that will be sent with the upstream request in read-only mode now and changes can be made by switching to Headers Management tab. -
      -
    • -
    • -
      -Go 1.21 upgrade for Dashboard - -We have updated Tyk Dashboard to use Go 1.21, matching the upgrade in Tyk Gateway 1.21. Remember to recompile any custom Go plugins with the matching version of Go to avoid incompatibility problems. -
      -
    • -
    • -
      -The internal TIB session secret defaults to admin_secret if it is not set explicitly - -If internal TIB is enabled in Dashboard and the TYK_IB_SESSION_SECRET environment variable is not set, it will be default to Dashboard admin_secret. It provides better security and user experience because SSO flow would not work if TYK_IB_SESSION_SECRET is not set. -
      -
    • -
    • -
      -Set default MongoDB driver to mongo-go - -Tyk uses `mongo-go` as the default MongoDB driver from v5.3. This provides support for MongoDB 4.4.x, 5.0.x, 6.0.x and 7.0.x. If you are using older MongoDB versions e.g. 3.x, please set MongoDB driver to `mgo`. The [MongoDB supported versions](https://tyk.io/docs/planning-for-production/database-settings/mongodb/#supported-versions) page provides details on how to configure MongoDB drivers in Tyk. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Resolved OPA rule restriction on UDG OAS import endpoint - -We fixed an issue where OPA rules were preventing users from importing an OpenAPI document as a UDG data source using the /api/data-graphs/data-sources/import endpoint. The endpoint has now been included into the correct user permission group and will be accessible for users who have `api:write` permissions. -
      -
    • -
    • -
      -Optimized Policy Creation Endpoint - -Fixed an issue where applying security policies to large numbers of APIs took a long time. We’ve implemented bulk processing in the validation step at the api/portal/policies/POLICY_ID endpoint, resulting in an 80% reduction in the time taken to apply a policy to 2000 APIs. -
      -
    • -
    • -
      -Improved Security for Classic Portal - -Moved all HTML inline scripts to their own script files, to accommodate the content security policies that have been enabled, to increase security. -
      -
    • -
    • -
      -Errors importing larger OpenAPI Documents - -Fixed an issue when importing reasonably large OpenAPI documents via the Dashboard would fail due to MongoDB storage limitation of 16 MB per document. -
      -
    • -
    • -
      -Removed the need for a Description to be provided in the OpenAPI schema when autogenerating a Tyk OAS mock response - -Relaxed the strict validation for mock response so that the `Description` field is now optional for `response`, `responses` and `schema` within the OpenAPI description. Automatically configuring mock responses when using [Tyk OAS APIs]({{< ref "product-stack/tyk-gateway/middleware/mock-response-openapi" >}}) is now even easier. -
      -
    • -
    • -
      -Fixed SSO flow for Classic Developer Portal - -For Classic Portal cookies and Dashboard, use `SameSite = SameSiteLaxMode` so that SSO flows can be performed -
      -
    • -
    • -
      -Remove unnecessary warning output from `tyk-dashboard --version` - -Remove the following unnecessary warning output when users use the `tyk-dashboard --version` command to check dashboard version. -> `WARN toth/tothic: no TYK_IB_SESSION_SECRET environment variable is set. The default cookie store is not available and any calls will fail. Ignore this warning if you are using a different store.` -
      -
    • -
    - -#### Security Fixes - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - - - ---- - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.4.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.4.md deleted file mode 100644 index 47b5b90c81..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.4.md +++ /dev/null @@ -1,251 +0,0 @@ ---- -title: Tyk Dashboard 5.4 Release Notes -date: 2024-03-27T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.4.X series." -tags: ["Tyk Dashboard", "Release notes", "v5.4", "5.4.0", "5.4", "changelog"] ---- - - -**This page contains all release notes for version 5.4.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- -## 5.4.0 Release Notes -### Release Date 2 July 2024 -### Breaking Changes - -**Attention: Please read this section carefully** -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.4.0} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.4.0 | MDCB v2.6.0 | MDCB v2.5.1 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5.0 | Sync v1.4.3 | -| | Helm Chart v1.5.0 | Helm all versions | -| | EDP v1.10.0 | EDP all versions | -| | Pump v1.10.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.4.0} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - - -### Upgrade instructions {#upgrade-5.4.0} -If you are upgrading to 5.4.0, please follow the detailed [upgrade instructions](#upgrading-tyk). -Add upgrade steps here if necessary. - -### Release Highlights - -We're thrilled to introduce exciting enhancements in Tyk Dashboard 5.4, aimed at improving your experience with Tyk Dashboard. For a comprehensive list of changes, please refer to the change log below. - -### Event handling for Tyk OAS APIs - -We’ve added support for you to register webhooks with your Tyk OAS APIs so that you can handle events triggered by the Gateway, including circuit breaker and quota expiry. You can also assign webhooks to be fired when using the new smoothing rate limiter to notify your systems of ongoing traffic spikes. For more details see the [documentation]({{< ref "basic-config-and-security/report-monitor-trigger-events/webhooks" >}}). - -### Enhanced Header Handling in GraphQL APIs - -Introduced a features object in API definitions for GQL APIs, including the `use_immutable_headers` attribute. This allows advanced header control, enabling users to add new headers, rewrite existing ones, and selectively remove specific headers. Existing APIs will have this attribute set to `false` by default, ensuring no change in behavior. For new APIs, this attribute is true by default, facilitating smoother migration and maintaining backward compatibility. - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.4.0) -- ```bash - docker pull tykio/tyk-dashboard:v5.4.0 - ``` -- Helm charts - - [tyk-charts v1.5]({{< ref "/product-stack/tyk-charts/release-notes/version-1.5.md" >}}) - -### Changelog {#Changelog-v5.4.0} - -#### Added - -
      -
    • -
      -Introduced Rate Limit Smoothing for Redis Rate Limiter - -Implemented a [rate limit smoothing mechanism]({{< ref "getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) to gradually adjust the rate limit as the request rate increases and decreases between an intermediate threshold and the maximum rate limit. New `RateLimitSmoothingUp` and `RateLimitSmoothingDown` events will be triggered as this smoothing occurs, supporting auto-scaling of upstream capacity. The smoothing process gradually increases the rate, thereby unblocking clients that exceed the current request rate in a staggered manner. -
      -
    • -
    • -
      -Updated API designer toolbar for GraphQL and Universal Data Graph - -Revamped the API designer toolbar for GraphQL and Universal Data Graph, consolidating all relevant actions for each API type under a single menu dropdown for improved usability. -
      -
    • -
    • -
      -Updated API designer toolbar for HTTP and TCP - -Revamped the API designer toolbar for HTTP and TCP, consolidating all relevant actions for each API type under a single menu dropdown for improved usability. -
      -
    • -
    • -
      -New Tyk OAS features - -We’ve added some more features to the Tyk OAS API, moving closer to full parity with Tyk Classic. In this release we’ve added controls that allow you: to enable or prevent generation of traffic logs at the API-level; to enable or prevent the availability of session context to middleware and to pin public key certificates to an API. We’ve also added the facility to register webhooks that will be fired in response to Gateway events. -
      -
    • -
    • -
      -New Dashboard API endpoints - -We have added a new `/oas/dry-run` endpoint to the Tyk Dashboard API. This uses the Dashboard’s logic to create or update a Tyk OAS API definition using an OpenAPI document without instantiating the API on the Tyk platform. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Fixed template inheritance issue in API Designer - -Resolved a bug in the API Designer where certain properties, such as `use_immutable_headers`, were not correctly inherited from the new API template. This fix ensures all default settings from the template are properly applied when creating a new API. -
      -
    • -
    • -
      -Corrected assignment issue for API Templates in Tyk organizations - -Fixed an issue where API Templates were not correctly assigned to Tyk Organizations, preventing potential accidental sharing of secret data between Organizations through the use of incorrect templates. -
      -
    • -
    • -
      -Addressed keyboard shortcut issues in Universal Data Graph URL field configuration - -Fixed an issue where common keyboard shortcuts (Cmd + X, A, C, V) were not functioning correctly when configuring the URL field for a UDG data source. -
      -
    • -
    • -
      -Streamlined data source import endpoint in Dashboard API - -Improved the data source import endpoint in the Dashboard API by removing the need for users to convert OpenAPI/AsyncAPI documents into strings before submission. Users can now provide the documents directly, enhancing the overall user experience. -
      -
    • -
    • -
      -Enhanced password reset security - -Modified default OPA rules to fix an issue where admins were unable to reset their own password. Tyk Dashboard clients using custom OPA rules should update their rule set accordingly. Contact your assigned Tyk representative for assistance. -
      -
    • -
    • -
      -Corrected filtering for Dashboard Analytics with PostgreSQL - -Addressed an issue in the api/usage endpoint where Dashboard analytics with PostgreSQL returned unfiltered results. The endpoint now correctly filters results, eliminating the need for duplicating parameters to handle multiple tags. -
      -
    • -
    • -
      -Minor Dashboard UI fixes and improvements - -We have made some improvements to the wording used in the Dashboard user interface and fixed some minor usability issues. -
      -
    • -
    - -#### Security Fixes - -
      -
    • -
      -High priority CVEs fixed -Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - ---- - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - - - - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.5.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.5.md deleted file mode 100644 index de8eb61c97..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.5.md +++ /dev/null @@ -1,345 +0,0 @@ ---- -title: Tyk Dashboard 5.5 Release Notes -date: 2024-03-27T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.5.X series." -tags: ["Tyk Dashboard", "Release notes", "changelog", "v5.5", "5.5", "5.5.0", "5.5.1", "5.5.2"] ---- - -**This page contains all release notes for version 5.5.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.5.2 Release Notes - -### Release Date 03 October 2024 - -### Release Highlights - -This release replaces Tyk Dashboard 5.5.1 which was accidentally released as a non-distroless image. - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.5.2} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.2 | MDCB v2.7 | MDCB v2.5.1 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v2.0.0 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.2} - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.5.2} - -If you are upgrading to 5.5.2, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.2) -- ```bash - docker pull tykio/tyk-dashboard:v5.5.2 - ``` -- Helm charts - - [Tyk Charts v2.0.0]({{}}) - -### Changelog {#Changelog-v5.5.2} - -No changes in this release. - ---- - -## 5.5.1 Release Notes - -### Release Date 26 September 2024 - -### Release Highlights - -This is a version bump to align with Gateway v5.5.1, no changes have been implemented in this release. - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.5.1} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.1 | MDCB v2.7 | MDCB v2.5.1 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v2.0.0 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.1} - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.5.1} - -If you are upgrading to 5.5.1, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.1) -- ```bash - docker pull tykio/tyk-dashboard:v5.5.1 - ``` -- Helm charts - - [Tyk Charts v2.0.0]({{}}) - -### Changelog {#Changelog-v5.5.1} - -No changes in this release. - ---- - -## 5.5.0 Release Notes - -### Release Date 12 August 2024 - -### Release Highlights - -We are excited to announce Tyk Dashboard 5.5, featuring a brand-new dashboard identity, advanced rate-limiting capabilities, and enhanced security options. For a comprehensive list of changes, please refer to the [changelog]({{< ref "#Changelog-v5.5.0">}}) below. - -#### New Tyk brand identity - -Experience a refreshed and modern look with our updated brand identity. The new design enhances usability and provides a cleaner, more intuitive interface for managing your APIs. - -#### Per Endpoint Rate Limiting - -Now configure rate limits at the endpoint level for both [Tyk OAS]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas" >}}) and [Tyk Classic APIs]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic" >}}), providing granular protection for upstream services against overloading and abuse. - -### Breaking Changes - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.5.0} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.0 | MDCB v2.7 | MDCB v2.5.1 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v1.6 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.5.0} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - - -### Upgrade instructions {#upgrade-5.5.0} -If you are upgrading to 5.5.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.5.0) -- ```bash - docker pull tykio/tyk-dashboard:v5.5.0 - ``` -- Helm charts - - [tyk-charts v1.6]({{< ref "/product-stack/tyk-charts/release-notes/version-1.6.md" >}}) - -### Changelog {#Changelog-v5.5.0} - -#### Added - -
      -
    • -
      -Configure the new endpoint level rate limits in API Designer - -Rate limits can now be configured at the endpoint level in Tyk OAS and Tyk Classic API definitions. Configure these new more granular controls from the API Designer. -
      -
    • -
    • -
      -Improved handling of requests to non-existent versions of APIs when using URL path versioning - -When configuring API versioning settings for Tyk OAS APIs, you can now set a *Version Identifier Pattern* when using the URL path to indicate the API version (for example `/v1/my-api`). This will be used to avoid accidentally stripping part of the target URL (and failed upstream proxy) if the client doesn't provide any version identifier. If you're using Tyk Classic APIs you can set the `url_versioning_pattern` field in the API definition using the raw API editor. -
      -
    • -
    • -
      -Improved schema editor functionality for GQL APIs - -We've expanded the functionality of the schema editor for GQL APIs. Users can now easily import their schema from a file, export it, or quickly clean the entire editor if a mistake is made. -
      -
    • -
    - -#### Changed - -
      -
    • -
      -Updated NPM packages dependencies - -Updated npm package dependencies of Dashboard, to address security vulnerabilities. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Resolved an issue seen when using reponse plugins with Tyk OAS APIs - -Addressed a problem where Response Plugins were not being invoked for Tyk OAS APIs. -
      -
    • -
    • -
      -Save API button now visible for SSO users - -Addressed an issue for SSO users where user permissions were not correctly applied. This led to the Save API button not being visible to all appropriate users in the API Designer. -
      -
    • -
    • -
      -Public playground schema exposure fixed with Introspection disabled - -Resolved an issue where the Public GQL Playground displayed schema information despite introspection being turned off. Now, schema details are hidden unless valid authentication credentials are provided, ensuring a secure and consistent user experience. -
      -
    • -
    • -
      - Resolved issue with no analytics data showing on Endpoint Popularity page - -Addressed an issue where the Dashboard displayed a blank pane when accessing the Activity by Endpoint page after upgrading to Tyk 5.3.1. -
      -
    • -
    - -#### Security Fixes - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Dashboard, providing increased protection against security vulnerabilities: -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - - - - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.6.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.6.md deleted file mode 100644 index a2cfd9ff13..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.6.md +++ /dev/null @@ -1,330 +0,0 @@ ---- -title: Tyk Dashboard 5.6 Release Notes -date: 2024-10-08T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.6.X series." -tags: ["Tyk Dashboard", "Release notes", "v5.6", "5.6.0", "5.6", "changelog"] ---- - - -**This page contains all release notes for version 5.6.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.6.1 Release Notes - -### Release Date 18 October 2024 - -### Release Highlights - -This is a version bump to align with Gateway v5.6.1, no changes have been implemented in this release. - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.6.1} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.6.1 | MDCB v2.7.1 | MDCB v2.5.1 | -| | Operator v1.0.0 | Operator v0.17 | -| | Sync v2.0 | Sync v1.4.3 | -| | Helm Chart v2.1 | Helm all versions | -| | EDP v1.11 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.6.1} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.6.1} - -If you are upgrading to 5.6.1, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.6.1) -- ```bash - docker pull tykio/tyk-dashboard:v5.6.1 - ``` -- Helm charts - - [Tyk Charts v2.0.0]({{}}) - -### Changelog {#Changelog-v5.6.1} - -No changes in this release. - - ---- -## 5.6.0 Release Notes - -### Release Date 10 October 2024 - -### Release Highlights - -We are thrilled to announce new updates and improvements in Tyk 5.6.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.6.0">}}) below. - -#### Per endpoint Rate Limiting for clients - -Now you can configure rate limits at the [endpoint level per client]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}), using new configuration options in the access key. Use Tyk's powerful [security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) to create templates to set appropriate rate limits for your different categories of user. - -#### Go upgrade to 1.22 - -We’ve upgraded the Tyk Dashboard to Golang 1.22, bringing improved performance, better security, and enhanced stability to the core system. - -#### Strengthened Role-Based Access Controls (RBAC) to combat privilege escalation risks - -We’ve tightened up the rules that govern a user's ability to create admin users and to reset other users' passwords when using Tyk's RBAC function. Now, only super-admins can create new admins, admin roles can't be assigned to user groups, and only admin users can reset another user's password (and only within their Tyk organization). - -### Breaking Changes - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.6.0} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.6.0 | MDCB v2.7.1 | MDCB v2.5.1 | -| | Operator v1.0.0 | Operator v0.17 | -| | Sync v2.0 | Sync v1.4.3 | -| | Helm Chart v2.1 | Helm all versions | -| | EDP v1.11 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.6.0} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - - -We are deprecating support for SQLite, External OAuth Middleware, and OpenID Connect (OIDC) Middleware in Tyk Dashboard to simplify the platform and enhance overall performance. These changes will take effect from 5.7.0. - -### Why the Change? - -### SQLite - -While useful for testing, SQLite is not designed for production environments. By focusing on PostgreSQL and MongoDB, we can provide users with more scalable and reliable options. - -### External OAuth Middleware - -This feature serves a similar purpose to our JWT Authentication and may lead to confusion. We recommend transitioning to JWT Authentication for a more streamlined experience. - -### OpenID Connect (OIDC) Middleware - -The low adoption of this option, along with its functional overlap with other supported authentication methods, prompts us to deprecate OIDC middleware to reduce complexity within the platform. We recommend users transition to JWT Authentication. - - -We encourage users to switch to the recommended alternatives. For more detailed information, please refer to the [Documentation](https://tyk.io/docs//api-management/authentication-authorization#use-openid-connect/) - - - - -### Upgrade instructions {#upgrade-5.6.0} -If you are upgrading to 5.6.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.6.0) -- ```bash - docker pull tykio/tyk-dashboard:v5.6.0 - ``` -- Helm charts - - [tyk-charts v2.1.0]({{}}) - -### Changelog {#Changelog-v5.6.0} - -#### Added - -
      -
    • -
      -Per endpoint client rate limiting - -Building on the [per-endpoint upstream rate limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have now added [per-endpoint client rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature allows for more granular control over client consumption of API resources by associating the rate limit with the access key, enabling you to manage and optimize API usage more effectively. -
      -
    • -
    - -#### Changed - - -
      -
    • -
      -Upgrade to Go 1.22 for Tyk Dashboard - -The Tyk Dashboard has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, and access to the latest features available in the new Golang release. -
      -
    • -
    • -
      -Improved documentation and schema for Tyk Dashboard API - -We have updated the swagger.yml schema for Tyk Dashboard API to reflect the latest changes in product endpoints, payloads, and responses. This update includes new fields and endpoints, improved examples, documentation adjustments, and fixes for schema issues. These enhancements aim to improve usability and ensure that the documentation accurately represents the current code state. -
      -
    • - -
    • -
      -Renamed GraphQL "Playground" tab to "Playgrounds" - -The "Playground" tab in the GraphQL API Designer has been renamed to "Playgrounds." This change consolidates access to both internal and external playgrounds within a single section, offering a more streamlined and intuitive experience for API design and testing. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Addressed some display issues in Dashboard Analytics and Classic Portal when using PostgreSQL storage - -- Resolved an issue where HTTP 429 status codes were not being displayed on the Activity Overview page. -- Fixed portal graphs by adding a default "day" grouping resolution to the query. -- Corrected issues with the Error Breakdown related to date parameters, ensuring accurate date handling and display. - -
      -
    • - -
    • -
      -Dashboard didn't display correctly if more than 10 policies assigned to a key - -We have resolved an issue where the Keys page would display a blank screen if a key was associated with more than 10 policies. The UI has been fixed to display the page properly, regardless of the number of policies attached to a key. - -
      -
    • - -
    • -
      -Dashboard UI did not prevent multiple versions of a Tyk Classic API from being assigned to a policy - -When working with Tyk Classic APIs, you cannot permit access to multiple versions of the same API from a single policy. We have fixed an issue in the Dashboard UI where users were able to attach multiple versions to a policy leading to an unusable policy. The UI now correctly prevents the addition of multiple versions of an API to a single policy. - -
      -
    • - -
    • -
      -Dashboard didn't correctly record scope to policy mappings for JWTs - -We have fixed an issue in the Dashboard UI when assigning multiple claim to policy mappings while configuring JWT auth for an API. The scope name was incorrectly recorded instead of the policy ID for the second and subsequent JWT scope mappings. The UI now correctly associates the defined claim with the appropriate policy, ensuring accurate JWT scope to policy mappings. - -
      -
    • - -
    • -
      -Gateway logs page not displaying correctly - -We have fixed an issue in the Monitoring section of the Dashboard UI where the *Gateway logs* page was not displaying correctly. The page is now rendered properly, ensuring users with appropriate permissions can view and manage *Gateway logs* as expected. - -
      -
    • - -
    - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - - - diff --git a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md b/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md deleted file mode 100644 index 6700190c04..0000000000 --- a/tyk-docs/content/product-stack/tyk-dashboard/release-notes/version-5.7.md +++ /dev/null @@ -1,333 +0,0 @@ ---- -title: Tyk Dashboard 5.7 Release Notes -date: 2024-10-08T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Dashboard versions within the 5.6.X series." -tags: ["Tyk Dashboard", "Release notes", "v5.7", "5.7.0", "5.7", "changelog"] ---- - - -**This page contains all release notes for version 5.7.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- -## 5.7.0 Release Notes - -### Release Date 03 December 2024 - -### Release Highlights - -We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0" >}}) below. - -#### Tyk Streams can be configured through Tyk Dashboard - -With this release we are adding a possibility for users to configure their Stream & Events APIs using Tyk Dashboard. -The new API designer leads users step-by-step to create a new Stream configuration easily. Pre-filled stream configurations for different inputs and outputs make it easy to make sure that the Stream is configured correctly. - -#### Improved Audit Log Management - -Tyk 5.7.0 enhances Audit Log management with new features designed for efficiency and security. Users can now store Dashboard Audit Logs in a database for persistent retention and access them via the new /audit-logs API, which supports advanced filtering by attributes like action, IP, status, and user. Additionally, a dedicated Audit Log RBAC group ensures secure access to sensitive log data. These improvements simplify monitoring and compliance workflows, particularly in containerized environments. - -### Breaking Changes - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.7.0} - -#### Compatibility Matrix For Tyk Components - -| Dashboard Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.7.0 | MDCB v2.7.2 | MDCB v2.5.1 | -| | Operator v1.1.0 | Operator v0.17 | -| | Sync v2.0.1 | Sync v1.4.3 | -| | Helm Chart v2.2 | Helm all versions | -| | EDP v1.12 | EDP all versions | -| | Pump v1.11.1 | Pump all versions | -| | TIB (if using standalone) v1.6.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools {#3rdPartyTools-v5.7.0} - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [GoLang](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Dashboard | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 5.0.x, 6.0.x, 7.0.x | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by Tyk Dashboard | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}})| - -### Deprecations - -In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). - -Additionally, SQLite has reached its End of Life in this release, enabling a fully static, CGO-free Tyk Dashboard optimised for RHEL8. Sqlite was previously recommended only to be used in basic proofs of concept. Now, for such scenarios and for production, we recommend migrating to PostgreSQL or MongoDB for better scalability and support. - - -### Upgrade instructions {#upgrade-5.7.0} -If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker Image to pull](https://hub.docker.com/r/tykio/tyk-dashboard/tags?page=&page_size=&ordering=&name=v5.7.0) - - ```bash - docker pull tykio/tyk-dashboard:v5.7.0 - ``` -- Helm charts - - [tyk-charts v2.2.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.2.md" >}}) - -### Changelog {#Changelog-v5.7.0} - -#### Added - -
      -
    • -
      -Added confirmation prompt for Stream deletion - -Introduced a confirmation prompt when deleting a stream, notifying users that this action will stop all data streaming and cannot be undone. This change ensures users are fully aware of the impact before proceeding with deletion. -
      -
    • -
    • -
      -Displayed Streaming API in API overview table - -Added "Streams" as an API type in the API Overview table, making it easier for API developers to identify APIs categorised as Streams & Events. -
      -
    • -
    • -
      -Implemented logic for config framework selection in Streaming API creation - -Added logic for the Streaming API creation process, allowing users to select config frameworks for inputs, processors, and outputs. An 'Advanced' option is also available, which leaves the code editor empty while generating and displaying the YAML Bento config based on the user's selections. -
      -
    • -
    • -
      -Enhanced info messages for securing Streaming & Events APIs in policies & keys - -Included new info messages and tooltips in the Policies & Keys section to guide users on securing Streaming & Events APIs. Updated messaging clarifies the combination of API types and revised copy in the Global Rate Limiting and Quota sections to better explain usage limits for keys and plans. -
      -
    • -
    • -
      -Enabled URL view and copy functionality in external playgrounds tab - -Enabled URL view and copy functionality in the External Playgrounds tab, supporting scenarios with multiple organisations and URLs for playgrounds. -
      -
    • -
    • -
      -Introduced /streams endpoint to Tyk Dashboard API - -Rolled out the `/streams` endpoint to the Tyk Dashboard API, dedicated to creating Stream and Events APIs in Tyk Streams. Documentation for the endpoint and its methods is available in the Tyk Docs. -
      -
    • -
    • -
      -Split Streaming API into new type in API designer - -Separated Streaming API into its own type in the API Designer, introducing a new selection card for easier creation and configuration. Navigation enhancements, including a shortcut menu item, provide quicker access to the streaming configuration UI. -
      -
    • -
    • -
      -Integrated step-by-step UI for Config framework selection in Streaming API creation - -Developed a step-by-step UI for Streaming API creation, enabling users to select a config framework for inputs, processors, and outputs. The dynamic wizard steps are integrated into the Tyk UI library to prefill configurations based on selections and prevent the combination of 'Custom' with other frameworks. -
      -
    • -
    • -
      -Easily contact Tyk Support during Tyk Cloud trial - -Introduced a form on the Tyk Dashboard that allows users to easily contact Tyk support during their trial period. -
      -
    • -
    • -
      -Support for JWE in OIDC SSO - -We have enhanced security for customers in highly regulated industries by introducing JSON Web Encryption (JWE) support for OIDC single sign-on (SSO). This ensures that tokens used in authentication flows are securely encrypted, providing an additional layer of protection. - -[Setup guide for JWE OIDC SSO]({{< ref "tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth" >}}) -
      -
    • -
    • -
      -Store Audit Logs in a Database - -Users can now choose to store Dashboard Audit Logs directly in a database, enabling efficient and reliable log storage. This feature is particularly beneficial for organizations needing persistent audit log retention to meet compliance requirements or for forensic purposes. -
      -
    • -
    • -
      -Access Audit Logs via /audit-logs endpoint - -A new API endpoint, `/audit-logs`, has been introduced to provide programmatic access to audit logs stored in database. This allows users to retrieve, filter, and analyze logs more effectively. The API supports filtering logs by key attributes like action, IP address, URL accessed, date range, user, and page number. - -For detail usage of the `/audit-logs` endpoint, please see [Dashboard API documentation]({{< ref "tyk-dashboard-api" >}}). -
      -
    • -
    • -
      -New Role-Based Access Control (RBAC) for Audit Logs - -To secure access to audit logs, we’ve added a new Audit Log RBAC group. This ensures that only authorized users can view or retrieve sensitive log information. Administrators can assign this permission as part of their security and compliance strategy. -
      -
    • -
    - -#### Changed - - -
      -
    • -
      -Removed AJV validation for Streams config editor - -Eliminated AJV validation in the Streams Config Editor to prevent false positives on valid YAML configurations. The frontend now solely checks the YAML structure, providing users with greater flexibility without enforcing strict Bento-specific schema rules -
      -
    • -
    • -
      -Hide unnecessary field from API Designer page for Streams - -Removed an unnecessary field from the API Designer page under the Streams section to enhance clarity. This update impacts the Event Handlers, Detailed Activity Logs, Caching, and Endpoints tabs. -
      -
    • -
    • -
      -Automatic configuration of request validation for path-level parameters during import of OpenAPI description - -Tyk will now detect path-level parameters in the OpenAPI description and can be set to enable and configure the [Request Validation]({{< ref "product-stack/tyk-gateway/middleware/validate-request-tyk-oas" >}}) middleware automatically for these. Previously this automatic detection only worked for method-level parameters in the OpenAPI description. -
      -
    • -
    • -
      -Deprecated SQLite support from Dashboard for RHEL8 compatibility - -Removed SQLite support to enhance portability and security, ensuring the released binary can now be built statically and no longer relies on system libraries. This change supports continued compatibility with RHEL8. -
      -
    • -
    • -
      -Deprecated External OAuth and OpenID Connect Options in Tyk Dashboard - -The External OAuth and OpenID Connect authentication options have been deprecated in the Tyk Dashboard. Users are advised to utilize JWT Auth with external IDPs for a more complete integration, while existing functionality remains operational to avoid breaking changes. -
      -
    • -
    • -
      -Updated NPM package dependencies - -Updated NPM package dependencies of Dashboard, to address security vulnerabilities. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Fixed navigation issue with "Back to APIs Page" Button on Streams API page - -Resolved an issue where the "Back to APIs Page" button was unresponsive on the Streams API page. The button now correctly redirects users to the main APIs page for all API types. -
      -
    • -
    • -
      -Resolved search box limitation on Tyk OAS and Streams API pages - -Corrected an issue where the search box on the Tyk OAS and Streams API pages only accepted a single character. Users can now input complete search terms, allowing for more accurate searches. -
      -
    • -
    • -
      -Unable to see all *user groups* in Dashboard dropdown - -Fixed an issue with the *user group* dropdown in the Dashboard UI, ensuring that all available user groups are displayed when creating a new user. -
      -
    • -
    - - - - - ---- - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{< ref "tyk-dashboard-api/" >}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - - diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose.md index d7c6431de5..3acd283036 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker-compose.md @@ -66,7 +66,7 @@ Once you have completed this step, you are ready to launch the portal applicatio #### Create a docker-compose file Before launching the portal using docker-compose, you will need to create a `docker-compose.yaml` file. An example of the portal's docker-compose file is provided below, which you can use as a starting point and further customize to meet your specific requirements. -Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md" >}}). +Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "developer-support/release-notes/portal#170-release-notes" >}}). ```yaml version: '3.6' @@ -152,7 +152,7 @@ Before launching the portal using docker-compose, you will need to create a `doc An example of the portal's docker-compose file is provided below, which you can use as a starting point and further customize to meet your specific requirements. Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. -You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md" >}}). +You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "developer-support/release-notes/portal#170-release-notes" >}}). ```yaml version: '3.6' diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md index 6884803a56..1b2d23b7b8 100644 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md +++ b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-docker.md @@ -95,7 +95,7 @@ Once you have completed this step, you are ready to launch the portal applicatio #### Pull and launch the portal container To pull and launch the portal using Docker, use the command provided below. -Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md" >}}). +Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes section]({{< ref "developer-support/release-notes/portal#170-release-notes" >}}). ```console docker run -d \ -p 3001:3001 \ @@ -191,7 +191,7 @@ Once you have completed this step, you are ready to launch the portal applicatio #### Pull and launch the portal container To pull and launch the portal using Docker, use the command provided below. Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. -You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes]({{< ref "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md" >}}) section. +You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes]({{< ref "developer-support/release-notes/portal#170-release-notes" >}}) section. ```console docker run -d \ -p 3001:3001 \ @@ -262,7 +262,7 @@ Once you have completed this step, you are ready to launch the portal applicatio #### Pull and launch the portal container To pull and launch the portal using Docker, use the command provided below. Ensure that you replace `` with the specific version of the portal you intend to launch before executing the command, e.g. `tykio/portal:v1.7` for the portal v1.7. -You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes]({{< ref "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md" >}}) section. +You can browse all available versions on [Docker Hub](https://hub.docker.com/r/tykio/portal/tags) and in the [release notes]({{< ref "developer-support/release-notes/portal#170-release-notes" >}}) section. ```console docker run -d \ -p 3001:3001 \ diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/.placeholder b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0.md deleted file mode 100644 index 29df5ec8ee..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.1.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.1.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.1.0"] -menu: -main: -parent: "Release Notes" -weight: 1 ---- - -**Licensed Protected Product** - -##### Release Date 20 Jan 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -We advise you to upgrade ASAP directly to this release. - -## Release Highlights -This release introduce a variety of features to improve developer experience. Additionally, we've included support for the S3 storage type as well as some bug fixes. - -#### Organization management for API Consumers -Now API Consumers can [create organizations]({{}}) and securely share credentials between their teammates. In greater detail: -- API Consumers can request to upgrade their account to an organizational account. -- API Consumers can invite teammates to their organization and manage their roles. -- API Consumers in the same organization share access credentials so that the API Consumer team will still have access to API credentials even if an admin user is on vacation or left the organization. -- API Providers can configure whether they allow API consumers to request an upgrade to their accounts for an organizational account. -- API Providers can manually accept, reject or configure to accept all such request to accepted by default. - -#### Get started guides -API Providers can add [Get started guides]({{}}) to API Products for better developer experiences: -- API Providers can add the **Get started guides** to API Products to speed-up onboarding of API Consumers. -- API Providers can use HTML or Markdown editors for authoring content for API Consumers such as the Get started guides and blog posts. - -#### Tags for API Products and blog posts -API Providers can select which blogs posts to display on an API Product page using [the tags feature]({{}}). To achieve that, an API Provider can specify tags for both API Products and blog posts. Blog posts that match tags with an API Product are displayed in the 'Related blog content' section in the API Product page. This offers API Providers greater control over what blog posts to display on their API Product page. - -#### S3 support -We added [S3 support]({{}}) for the portal assets storage (themes, images, OAS files). This update enhances the extensibility of our platform, allowing you to choose different storage solutions to better align with your specific needs. - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.1/images/sha256-a5ef5360f5bea6433a3c6675707470a2e380257804c2cb033305da3b04c28ae7?context=explore) - -## Changelog - -#### Added -- Added the [organization management capability]({{}}) for API Consumers to safely share API access credentials between team members. -- Added the [Get started guides]({{}}) for API Products so that admins can explain to their consumers how use their API Products. -- Added support for [S3 storage]({{}}) for the portal's assets storage. Now our customers can use `s3` storage in addition to the filesystem which is especially important in Kubernetes environments. -- Added [tags]({{}}) for API Products and blog posts so that API Providers have greater control over which blog posts to display on their API Product page. - - -#### Fixed -- Fixed a bug in the DCR flow where scopes from an API Product were not assigned to the OAuth2.0 client when creating a new OAuth2.0 client. -- Fixed a bug with the bootstrap process to print _JWT_ instead of the portal’s internal auth token when bootstrapping the portal. -- Fixed a bug where plans and products were not removed for Tyk Dashboard instances that were disconnected from the portal instance. Subsequently, after this fix plans and products are only displayed for available Tyk Dashboard instances. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0.md deleted file mode 100644 index bb0a51d2c0..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.10.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.10.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.10.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 27 Jun 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn’t introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -## Release Highlights -The 1.10.0 addresses twenty high-priority bugs and vulnerabilities and introduces three new features: -- OAS APIs support. -- Theme cache. -- Configuration options for database connections. - -#### Upgrade instructions -If you are on 1.9.0 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - -## Download -- [Docker image v1.10.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.10.0) - - ```bash - docker pull tykio/portal:v1.10.0 - ``` -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.10.0) - -## Changelog -#### Added -- Added OAS APIs support. -- Added an assets cache for improved performance on database-backed themes. This speeds up the portal's pages loading time by 30%. It's enabled by default and you can disable using [PORTAL_ASSETS_CACHE_DISABLE]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_assets_cache_disable" >}}). -- Added three new configuration options to manage database connections lifecycle: [PORTAL_DATABASE_MAX_OPEN_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_open_connections" >}}), [PORTAL_DATABASE_MAX_IDLE_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_idle_connections" >}}), and [PORTAL_DATABASE_CONNECTION_MAX_LIFETIME]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_connection_max_lifetime" >}}). - -#### Fixed -- Fixed the bug where `PORTAL_SESSION_LIFETIME` was calculated in minutes instead of seconds. -- Fixed the bug where access requests were not removed when an application is deleted. -- Fixed the bug where stoplight library was blocking the portal's startup if it's not available. -- Fixed the bug where browsing into API Product throws an error when Baseline URL is provided in provider section. -- Fixed the bug where it was possible to create new access requests from the admin dashboard. -- Fixed the bug where the portal was not displaying the quota renewal rate when a custom renewal rate was set in a policy. -- Fixed the bug where the first user is always created under Organization 0 when the `/portal-api/users` endpoint is invoked for the first time. -- Fixed the bug where the portal `/ready` probe was not taking into consideration the bootstrap and tables automigration process. -- Fixed the bug where sometimes, the plan added to the cart was not updated after a product change. -- Fixed the bug where it was not possible to delete an application that was provisioned with an access request created through the API. -- Fixed the bug where users where not able to submit the cart from parallel submission (two different tabs or browsers). -- Fixed the bug where creating an app was not possible when there was no DCR scope specified for the Product but there was a scope specified for the Plan. -- Fixed the bug where the portal logout was not clearing browser user data and logging the user out completely. -- Fixed the bug where it was not possible to delete non authToken apps from the developer portal when approved products and plans are removed. -- Fixed the bug where it was not possible to download the theme without adding an extra `/` to the URL. -- Fixed the bug where carts submissions where emptying other users carts if they have the same content in it. -- Fixed the bug where it was not possible to delete an application after making an API call to update it and associate it to a different user. -- Fixed the bug where the portal was exposing technical details on error messages on the `Forgot password` page. -- Fixed the bug where sometimes, content blocks where not being displayed correctly on the portal admin page. -- Fixed the bug where stoplight was not rendered correctly in mobile devices. -- Fixed the bug where editing current developer password was causing a panic. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0.md deleted file mode 100644 index fc2be89d08..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0.md +++ /dev/null @@ -1,125 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.11.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.11.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.11.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 25 Sept 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn’t introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -## Release Highlights -The v1.11.0 release includes the following new features and improvements: -- New Portal admin UI. -- Closer to API Parity: APIs for Tags, Blogposts, Product images, Webhooks, and rotate credentials. A total of 23 new endpoints. -- [22 bugs fixed](#fixed) -- [19 CVEs fixed](#fixed) -- CSRF protection, new TLS configuration and better recovery link security. - - -#### Performance Optimizations -To improve stability under high loads, we conducted performance testing and identified that improper database configurations can cause unexpected portal restarts. To prevent this and ensure optimal performance, we recommend the following database settings: - -**Recommended Configuration:** -- [PORTAL_DATABASE_MAX_OPEN_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_open_connections" >}}): Set this value based on your database’s maximum connection limit divided by the number of portal instances. For example, if your database allows 200 connections and you are running 4 portal instances, set PORTAL_DATABASE_MAX_OPEN_CONNECTIONS to 50 per instance. This ensures that all instances can share the available connections without exceeding the database's limit, which could otherwise lead to performance degradation or errors. -- [PORTAL_DATABASE_MAX_IDLE_CONNECTIONS]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_max_idle_connections" >}}): Set to 15 or a lower value based on your expected load. This setting keeps a reasonable number of connections readily available without tying up resources unnecessarily. - -For reference, with 2 portal instances, `PORTAL_DATABASE_MAX_OPEN_CONNECTIONS` set to 30 and `PORTAL_DATABASE_MAX_IDLE_CONNECTIONS` set to 15, we could handle 90 active users. - -#### Upgrade instructions -If you are on 1.10.0 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - -## Download -- [Docker image v1.11.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.11.0) - - ```bash - docker pull tykio/portal:v1.11.0 - ``` -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.11.0) - -## Changelog -#### Added -- New Portal admin UI. -- Added CRUD APIs for Tags. -- Added CRUD APIs for Webhooks. -- Added CRUD APIs for Product images. -- Added APIs to manage blog posts along with their tags and categories. -- Added a new API endpoint that allows the rotation of API credentials. -- UI and API for themes soft delete. Soft deleted themes are not shown in the UI and API, but are kept in the database for future reference. -- Added new TLS variables to set MinVersion ([portal_tls_min_version]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_min_version" >}}), MaxVersion ([PORTAL_TLSCONFIG_MAXVERSION]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_max_version" >}}), and CipherSuites ([PORTAL_TLS_CIPHER_SUITES]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_tls_cipher_suites" >}}). -- Added a new configuration to manage the idle timeout of the portal's session ([PORTAL_SESSION_IDLE_TIMEOUT]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_session_idle_timeout" >}}). -- Added CSRF protection injection to portal's form. Now you don't need to add it manually to your templates. - -#### Changed -- Changed passwordrecovery links to be valid for 24 hours. -- Changed password recovery links to be unique and valid for one use only. -- Changed the default value of [PORTAL_DATABASE_CONNECTION_MAX_LIFETIME]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_database_connection_max_lifetime" >}}) to 1800000 milliseconds. -- Changed session token queries for better performance. -- Introduced new indexes for better performance. - -#### Fixed -- Fixed sensitive information leak on password recovery links. -- Fixed the wrong permission list for super admin in the external portal dashboard. -- Fixed deletion of related APIDetail records when a Product is deleted. -- Fixed a bug that caused the portal to panic when users sent a PUT request to the/API/pages/ endpoint without a template. -- Fixed a bug where markdown content wasn't adding IDs attribute automatically to sections. -- Fixed an issue where the OAS file was not attached to the API resource associated with an API product when multiple API resources were linked. -- Fixed SSO issues when SameSite Header is set to Strict. -- Fixed issues where certain files might not have been unpacked correctly due to conflicts or incorrect path resolution, particularly when themes with similar names were involved. -- Fixed an issue with how PostgreSQL connection strings, specifically the sslmode configuration, were being handled. Portal now fully conforms to PostgreSQL documentation and standards, ensuring that SSL certificates are correctly utilized without causing connection errors. -- Fixed a bug where sessions were expiring independently if users were active or not. -- Fixed distroless image bootstrapping issue. -- Fixed an issue where fetching a theme by its ID returned empty field values due to whitespace characters being stripped from the ID. -- Fixed deleting and rotating shared credentials within an organization. -- Fixed a rendering error while deleting credentials. Now, it shows an error page instead of a blank page. -- Fixed a bug where product content was truncated after 255 characters in MySQL and MariaDB. This update ensures that full-length product content is now stored and displayed without truncation. -- Fixed the portal API behavior to handle cases where the "Accept" header is absent. Previously, such requests resulted in a 500 Internal Server Error with no response body, causing the portal to panic. -- Fixed a duplicated 404 error page when there is a not found error. -- Fixed credential revocation error when OAuth2.0 provider is deleted. -- Fixed an issue where credentials weren’t deleted with OAuth2.0 provider removal. -- Fixed an issue where the graph only displayed the peak value of 100, even when the average error rate was below 100. -- Fixed several errors in the portal API specification. -- Fixed the 19 CVEs, among which are: - - CVE-2024-28834 - - CVE-2024-28835 - - CVE-2023-5678 - - CVE-2023-6129 - - CVE-2023-6237 - - CVE-2024-0727 - - CVE-2023-50387 - - CVE-2023-50868 - - CVE-2023-5678 - - CVE-2023-6129 - - CVE-2023-6237 - - CVE-2024-0727 - - CVE-2024-24792 - - CVE-2023-45288 - - CVE-2023-5678 - - CVE-2023-6129 - - CVE-2023-6237 - - CVE-2024-0727 - - CVE-2024-24792 - - CVE-2023-45288 - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0.md deleted file mode 100644 index 290dac64d6..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0.md +++ /dev/null @@ -1,237 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.12.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.12.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.12.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -## 1.12.0 Release Notes - -### Release Date 13 Nov 2024 - -### Release Highlights -The v1.12.0 release includes the following new features and improvements: -- Embedded Tyk Identity Broker. From this release, you don't need to deploy a separate Tyk Identity Broker to SSO into the portal. -- Now admins can create Apps and Credentials for developers directly from the portal admin UI. -- Credentials notifications. Now admins can configure email notifications for credential expiration and credential expiration warnings. -- Stronger passwords. Now admins can configure the password policy from the portal admin UI. -- Security: 3 new high CVEs fixed. -- Bugfixes: 4 bugs fixed. - -For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v1.12.0) below. - -### Breaking Changes -This release has no breaking changes. - - -### Deprecations -There are no deprecations in this release. - - -### Upgrade instructions -If you are on 1.11.0 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - -### Download -- [Docker image v1.12.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.12.0) - - ```bash - docker pull tykio/portal:v1.12.0 - ``` -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.12.0) - -### Changelog {#Changelog-v1.12.0} - - - -#### Added - - -
      -
    • -
      -Embedded Tyk Identity Broker - -From this release, you can configure the portal to serve an internal Tyk Identity Broker. This means that you don't need to deploy a separate Tyk Identity Broker service to SSO into the portal. -This enables a new section under the portal admin UI where admins can manage SSO profiles for admins and developers. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-embedded-tib.png" width=500px alt="SSO profiles">}} - -We support out of the box integration with the following SSO providers type: -- Open ID Connect: Support for OpenID Connect (OIDC) Identity Tokens provided by any standards compliant OIDC provider such as Auth0. -- LDAP: Bind users to an LDAP server such as Azure Active Directory, using their username and password. -- Social: The social provider should provide seamless integration with Google+ Github, Facebook, Salesforce, Digital Ocean and more. - -You can read more about the supported SSO providers [here]({{< ref "/tyk-identity-broker" >}}). - -
      -
    • -
    • -
      -Creation of Apps and Credentials - -Admins now have enhanced control over application and credential creation in the portal, streamlining the onboarding process and reducing the need for API-based setups. With this update, admins can create applications and assign them to specific users, making it easier to onboard developers who aren’t using self-service options. - -For custom authorization scenarios —like when using an external OAuth2.0 provider— admins can now issue credentials directly in the portal. These credentials are stored as key-value pairs that developers can view, providing a more seamless alternative to manual credential sharing. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-non-tyk-managed-credential.png" width=500px alt="Non-Tyk managed credential">}} - - -Admins can also generate auth token credentials, with added flexibility to define custom token values if needed for compatibility with other systems. Additionally, OAuth2.0 credentials can now be created within the portal, ensuring stable, secure access for developers with the added benefit of immutability after creation. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-custom-credential.png" width=500px alt="Custom credential">}} - -Overall, these improvements simplify the process for managing applications and credentials, offering a more streamlined experience for admins and developers alike. - -
      -
    • -
    • -
      -Password policy - -Admins can now configure the password policy from the portal admin UI. This includes setting the minimum password length, reused passwords, multi case, and more. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-password-policy.png" width=500px alt="Password policy">}} - -
      -
    • -
    • -
      -Credentials notifications - -Admins can now configure two types of notifications: -- Credential expiration: This notification is sent to developers when their credentials expire. You can modify the email template in the `keyexpired.tmpl` file included in the theme package. -- Credential expiration warnings: This notification is sent to developers when their credentials are about to expire. Admins can set the number of days before the expiration in the portal admin UI. You can modify the email template in the `keytoexpire.tmpl` file included in the theme package. - -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.12.0-credential-expiration.png" width=500px alt="Credentials notifications">}} - - -
      -
    • -
    - -#### Changed - - -
      -
    • -
      -Upgrade to Go 1.22 - -The Enterprise Developer Portal has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, -strengthened security, and access to the latest features available in the new Golang release. - -
      -
    • -
    - -#### Fixed - - -
      -
    • -
      -Fixed a bug where values of dropdown custom attributes weren't removed correctly - -Fixed a bug where values of dropdown custom attributes weren't removed correctly preventing admins from updating User custom attributes. - -
      -
    • -
    • -
      -Fixed a certificate upload issue in Kubernetes environments - -Fixed an issue that was causing certificate uploads to fail when the file size exceeded 2KB in Kubernetes environments. - -
      -
    • - - -
    • -
      -Fixed a bug that prevented to load OAS files from S3 storage - -We have addressed a bug that was causing the portal to fail loading OAS files from S3 storage. - -
      -
    • -
    • -
      -Fixed typos in email subjects - -We have fixed typos in email subjects that were causing notifications to be sent with incorrect information. - -
      -
    • -
    - -#### Security Fixes - - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Enterprise Developer Portal, providing increased protection against security -vulnerabilities: - -- [CVE-2024-34158](https://nvd.nist.gov/vuln/detail/CVE-2024-34158) -- [CVE-2024-34156](https://nvd.nist.gov/vuln/detail/CVE-2024-34156) -- [CVE-2022-30635](https://nvd.nist.gov/vuln/detail/CVE-2022-30635) - -
      -
    • -
    - - - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0.md deleted file mode 100644 index 888145f151..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.2.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.2.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.2.0"] -menu: -main: -parent: "Release Notes" -weight: 2 ---- - -**Licensed Protected Product** - -##### Release Date 21 Mar 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.1.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -This release is primarily focused on improved deployment support for Kubernetes and a variety of features to achieve better developer experience. - -#### Full Kubernetes support -The Tyk Enterprise Developer Portal is now available in Kubernetes and customer can launch it using our [helm charts]({{}}). This feature makes the portal Kubernetes friendly by adding liveness, readiness probes, graceful shutdown and changing the portal lifecycle so that it’s possible to set an initial user and bootstrap the portal via APIs. - -#### SSO for API Consumers and admins -API Providers can [configure Single Sign-on]({{}}) for the Enterprise developer portal so that it’s possible to login developers and admins to the portal user 3rd party IdP. - -#### API Analytics for API Consumers -This capability enables API Providers to get aggregated statistics about consumption of their APIs using Tyk Pump. In 1.2.0, we enabled the portal to attach the following tags to API Keys and oAuth clients: -- Application (app-XXX, where XXX is the app ID); -- Organization (org-XXX, where XXX is the org ID). - -#### Admin API for API Products -This feature provides an API to make it easier for admin users to manage their API Products: -- List available API Products. -- Change the content and description. -- Add link to Open API specification for APIs. - -#### Add TLS support -This feature enables API Provides to secure the portal with [HTTPs]({{}}). - -#### Add enhanced logging configuration -This new setting allows API Providers to set the logging [level]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_level" >}}) and [format]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_format" >}}). This offers API Providers more control over the logging behavior of their APIs. - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.2.0/images/sha256-1dda1c17a9acc5bc51a9650dc22c6116156b8eb302d8cba7f7e2b31dea570d27?context=explore) - -## Changelog - -#### Added -- Added Kubernetes support and [helm charts]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/install-tyk-enterprise-portal/install-portal-using-helm" >}}). -- Added [Single Sign-on]({{}}) for API Consumers and admin users so that they can use their IdPs for managing admin users and developers. -- Added organization and application metadata to auth tokens and OAuth2.0 clients so that API Providers can use Tyk Pump to create aggregated reports based on the metadata from tokens and OAuth2.0 clients. -- Added Admin APIs for API Products to enable API Providers to update API Products using CI/CD pipelines. -- Added [TLS]({{}}) support for the portal's UI. -- Added config options to set the logging [level]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_level" >}}) and [format]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_log_format" >}}). This offers API Providers more control over the logging behavior of their APIs. - - -#### Fixed -- Fixed grammar in the copy section of the admin application on the Application page. -- Fixes an issue with DCR that was encountered when a developer deletes an app with two DCR products from different catalogs. In that case, the client was deleted from IdP but the app was not deleted from the Portal. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0.md deleted file mode 100644 index 89d59b6e30..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.3.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.3.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.3.0"] -menu: -main: -parent: "Release Notes" -weight: 3 ---- - -**Licensed Protected Product** - -##### Release Date 17 Apr 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.2.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -#### API Analytics UI for developers -We added the new **API Analytics UI** which extends self-service capabilities for developers. This provides developers with an ability to analyze performance of the APIs which they consume, in addition to traffic composition for their apps. -The **API Analytics UI** has four tabs that help developers to navigate different analytical views: -- **The overview tab** provides an overarching view on the API Products consumed by a developer. This tab has all information needed to quickly digest the current state of API Products, including: total traffic, number of errors, error breakdown by response code and top APIs by error code. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-overview.png" width="500px" alt="API Analytics UI - Overview tab">}} -- **The Total API Calls** tab enables developers to analyze traffic from their application to the APIs they consume and how it’s changing over time. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-total-calls.png" width="500px" alt="API Analytics UI - Total API Calls tab">}} -- **The Errors** tab provides developers with information relating to total errors and error rates. Here developers can identify any issues with the APIs which they consume without filling any support tickets. Developers can switch between the total number of error and error rates. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-errors.png" width="500px" alt="API Analytics UI - Errors tab">}} -- **The Latency tab** helps developers to analyze response time of the APIs they consume so that they can factor for it in their applications. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.3.0-analytics-for-api-consumers-latency.png" width="500px" alt="API Analytics UI - Latency tab">}} - -#### Theme management API -The theme management API enables SDLC for the theme management in the portal. Admin users can leverage this API to programmatically: -- Create new themes. -- Update existing themes. -- Select the currently active theme. - -#### Enhanced error logging for DCR and SSO flows -We introduced more verbose error logging for the DCR flow and for Single Sign-On to help customers set up the SSO and DCR faster. This is especially important for complex environments with highly customized or non-standard IdPs. - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.3.0/images/sha256-87bc071b93e2fa4970e5ec512a4b0601f139ac9cbb73baf35662d4b5f3a0f290?context=explore) - -## Changelog -#### Added -- Added API Consumer Analytics to digest summary analytics for developers' applications so that developers can analyze performance of the APIs which they consume. -- Added enhanced error logging in all places where the DCR flow is used. A log structure is now provided, including the status code from an IdP to help API Providers to debug DCR integrations. -- Added enhanced error logging to the SSO flow to facilitate setting up SSO. -- Added the Theme management API to enable API Providers to update themes using CI/CD pipelines. - -#### Fixed -- Fixed grammar in the Provider menu UI. -- Fixed broken link to the Access requests menu item in the portal admin dashboard. -- Fixes to the shopping cart flow were made as follows: - - Fixed the bug where the 'Add to cart' button in the API Product page were not clickable; - - Added form validation in the checkout flow. -- Fixed the API Product page to show only catalogs available to a developer. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0.md deleted file mode 100644 index 104ca47f81..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.4.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.4.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.4.0"] -menu: -main: -parent: "Release Notes" -weight: 4 ---- - -**Licensed Protected Product** - -##### Release Date 2 June 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.3.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -#### SQL support for the portal’s assets -Until recently, SQL storage was not supported for the portal’s assets: OAS files, themes, images, etc. Therefore, customers had to use at least two types of storage: -- SQL for the portal’s metadata (users, products, access requests, etc). -- Filesystem or S3 for assets (pictures, themes, etc). - -This is especially inconvenient in Kubernetes environment when customers had to use persistent volumes. -With this new feature, customers can simply use the same SQL database (MySQL, MariaDB and PostgreSQL) for both assets and metadata. To use the `db` [storage type]({{< ref "/content/product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_storage" >}}) just set the `PORTAL_STORAGE=db` for environment variables or `"Storage": "db"` in a config file and you are good to go! - -#### Response status code added to API analytics filters -API Consumers now can filter API analytics by response status codes. This allows them to analyze traffic and error rate for specific response code for their API Products. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.4.0-response-code-filters.png" width="500px" alt="API Analytics UI - Response code filters">}} - -#### Displaying Basic Auth APIs -We introduced display-only support for basic APIs. That means API Providers can publish documentation for the basic auth APIs. However, developers cannot use the portal to get access to the basic auth APIs. - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.4.0/images/sha256-11af93300ae91962e9af84ecec0e78b6cf5972521f0655273b48a7e551df3c84?context=explore) - -## Changelog -#### Added -- Added SQL support for the portal's assets to simplify the storage configuration. Now our customers can store all data in one database. -- Added response status code filters in the API analytics for developers to enhance self-service capabilities for developers. -- Added displaying Basic Auth APIs so that API Providers can expose on the portal their APIs that use basic auth for documentation purposes. -- Added input validation for organization name to prevent organization with empty names from being created. - -#### Fixed -- Fixed typo in the name of the demo user. -- Rewritten labels for Auth token credentials to remove customers' confusion with opaque names of fields. - -## Security Fixes -- [ZipSlip vulnerability](https://nvd.nist.gov/vuln/detail/CVE-2023-27475) in the theme upload flow is now resolved. -- Added input validation for preventing XSS attacks for catalogs and organizations in the admin app. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0.md deleted file mode 100644 index c4dec41eb9..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.5.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.5.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.5.0"] -menu: -main: -parent: "Release Notes" -weight: 5 ---- - -**Licensed Protected Product** - -##### Release Date 17 Jul 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.4.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -#### Improved API Providers page -Now the API Provider page has the Status and Last synced columns that help to digest the current status of an API Provider (Up, Down, or Unknown) and the last time it was synchronized. Now it’s much easier to digest the current status of API Providers connected to the portal. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.5.0-provider-page.png" alt="Improved provider page">}} - -#### Add the SSL insecure skip verify flag for API Providers -With this new option, Tyk Enterprise Developer portal can be configured to use untrusted certificates when connecting the Tyk Dashboard which helps run local PoCs, quickly and easily. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.5.0-skip-ssl-verify.png" alt="SSL skip verify">}} - -#### New admin APIs -In 1.5.0 we introduced the following APIs: -- CRUD API for Get started guides. -- CRUD API for OpenAPI Spec for APIs included in API products. -- CRUD API for API Providers. - -#### Better OAuth2.0 flow without the scope to policy mapping -{{< note >}} -This feature requires a patch to the gateway. In the 1.3.0 version of the portal, it's disabled. Once the 5.2 version of the gateway is released, we can confirm that the feature is fully functional. Stay tuned for updates! -{{< /note >}} -The improved OAuth2.0 allows API Providers to configure OAuth2.0 with scope to policy mapping and default No-Operation policies reducing the number of steps configure OAuth2.0 product in the Dashboard in the IdP by 17 steps from 19 to just 2 actions. - -It also allows adding access to API Products to existing credentials. This way, if an API Consumer wants to add a new API Product to an existing credential, they can simply do it without the need to recreate them from scratch. - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.5.0/images/sha256-169ba9584bc31add666cebb1b9231a47f5d9f78ccb086adf7d0ff8810c611a67?context=explore) - -## Changelog -#### Added -- Added the Status and Last synced columns to the API Provider page to make easier to digest status of each API Provider. -- Added the Skip SSL Verify flag for the API Providers. It's now possible to use self-signed certificates for PoCs. -- Added new admin APIs for the Get started guides, Open API Specifications and API Providers to enable migration of configurations between different environments of the portal. -- Added improved OAuth2.0 flow without the scope to policy mapping which makes it much easier to configure OAuth2.0 with Tyk. -- Enable API Providers to set security response headers in the portal config to make API Providers flexible in configuring their UI security settings. - -#### Fixed -- In 1.5.0 multiple important security bugs are fixed: - - Add secure and httpOnly flags to enhance the security of session cookies. - - Fixed the bug with the role permission issue when a provider-admin can deactivate and delete a super-admin. - - Fixed the bug with the Users API resource where it was possible to enter any value in the Provider and Role fields. -- In addition to the security fixes, several bugs related to the theme management are fixed: - - The list of available templates is now automatically updated when a new theme is loaded. - - The issue encountered with theme unpacking requiring write permission to the /tmp folder is now resolved. Write permission is no longer required. - - Fixed the icon issue alignment on the main page of the default theme. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0.md deleted file mode 100644 index 91cf168cc6..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0.md +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.6.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.6.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.6.0"] -menu: -main: -parent: "Release Notes" -weight: 6 ---- - -**Licensed Protected Product** - -##### Release Date 5 Sep 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.5.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -#### OAuth2.0 flow now supports multiple identity providers -Now the Tyk Enterprise Developer portal can use multiple identity providers (IdPs) for OAuth2.0 via the Dynamic Client Registration flow. If your company has multiple OAuth2.0 providers now you can utilize them all for OAuth2.0 authentication. For instance, if your company uses different IdPs for different products (e.g. one for the U.S. and another for the EU) you can now achieve that with Tyk. - -Just create multiple IdPs in the App registration menu: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-multiple-idps-index.png" width=500px alt="OAuth2.0 providers page">}} - -And then use them to enable OAuth2.0 authentication for API Products: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-multiple-idps-edit.png" width=500px alt="OAuth2.0 provider overview">}} - -#### New Admin API for all content-blocks -You can download all CMS content with just one API call with the brand new API endpoint *GET* */pages/all/content-blocks* that returns all content blocks for all pages. Now migration between environments and deployment is much easier. - -#### Support for Mutual TLS -For customers who need extra security for their APIs such financial institutions and payment providers we introduced an ability for the portal to surface Mutual TLS APIs. Now you can configure API Key and OAuth2.0 API to support Mutual TLS. Just create an API that supports multiple authentication mechanisms in the Dashboard and publish it to the portal: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-dashboard.png" width=500px alt="Mutual TLS auth API in the Tyk Dashboard">}} - -Now your developers can discover and request access to them in the portal: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-published.png" width=500px alt="Mutual TLS auth API Product is published in the portal">}} - -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-mtl-support-checkout.png" width=500px alt="Mutual TLS auth API Product in the checkout flow">}} - -#### Display-only support for API Products with custom authentication -This new capability allows you to display on the portal the APIs that use your own custom authentication mechanisms. We appreciate that many customer use their own auth mechanisms and even though at the moment we cannot create credentials for custom authentication schemas, we still want to support customers using these. - -To display API Products that support custom authentication, you need simply to create an API Product that include APIs with custom authentication and synchronize it to the portal: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-display-custom-auth-apis.png" width=500px alt="Custom auth API Product is published in the portal">}} - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.6.0/images/sha256-5a7ada35df1817f9b44c5f725c77cd8548a4e094505ba0f0d4ed611f85edad7f?context=explore) - -## Changelog - -#### Added -- Added support for multiple IdPs of the OAuth2.0 flow. If a customer has multiple OAuth2.0 providers now they can utilize them all for OAuth2.0 authentication with Tyk. -- Added new admins APIs for querying all content-blocks to improve data migration capabilities of the portal. -- Added support for API Products that use Mutual TLS. Now API Providers can surface their API Products that use Mutual TLS authentication on the portal and developer can request access to them. -- Added display-only support for API Products with custom authentication. This allows API Providers to expose on the portal their APIs that use custom authentication for documentation purposes. - -#### Changed -- Simplified the connection settings to the portal assets storage (where all images, themes, and other CMS files are stored) to help our customers get up to speed quicker. We are well aware that installing and configuring on-premise software can be tricky, especially when it comes to infrastructure, storage and databases. Hence, we have decided to ease this burden for you: - - By default, the portal uses the `db` [storage type]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_storage" >}}) for storing its themes and other CMS assets and it doesn’t require any additional configuration. This means, you can start the portal right away without specifying any additional setting for the assets storage. - - We also simplified setting up S3 storage: now you need only to configure connection settings to the bucket and the portal will handle the rest. - - -#### Fixed -- In 1.6.0 multiple important security bugs are fixed: - - Added the ability to disable the theme upload capability. Since we don’t validate the theme content it might have viruses and other malicious software. So, to provide super secure environments, we added a setting to disable the theme upload via the UI and API: - {{< img src="/img/dashboard/portal-management/enterprise-portal/1.6.0-theme-upload-is-disabled.png" width=500px alt="Mutual TLS auth API Product in the checkout flow">}} - - Fixed the bug where the session is not invalidated after a user logs out. - - Fixed the role permission issue where a provider-admin can deactivate and delete a super-admin. - - Fixed the Users API resource which allowed any value to be entered into the Provider and Role fields. -- In addition to the security fixes, several bugs related to the theme management are fixed: - - The list of available templates is now automatically updated when a new theme is loaded. - - Fixed the bug where theme unpacking required unnecessary write permission to the */tmp* folder. - - Fixed icon alignment in the UI on the main page of the default theme. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md deleted file mode 100644 index 1ae069c6d5..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.7.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.7.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.7.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 6 Oct 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on a 1.6.0 or an older version we advise you to upgrade ASAP directly to this release. - -## Release Highlights -#### Content blocks validation -We added validation to the content pages. Now when an admin user tries to delete a content block that is necessary to render the page, the portal won’t let them to save the page. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.7.0-content-block-validation.png" width=500px alt="Content-block validation">}} - -#### Audit log capability -We added capability to enable audit log for any action that changes state of the portal or queries data from the portal. When the audit log is enabled, every action of admin users or developers performed via the UI or an API (only for admin users) will be noted in the audit log. -To enable the audit log, just specify path to the audit log file and enable it. - -To configure the audit log with environment variables, use PORTAL_AUDIT_LOG_ENABLE to enable the audit log and PORTAL_AUDIT_LOG_PATH to specify path to the audit log file: -```shell -PORTAL_AUDIT_LOG_ENABLE=true -PORTAL_AUDIT_LOG_PATH=./audit.log -``` - -To configure the audit log with the config file, use AuditLog.Enable to enable the audit log and AuditLog.Path to specify path to the audit log file: -```json - "AuditLog": { - "Enable": true, - "Path": "./audit" - } -``` - -When specifying path ot the audit file make sure it's mapped to a file on the host machine. - -#### Capability to limit frequency of access requests -Now admin users can specify how often developers can request access to a specific plan. This way the admins can prevent developers from creating too many keys and abusing their free plan. -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.7.0-rate-limit-for-access-requests.png" width=500px alt="Access requests frequency limit">}} - -## Download -- [docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.7.0/images/sha256-1204c9f2d53ac8cbf7230f7c73bd2edb117b33ec11547d595c58264301c9172b?context=explore) - -## Changelog - -#### Added -- Added content blocks validation for content pages to avoid changes to content pages that result in page render errors. -- Added the audit log capability to track any action that changes state of the portal or queries data from the portal. -- Added the capability to limit frequency of access requests to block any abuse of free plans. - -#### Changed -- Disable autocomplete for passwords in the default theme to prevent the access credentials from being stored on the local computer. The stored credentials can be captured by an attacker who gains control over the user's computer. - -#### Fixed -- Fixed the bug where developers could get access to applications of other developers if they know the app ID. -- Fixed the bug where developers and apps of an organization were not deleted when the organization was deleted. -- Fixed the bug where it was possible to remove the default organization with resulted in the portal being non-operational. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0.md deleted file mode 100644 index 241580df66..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0.md +++ /dev/null @@ -1,181 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 24 Nov 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on 1.7.0 or an older version we advise you to upgrade ASAP directly to this release. -When upgrading from 1.6.0 or earlier versions, customers may experience problems when starting the portal. One of the possible issues is the following: -- When the portal theme [manifest]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/file-structure-concepts#manifest-file" >}}) has a reference to a template that is not present in the theme then the theme won't be loaded. This check that prevents admin users from uploading themes with potential errors was introduced in version [1.7.0]({{< ref "/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0.md#content-blocks-validation" >}}). -- At the same time, the default theme in version 1.6.0 of the portal had a reference in the theme manifest to the `portal_home` template that didn't exist in the theme. -- The portal doesn't update the theme automatically because in that case any customer-made changes will be lost. Subsequently, upgrading from 1.6.0 to 1.8.0 may result in the following error when loading the theme: -```yaml -{"level":"info","time":"2023-11-23T12:25:35.646Z","caller":"application/themes.go:121","message":"Failed to initialize theme '/themes/default': loading theme templates code references: getting template portal_home: portal_home.tmpl not found"} -{"level":"info","time":"2023-11-23T12:25:35.646Z","caller":"application/themes.go:135","message":"0 themes loaded."} -panic: theme 'default' not found -``` -- Moreover, when there was a single theme in the portal, it wouldn't start because it didn't recognize the theme as valid. - -To overcome the issue, please follow our upgrade instructions for your storage type as outlined in the sections below. - -The following instructions explain the easiest way to upgrade the default theme when upgrading from 1.6.0 to 1.8.0. - -In order to upgrade the theme, you will need to remove the existing default theme and let the portal unpack the current default theme that is compatible with v1.8.0 release. Therefore, the update is performed in four steps: -1. (Optionally) Save a copy of the current default theme if there are any changes to it that you want to save. -2. Remove the existing default theme that prevents the portal from starting. -3. Start the portal so that it will unpack the compatible theme. -4. (Optionally) Apply changes from the saved theme. - -In later releases, we will publish the theme within a public git repository. This way you can apply git-flow when upgrading the theme. - -{{< note >}} -**Note** - -If your current active theme is not the default theme, downgrade to v1.6.0 and activate the default theme first before implementing the below steps. -{{< /note >}} - -##### Upgrade default theme within filesystem storage type -To upgrade the default theme that is stored in a filesystem (fileSystem mounted by localhost or PVC or csi-driver) you will need a shell to access that specific file system. Execute the following steps to upgrade the theme: -1. **Navigate to the theme directory**. Locate the theming directory used for the portal application defined by `Theming.Path` in the portal config file or `PORTAL_THEMING_PATH` environment variable. By default, the theming path is `./themes`. So, it will be placed in the `themes` directory relative to wherever the portal app is run from. -2. *(Optional)* Save a copy of the current default theme if there are changes that you want to keep. -3. **Remove the default theme**. To remove the existing version of the default theme from a filesystem, navigate to the theme directory and remove the default theme: -```shell -rm -rf ./default -``` -4. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again, and it will start with the upgraded default theme. -5. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 2. - -##### Upgrade default theme within S3 storage type -To upgrade the default theme that is stored in an S3 bucket you will access to the S3 console with read-write rights. Execute the following steps to upgrade the theme: - -1. **Navigate to the S3 bucket that is used to store themes**. This bucket is defined by `S3.Bucket` in the portal config file or `PORTAL_S3_BUCKET` environment variable. The default theme should be present in the theming directory that is defined by `Theming.Path` in the portal config or `PORTAL_THEMING_PATH` environment variable. By default, the theming path is set to `/themes`. -2. *(Optional)* Save a copy of the current default theme if there are changes that you want to keep. -3. **Remove the default theme** by deleting the default directory from the theming directory. -4. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again and it will start with the upgraded default theme. -5. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 2. - -##### Upgrade default theme within DB storage type -To upgrade the default theme that is stored in a database bucket (the `db` storage type) you should be able to run SQL commands on the database that the portal is using. Execute the following steps to upgrade the theme: -1. *(Optional)* If you need to save changes to the existing default theme, downgrade to 1.6.0, start the portal and download the theme either via the UI or the admin APIs. -2. **Remove the default theme**. The portal stores its themes in the `Assets` table. Run the following SQL command to remove the default theme from the database: -```sql -delete from assets where path like "%/default%"; -``` -Before executing the command be sure to replace the `` with the path defined by `Theming.Path` in the portal config or `PORTAL_THEMING_PATH` environment variable. By default, it is `/themes`, so if you have not explicitly changed this, your command should be as follows: -```sql -delete from assets where path like "%/themes/default%"; -``` -3. **Start the portal.** Once the default theme is deleted, start the portal v1.8.0 again and it will start with the upgraded default theme. -4. *(Optional)* Once the portal is operational again, you can download the correct default theme and apply any changes from the existing theme that was saved in step 1. - -{{< note >}} -**Note** - -For PVC, if you are stuck with a crashing issue on a newer portal release (version > v1.7.0) running in k8s with PVC storage that contains an older theme (from version < v1.7.0), roll back to v1.6.0 or start a temporary pod with the same PVC mounted to it. Then delete all the existing themes as stated above and deploy the new release. -{{< /note >}} - - -## Release Highlights -#### Custom attributes for the User model and the sign-up form customization -We added the capability to add additional data fields to the User model and set their behavior. This way API Providers can: -Extend the User model with additional fields of one of four types: - - String - - Number - - List of strings - - Boolean -- Configure the behavior of these fields: - - Add the new data fields to the user sign-up form - - Force the portal to add the fields to the key metadata to make them available to custom plugins during API calls - - Make the fields required or optional and lock them once a user profile is created -- Set visibility and access rights for the custom data fields: - - Determine if developers can view the fields or are they restricted to only admin users? - - Can developers edit the fields? - -All settings are available via the [admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api.md" >}}) and the UI. - -To create a custom attribute, define it in the custom attributes menu: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-create-custom-attribute.png" width=500px alt="Create a custom attribute for the User model">}} - -This is how it looks like in the user sign-up form: -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-sign-up-form.png" width=500px alt="The user sign-up form with the custom attribute">}} - -#### CORS settings -In this release, we introduced the config options to set up CORS settings such as: -- Allowed origins -- Allowed headers -- Allowed methods -- Are credentials (cookie or client-side certificates) allowed? -- max-age of the preflight request cache - -These settings are useful when the portal sits behind a proxy or a CDN and the portal admin needs to configure the CORS settings on the portal side so that the incoming call from a third-party origin (e.g. a CDN or a proxy) are not rejected by the browser. -To set the CORS configuration please refer to the Portal's [configuration documentation]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#cors-settings" >}}). - -#### Connection testing to OAuth2.0 Identity providers -We enhanced our OAuth2.0 support by adding the capability to test connections to OAuth2.0 Identity providers (IdPs) when setting up OAuth2.0 with the Tyk Enterprise Developer Portal. -This way, you can make sure the Portal has connectivity with the IdP before saving the OAuth2.0 settings and creating the first OAuth2.0 client. - -{{< img src="/img/dashboard/portal-management/enterprise-portal/1.8.0-test-idp-connectivity.png" width=500px alt="Test connectivity to an IdP">}} - -#### Verbose logs for the DCR flow -In addition to the new connection testing functionality, we added one more tool to help customers resolve complex integration issues when integrating with OAuth2.0 providers. -Now when the [PORTAL_DCR_LOG_ENABLED]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_dcr_log_enabled" >}}) environment variable is set to `true`, the portal will output not only the status and status code of the request to the IdP, but also actual payload returned by the IdP: -```yaml -{"level":"error","time":"2023-10-10T17:02:27.484+0200","caller":"client/dcr-helpers.go:152","message":"IdPResponse: {\"error\":\"insufficient_scope\",\"error_description\":\"Policy 'Allowed Client Scopes' rejected request to client-registration service. Details: Not permitted to use specified clientScope\"} -``` - -## Download -- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.0/images/sha256-d93fcfbbcc4a72d3f6abf49ce65f234e6e65915a43cca3a30d5376e5fab2d644?context=explore) -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.0) - -## Changelog - -#### Added -- Added the custom attributes to the User model so that the portal admins can extend the data stored in the user profile and customize the user sign-up form. -- Added the capability to test the connection to OAuth2.0 Identity providers menu to help the portal admin troubleshoot connectivity issues when configuring OAuth2.0 with the portal. -- Added the config options for configuring the CORS settings. - -#### Changed -- Display an actual item title instead of a generic iterative name in the Pages and the Providers UI (e.g. "HeaderButtonLabel" instead of "ContentBlock 1" in the Pages menu). -- When [PORTAL_DCR_LOG_ENABLED]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration.md#portal_dcr_log_enabled" >}}) is enabled the portal now returns not only the status and status code of the request to the IdP but also actual payload returned by the IdP - -#### Fixed -- Fixed the bug where the database credentials were printed in the logs when bootstrapping the portal. -- Fixed the bug where the session cookie was disclosing the username and role. -- Fixed the bug where the [Forgot Password page]({{< ref "tyk-developer-portal/tyk-enterprise-developer-portal/api-consumer-portal/reset-password.md#introduction" >}}) did not reflect the current theme. -- Fixed the bug where the DCR flow failed to create a client with policies managed by Tyk Operator. -- Fixed the bug where an admin user couldn't upload a new theme file in Kubernetes environment. -- Fixed the bug where the portal application went down after running for several hours in Kubernetes environment. -- Fixed the bug where it was possible to remove the default organization which resulted in the portal being non-operational. -- Fixed the bug where the portal panicked when an IdP was not available while creating a new OAuth2.0 client. -- Fixed the bug where a developer could access API Products regardless of the access rights set by catalogs. -- Fixed the bug where it wasn't possible to change a team for a user. -- Fixed the bug where the error wasn't displayed to an admin user when the theme validation failed while uploading a theme package. -- Fixed the bug where the rich text editor added extra `

    ` tags to the text. -- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. -- Fixed the bug where it wasn't possible to remove an API from an API Product. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1.md deleted file mode 100644 index 3564d294e8..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.1 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.1 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.1"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 5 Dec 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on 1.8.0 or an older version we advise you to upgrade ASAP directly to this release. -Unlike 1.8.0, 1.8.1 fixes the broken backward compatability for the default visual theme. Therefore, the upgrade path from earlier versions are straightforward. It is enough to just pull the latest version of the portal's container. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - - -## Release Highlights -The 1.8.1 release addresses multiple high-priority bugs: -- Restored backward compatibility for the default visual theme which was broken in the previous release. -- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. -- Fixed the bug where the collapsible components in the admin application of the portal didn't open. -- Fixed the bug where the client type wasn't a required field when creating OAuth2.0 clients via the DCR flow. -- Fixed the bug where CPU usage unexpectedly increased in Kubernetes without external traffic. -- Fixed the bug where admin users were not able to approve access requests in Kubernetes environment. -- Fixed the bug where the usage analytics didn't show in the Developer Dashboard. -- Upgraded the version of Stoplight to the latest available version in the default theme. - -## Download -- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.1/images/sha256-3b7ef4572cad8f6f5cddfa921514a07b43ba46bacf5eb89b735c45863863f13f?context=explore) -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.1) - -## Changelog - -#### Added -- Add a [config option]({{< ref "product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_enable_http_profiler" >}}) to expose the Golang profiling information which allows for debugging issues related to resource consumption. - -#### Changed -- Upgraded the version of Stoplight to the latest available version in the default theme. - -#### Fixed -- Restored backward compatibility for the default visual theme which was broken in the previous release. -- Fixed the bug where CPU usage unexpectedly increased in Kubernetes without external traffic. -- Fixed the bug where admin users were not able to approve access requests in Kubernetes environment. -- Fixed the bug where the usage analytics didn't show in the Developer Dashboard. -- Fixed the bug where the live portal UI was broken when there is more than one OpenAPI specification attached to an API Product. -- Fixed the bug where the collapsible components in the admin application of the portal didn't open. -- Fixed the bug where the client type wasn't a required field when creating OAuth2.0 clients via the DCR flow. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2.md deleted file mode 100644 index 597eb49ac9..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.2 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.2 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.2"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 22 Dec 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - - -## Release Highlights -The 1.8.2 release addresses multiple high-priority bugs: -- Fixed the bug where an API Consumer could add incompatible products to a cart making its state inconsistent. -- Fixed the bug where it was possible to use the same session cookie from different IP addresses making the portal vulnerable to the [Cross-Site Request Forgery (CSRF) attack](https://en.wikipedia.org/wiki/Cross-site_request_forgery). -- Fixed the bug where an admin user couldn't create a new team in Kubernetes environment. -- Fixed the bug where the navigation in the API documentation was broken when Redoc is selected as a documentation rendering engine. -- Fixed the bug where an API Consumer could bypass the access request rate limit by creating additional applications. -- Fixed the bug where the page rendering fails if the page refers to a template that has no template/layout pair definition in the theme manifest. -- Fixed the bug where creating new content blocks in non-default themes led to duplication of those content blocks in the admin UI. -- Fixed the bug where `.Markdown` content blocks where not shown. - -## Download -- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.2/images/sha256-944b6fd5bead39b77cbfa50706098d52ce4c003b483b1f5e20456c65ede40fb2?context=explore) -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.2) - -## Changelog - -#### Fixed -- Fixed the bug where an API Consumer could add incompatible products to a cart making its state inconsistent. -- Fixed the bug where it was possible to use the same session cookie from different IP addresses making the portal vulnerable to the [Cross-Site Request Forgery (CSRF) attack](https://en.wikipedia.org/wiki/Cross-site_request_forgery). -- Fixed the bug where an admin user couldn't create a new team in Kubernetes environment. -- Fixed the bug where the navigation in the API documentation was broken when Redoc is selected as a documentation rendering engine. -- Fixed the bug where an API Consumer could bypass the access request rate limit by creating additional applications. -- Fixed the bug where the page rendering fails if the page refers to a template that has no template/layout pair definition in the theme manifest. -- Fixed the bug where creating new content blocks in non-default themes led to duplication of those content blocks in the admin UI. -- Fixed the bug where `.Markdown` content blocks where not shown. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3.md deleted file mode 100644 index ea8fa57e12..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.3 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.3 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.3"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 22 Jan 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - - -## Release Highlights -The 1.8.3 release addresses ten high-priority bugs and introduces new admin APIs for managing tags and OAuth2.0 client types attached to API Products. - -## Download -- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.3/images/sha256-3693065546348105a693a1ed5402c93bfecd480c900e1efea4a6dea674263df3?context=explore) -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.3) - -## Changelog -#### Added -- Added [new admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing tags attached to API Products. -- Added [new admin API]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing OAuth2.0 client types attached to API Products. - -#### Fixed -- Fixed the bug where the search bar in the My Apps section of the Developer dashboard didn't search for an application. -- Fixed the bug where it was possible to update read-only details of an API Product via an API call. -- Fixed the bug where deleting an access request credentials also deleted the access request. -- Fixed the bug where the button to save a link when editing a hyperlink in the admin UI in the text editor wasn't displayed. -- Fixed the bug where the Exports function didn't export analytics to a CSV file under the Error rate(average) tab in the developer Dashboard. -- Fixed the bug where the portal did not accept themes with names containing dots and displayed a not found error when uploading a theme with a dot in its name. -- Fixed the bug in a multi-pod deployment where, when a theme is uploaded, only the pod that uploaded it updates its theme list, while the other pods remain unaware of the new theme. -- Fixed the bug where the Portal allowed pages to be created with duplicate content block names. Subsequently, only the last content block with the duplicate name was displayed. -- Fixed the bug where the portal's page renderer ignored content-blocks under the `if` statement with references to multiple content-blocks (e.g. `{{ if and .blocks.Block1.Content .blocks.Block2.Content .blocks.Block3.Content }}`). Subsequently, content that depended on these conditional blocks would not be rendered. -- Fixed the bug where the product auth type is removed after a product is updated. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4.md deleted file mode 100644 index cf5592d813..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.4 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.4 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.4"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 5 Mar 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -This release doesn't introduce future breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are on 1.8.1 or an older version we advise you to upgrade ASAP directly to this release. - -To upgrade the portal's theme please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) for the portal's themes. - - -## Release Highlights -The 1.8.4 release addresses ten high-priority bugs and vulnerabilities, and introduces multiple improvements to experience of admins in the portal's admin app. - -## Download -- [Docker image to pull](https://hub.docker.com/layers/tykio/portal/v1.8.4/images/sha256-4dd01c11b79f46a06934b0b0ea8d3bbb63835bd31953eccd896481aa4d9cfe56?context=explore) -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.4) - -## Changelog -#### Added -- Added [new configuration option]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for setting the `SameSite` attribute on the portal's cookie. -- Added [new welcome email for admin users]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) that is sent when new admin account is created. -- Added [new welcome email for developers]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) that is sent when new developer account is created. -- Added a fallback mechanism for referencing assets. This searches for assets, such as images, referenced in the rich text editor or markdown editor. It searches the container's filesystem whenever the portal can't find the referenced asset in the `PORTAL_STORAGE`. - -#### Changed -- Changed the title for the subject of the new developer registration request from "Registering email - subject" in the settings UI to "Developer Registration Approval Request - Subject" to better reflect the context in which this email is used. -- Adjusted the portal's behavior for saving pages through the admin API or the Pages UI. Now, if a content block referenced in a template is absent in the page using that template, the portal will ignore this issue instead of preventing the page from being saved. When rendering the respective page, any missing content blocks will be filled with empty strings. -- Changed title for the portal's private pages for better SEO performance: - -| URL | Page title | -|------------------------------|------------------------| -| /portal/private/analytics | Analytics | -| /portal/private/dashboard | Dashboard | -| /portal/private/apps/ | Create an application | -| /portal/private/apps/:id | Applications | -| /portal/private/users | Users | -| /portal/private/organisation | Create an organization | -| /portal/private/users/invite | Invite a user | -| /portal/private/users | Users | -| /portal/private/users/:id | Users | -| /portal/private/profile | Profile | -| /auth/password/login | Developer portal login | -| /auth/password/new | Password reset | -- Changed the credential provisioning flow to automatically include DeveloperID, OrganizationID, ApplicationID, and TeamIDs in [the credential metadata]({{< ref "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model#default-attributes" >}}). -- Added warning regarding potential PII exposure to the [custom attributes menu]({{< ref "/product-stack/tyk-enterprise-developer-portal/portal-customisation/customise-user-model#default-attributes" >}}). -- Changed the behavior of the portal for 404 errors. Now whenever a user requests non-existing page both private (e.i. requiring sign-in to access) or public, the portal now always renders the `not_found.tmpl` template. -- Changed the behavior of the `Secure` cookie attribute that is set by [PORTAL_SESSION_SECURE]({{< ref "/product-stack/tyk-enterprise-developer-portal/deploy/configuration#portal_session_secure" >}}) so that the `Secure` attribute is always add to the `Set-Cookie` header whenever `PORTAL_SESSION_SECURE` is set to `true` or when TLS is enabled. -- Changed the behavior of removing a developer profile within the developers UI in the admin app. Now, when an admin tries to remove a developer profile and some of their credentials have been removed from the credentials provider, or if the provider itself is down or unreachable, the portal asks the admin if they still want to remove the developer profile by displaying a modal window. -- Extended the `DELETE /users/:id` API endpoint by adding the [?force]({{< ref "/product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) query parameter to force removal of a user even if some of their credentials have been removed from the credentials provider, or if the provider itself is down or unreachable. -- Extended the `GET /pages/:id/content-blocks/:id:` API endpoint by adding additional fields in the response body: `Content`, `MarkdownContent`, `MarkdownEnabled`, `Name`, and `PageID`. -- Extended [filesize limit]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/file-structure-concepts#part-1-create-a-new-theme" >}}) for individual files in themes to 5 MB. -- Made the organization invite email's subject configurable via [the emails settings section]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/customise-enterprise-portal/full-customisation/email-customization#list-of-email-notifications" >}}). - -#### Fixed -- Fixed the bug where it was impossible to create an ordered list in the rich text editor in the admin app due to CSS issues. -- Fixed the bug where it was possible to copy the 'portal-session' cookie and use it with different IP address or browser. -- Fixed the bug where the audit log didn't reflect some actions initiated by admin users and developers. -- Fixed the bug where sensitive data such as hashed API tokens and passwords were exposed in the audit log. -- Fixed the bug where menu items were still persistent after deletion. -- Fixed the bug where admin users couldn't edit custom attributes created after a user profile is created. -- Fixed the bug where the UI errors when uploading theme were not consistent with the API error messages. -- Fixed the bug where scroll appeared in the API description box in the API Product page when the API description was longer than 50 symbols. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5.md deleted file mode 100644 index 8011f65856..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.8.5 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.8.5 -tags: ["Developer Portal", "Release notes", "changelog", "v1.8.5", "CVE-2024-3094", "Security"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 5 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -Currently, there are no planned breaking changes. - -#### Deprecations -There are no deprecations in this release. - -## Release Highlights -The 1.8.5 release addresses [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094) vulnerability that was introduced in the 1.8.4 release. -If you are not on v1.8.4 then there's no urgency in updating. - -#### Upgrade instructions -If you are on 1.8.4 you should **upgrade ASAP** directly to this release. This release doesn't introduce any changes to the theme, so a theme upgrade is not required. - -If you are on 1.8.3 or older version please follow the [upgrade instructions]({{< ref "product-stack/tyk-enterprise-developer-portal/upgrading/theme-upgrades" >}}) to upgrade the portal's themes. - -## Download -- [Docker image v1.8.5](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.8.5) - - ```bash - docker pull tykio/portal:v1.8.5 - ``` -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.5) - -## Changelog - -#### Fixed -- Fixed [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094) by replacing Debian base image. - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0.md b/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0.md deleted file mode 100644 index 3f5bb5a8cb..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: Tyk Enterprise Developer Portal v1.9.0 -description: Release notes documenting updates, enhancements and changes for Tyk Enterprise Developer Portal v1.9.0 -tags: ["Developer Portal", "Release notes", "changelog", "v1.9.0"] -menu: -main: -parent: "Release Notes" -weight: 7 ---- - -**Licensed Protected Product** - -##### Release Date 27 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Future breaking changes -In 2.0.0 release (the next after the next release) we will introduce the capability to create products and plans in the portal instead of creating policies for products and plans in the dashboard. - -To achieve that, we will need to change the plans and products architecture. The main change is that plans will include access rights to APIs and endpoint. - -As a result of this, 2.0.0 won't be backwards compatible with the previous versions. We will provide migration scripts and instructions before that release. - -#### Deprecations -There are no deprecations in this release. - -## Release Highlights -The 1.9.0 release addresses several security vulnerability and bugs and introduces two new capabilities: -- [Webhooks]({{< ref "product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks.md" >}}) for events that happen in the portal. -- [Admin APIs]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for OAuth2.0 configuration. - -#### Upgrade instructions -If you are on 1.8.5 or an older version we advise you to upgrade ASAP directly to this release. - -This release doesn't introduce any changes to the theme, so a theme upgrade is not required. - -## Download -- [Docker image v1.9.0](https://hub.docker.com/r/tykio/portal/tags?page=&page_size=&ordering=&name=v1.9.0) - - ```bash - docker pull tykio/portal:v1.9.0 - ``` -- [The default theme package](https://github.com/TykTechnologies/portal-default-theme/releases/tag/1.8.5) - -## Changelog -#### Added -- Added [the webhooks]({{< ref "product-stack/tyk-enterprise-developer-portal/portal-customisation/configure-webhooks.md" >}}) capability that enable real-time, automated data updates between the portal and 3rd party applications. -- Added [admin APIs]({{< ref "product-stack/tyk-enterprise-developer-portal/api-documentation/tyk-edp-api" >}}) for managing OAuth2.0 configuration. - -#### Fixed -- Fixed the error where the admin APIs returned 500 instead of 422 when an incorrectly formatted json is passed in the request body. -- Fixed the error where missing DCR registration access token caused crash during DCR client revocation. -- Fixed the error where API-created Access Requests were always auto-approved. -- Fixed the following vulnerabilities related to Go 1.19 by upgrading Go version to 1.21: - - [CVE-2023-45287](https://scout.docker.com/vulnerabilities/id/CVE-2023-45287). - - [CVE-2023-39325](https://scout.docker.com/vulnerabilities/id/CVE-2023-39325). - - [CVE-2023-39319](https://scout.docker.com/vulnerabilities/id/CVE-2023-39319). - - [CVE-2023-39318](https://scout.docker.com/vulnerabilities/id/CVE-2023-39318). - - [CVE-2023-45284](https://scout.docker.com/vulnerabilities/id/CVE-2023-45284). - - [CVE-2023-48795](https://scout.docker.com/vulnerabilities/id/CVE-2023-48795). - - [CVE-2023-39326](https://scout.docker.com/vulnerabilities/id/CVE-2023-39326). - - [CVE-2024-3094](https://nvd.nist.gov/vuln/detail/CVE-2024-3094). - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4.md b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4.md deleted file mode 100644 index c948fefd0f..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.4.md +++ /dev/null @@ -1,155 +0,0 @@ ---- -title: Tyk MDCB v2.4 Release Notes -description: "Tyk Multi Data-Center v2.4 release notes. Focusing on compatibility with Tyk API Definitions from Tyk Gateway v5.2 and enables better visualization in Tyk Dashboard" -tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.4", "2.4"] -aliases: - - /release-notes/mdcb-2.4/ ---- - -Licensed Protected Product - -*This page contains all release notes for version 2.4 displayed in reverse chronological order* - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 2.4.3 Release Notes - -##### Release date 27 Feb 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [MongoDB](https://www.mongodb.com/try/download/community) | 4.4.x, 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | -| [Redis](https://redis.io/download/) | 6.0.x, 6.2.x | 6.0.x, 6.2.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. - -#### Release Highlights -This release resolved an issue causing partial outages in Tyk Cloud Hybrid gateways due to a blocked stats channel, affecting login RPC calls and gateway operations. - -#### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.3/images/sha256-832f461782fbc6182382798a89025b0489f529427521f92683f33df1ebbd4218?context=explore) - -#### Changelog {#Changelog-v2.4.3} - -##### Fixed -

      -
    • -
      - Fixed a blockage in the stats channel which causes partial outages in Tyk Cloud Hybrid gateways - -Fixed a blockage in the stats channel of Tyk Cloud Hybrid gateways, improving login RPC calls and gateway operations. -
      -
    • -
    - ---- - -## 2.4.2 Release Notes - -##### Release date 9 Jan 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. - -#### Release Highlights -This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v2.4.2">}}) below. - -#### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.2/images/sha256-bdd708718153fdc25d13573d280fb5a715f11b1d2c97c6d59837d8dd83bf3c6c?context=explore) - -#### Changelog {#Changelog-v2.4.2} - -##### Fixed -
      -
    • -
      - Fix backward compatibility with Tyk v3.x and v4.x - -Fixed an issue where MDCB cannot pickup APIs created on Dashboard v3.x and v4.x. -
      -
    • -
    - ---- - -## 2.4.1 Release Notes - -##### Release date 21 Nov 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. - -#### Release Highlights -This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v2.4.1">}}) below. - -#### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.1/images/sha256-2debf08c95c46a4662a00b2193ee142998826ed7c5e2bb4a4633737c0a4de2e3?context=explore) - -#### Changelog {#Changelog-v2.4.1} - -##### Changed -- Update for compatibility with API definitions for Tyk v5.2.3 - ---- - -## 2.4.0 Release Notes - -##### Release Date 14 November 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. - -#### Release Highlights -MDCB 2.4.0 is an update for compatibility for synchronisation with Tyk v5.2 API Definitions. It also enables gateway information visualisation on Tyk Dashboard v5.2+. Please refer to the [changelog]({{< ref "#Changelog-v2.4.0">}}) below. - -#### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-mdcb-docker/v2.4.0/images/sha256-b5fad5b4c1c8b912999816ab51ff51e62fdd733fc43256187f22e1218b287f26?context=explore) - -#### Changelog {#Changelog-v2.4.0} - -##### Added -- Track number of connected gateways and gateway info. The connection statistics can be queried from Tyk Dashboard v5.2+. This allow greater visibility for Operation teams on the number of gateways they are using. - -##### Updated -- Update for compatibility with API definitions for Tyk v5.1 - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5.md b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5.md deleted file mode 100644 index b0b3995ade..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.5.md +++ /dev/null @@ -1,233 +0,0 @@ ---- -title: Tyk MDCB v2.5 Release Notes -description: "Tyk Multi Data-Center v2.5 release notes. Focusing on compatibility with Tyk API Definitions from Tyk Gateway v5.3" -tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.5", "2.5"] -aliases: - - /release-notes/mdcb-2.5/ ---- - -Licensed Protected Product - -*This page contains all release notes for version 2.5 displayed in reverse chronological order* - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 2.5.1 Release Notes - -#### Release date 24 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x or 2.5.0 version, we advise you to upgrade as soon as possible to this latest release. If you are on an older version, you should skip 2.5.0 and upgrade directly to this release. - -#### Release Highlights -This release contains bug fixes as detailed in the [changelog]({{< ref "#Changelog-v2.5.1">}}) below. - -#### Downloads -- [Docker image v2.5.1](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.5.1) -- ```bash - docker pull tykio/tyk-mdcb-docker:v2.5.1 - ``` - -#### Changelog {#Changelog-v2.5.1} - -##### Fixed -
      -
    • -
      - Fixed a bug where the TYK_MDCB_HEALTHCHECKPORT was not used when MDCB was configured with TLS enabled - - When MDCB was configured with TLS enabled, traffic was served over HTTPS on the listen port that was configured. However, the healthcheck endpoint was exposed on the standard HTTPS port of 443 and TYK_MDCB_HEALTHCHECKPORT was not being respected. -
      -
    • - -
    • -
      - Fixed a bug where clearing the API cache from the Tyk Dashboard UI failed to invalidate the cache in distributed data plane gateways - - When clearing the API cache from the Tyk Dashboard UI, the cache in distributed data plane gateways was not being invalidated. *Please note that this fix requires Tyk Gateway version 5.3.1.* -
      -
    • - -
    • -
      - Fixed a bug where PostgreSQL could not be used with MDCB 2.4.2/2.4.3 if APIs were created with version 4.0.X of the Dashboard - - MDCB v2.4.2/2.4.3 was unable to retrieve APIs when they were created using a 4.0.x Dashboard and PostgreSQL -
      -
    • - -
    - ---- - -## 2.5.0 Release Notes - -##### Release date 5 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 2.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.4.0 and upgrade directly to this release. - -#### Release Highlights - -##### Tyk v5.3 Compatibility -MDCB 2.5.0 is an update for compatibility for synchronisation with Tyk v5.3 API Definitions. - -##### Redis v7.x Compatibility -We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible with Redis v7.x. - -##### MongoDB v7.0.x Compatibility -We have upgraded mongo-go driver to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). It allows us to benefit from the bug fixes and enhancements released by MongoDB. We have also tested that both Tyk 5.0.x+ and Tyk 5.3 are compatible with MongoDB v7.0.x. - -##### Security Fixes -We have fixed a security issue affecting MDCB v2.2.0 to v2.4.x, where certain per-API access rights from policies are not properly relayed to edge gateways. We strongly recommend upgrading to MDCB version 2.5.0 to ensure the proper enforcement of per-API access rights across all gateways in your deployment. - -Please refer to the [changelog]({{< ref "#Changelog-v2.5.0">}}) below. - -#### Downloads -- [Docker image v2.5.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.5.0) -- ```bash - docker pull tykio/tyk-mdcb-docker:v2.5.0 - ``` - -#### Changelog {#Changelog-v2.5.0} - -##### Fixed -
      -
    • -
      - Fixed relaying per-API access rights to gateways for MongoDB deployments - -Fixed a security issue affecting MDCB v2.2.0 to v2.4.x, where certain per-API access rights from policies are not properly relayed to edge gateways. This issue exists only when using MongoDB as storage engine. - -It affected GraphQL's field-based permissions, query depth, per query depth limits, and disable introspection settings. Also it affected usage quota of both HTTP and GraphQL APIs. However, "Set per API limits and quotas" and global policy settings (e.g. query depth) are not affected by this issue. -
      -
    • - -
    • -
      - Fixed CVE-2023-3978 (NVD) - - Update embedded Tyk Pump to v1.9 to address [CVE-2023-3978](https://nvd.nist.gov/vuln/detail/CVE-2023-3978) (NVD) -
      -
    • -
    • -
      - Fixed CVE-2023-39325 (NVD) - - Update embedded Tyk Pump to v1.9 to address [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) (NVD) -
      -
    • -
    • -
      - Fixed CVE-2020-26160 (NVD) - - Migrate MDCB JWT library to golang-jwt v4.5.0 to address [CVE-2020-26160](https://nvd.nist.gov/vuln/detail/CVE-2020-26160) (NVD) -
      -
    • - -
    • -
      - Fixed MDCB stuck in crash loop during startup if tyk_sink.config is missing - - Fix the sample MDCB configuration to stop a crash loop to allow MDCB to run without a tyk_sink.conf file -
      -
    • -
    - -##### Added -
      -
    • -
      - Support Redis v7.0.x - - MDCB 2.5.0 refactors Redis connection logic by using [storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), - which integrates with [go-redis](https://github.com/redis/go-redis) v9. Subsequently, this fix adds support for - Redis v7.0.x. -
      -
    • -
    - - -##### Updated -
      - -
    • -
      - Update for compatibility with API definitions for Tyk v5.3 - -MDCB 2.4.x supports Tyk API definitions up to Tyk Gateway v5.3.0. Please use MDCB 2.5.x with Tyk Gateway v5.3.0+. -
      -
    • -
    • -
      - Set default MongoDB driver to mongo-go - -MDCB uses `mongo-go` as the default MongoDB driver from v2.5.0. This provides support for MongoDB 4.4.x, -5.0.x, 6.0.x, 7.0.x. If you are using older MongoDB versions e.g. 3.x, please set MongoDB driver to `mgo`. -[MongoDB supported versions](https://tyk.io/docs/planning-for-production/database-settings/mongodb/#supported-versions) -page provides details on how to configure MongoDB drivers in Tyk. -
      -
    • - -
    • -
      - Support MongoDB v7.0.x - -MDCB integrates with [storage v1.2.2](https://github.com/TykTechnologies/storage), which updated mongo-go -driver we use from v1.11.2 to [mongo-go v1.13.1](https://github.com/mongodb/mongo-go-driver/releases/tag/v1.13.1). -It allows us to benefit from the bug fixes and enhancements released by MongoDB. -
      -
    • - - -
    • -
      - Updated to Go 1.21 - - MDCB updated to Go 1.21 to benefit from fixed security issues, linkers, compilers etc. - -
      -
    • -
    - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6.md b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6.md deleted file mode 100644 index c815693e8a..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.6.md +++ /dev/null @@ -1,129 +0,0 @@ ---- -title: Tyk MDCB v2.6 Release Notes -description: "Tyk Multi Data-Center Bridge v2.6 release notes" -tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.6", "2.6"] -aliases: - - /release-notes/mdcb-2.6/ ---- - -Licensed Protected Product - -*This page contains all release notes for version 2.6 displayed in reverse chronological order* - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 2.6.0 Release Notes - -##### Release date 2 July 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -Starting with MDCB v2.6.0, the configuration parameter `http_port` has been introduced to replace the original `healthcheck_port`. This new HTTP port is designed to expose various endpoints for monitoring and debugging MDCB. - -###### Changes in MDCB v2.6.0: -- **New Configuration**: `http_port` is the new parameter for defining the HTTP port, with a default value of `8181`. -- **Deprecation**: The `healthcheck_port` parameter is deprecated and will no longer be used in future MDCB versions. -- **Helm Chart Update**: The MDCB Helm chart now includes the option `mdcb.probes.httpPort`, which takes precedence over `mdcb.probes.healthcheckPort`. For consistency and future compatibility, it is recommended to use `mdcb.probes.httpPort`. - -###### Backward compatibility: - -The `http_port` parameter is backward compatible, meaning it will function correctly with all existing MDCB versions, ensuring a smooth transition. - -###### Recommendations for users: - -- **Update Configurations**: Modify your MDCB configurations to use the new `http_port` parameter. - -#### Upgrade instructions -If you are using a 2.5.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.5.0 and upgrade directly to this release. - -#### Release Highlights - -##### Tyk v5.4 Compatibility -MDCB 2.6.0 is an update for compatibility for synchronisation with Tyk v5.4 API Definitions. - -##### Comprehensive Data Plane Node Information -MDCB 2.6 introduces a new `/dataplanes` endpoint that provides a comprehensive view of all data plane nodes connected to MDCB, including crucial metadata and status information for each node. The admin secret is required in the header to access these information. - -Please refer to the [changelog]({{< ref "#Changelog-v2.6.0">}}) below. - -#### Downloads -- [Docker image v2.6.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.6.0) -- ```bash - docker pull tykio/tyk-mdcb-docker:v2.6.0 - ``` - -#### Changelog {#Changelog-v2.6.0} - -#### Security - -The following CVEs have been resolved in this release: - -- [PRISMA-2021-0108](https://github.com/influxdata/influxdb/issues/10292) -- [CVE-2024-27304](https://nvd.nist.gov/vuln/detail/CVE-2024-27304) -- [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288) - -##### Fixed -
      -
    • -
      - Fixed MDCB failure when Tyk Dashboard is upgraded from v4 to v5 -Fixed a bug where upgrading Tyk Dashboard from version 4 to version 5 caused an MDCB failure when using the default PostgreSQL protocol. Resolved the issue in MDCB by detecting cached plan errors, then reconnecting to the storage and rerunning the query to ensure proper functionality. -
      -
    • - -
    - -##### Added -
      -
    • -
      - Retrieve information of all the connected data plane nodes - Adding a `/dataplanes` endpoint that offers a comprehensive view of all data plane nodes connected to MDCB. This endpoint provides crucial metadata and status information for each connected node, enabling efficient monitoring and troubleshooting. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests return an array of node details, including node ID, API key, group ID, version, TTL, tags, health status, API statistics, and host details. -
      -
    • -
    - - -##### Updated -
      - -
    • -
      - Update for compatibility with API definitions for Tyk v5.4 - -MDCB 2.6.0 supports Tyk API definitions up to Tyk Gateway v5.4.0. Please use MDCB 2.6.x with Tyk Gateway v5.4.0+. -
      -
    • - -
    • -
      - Updated to Go 1.22 - - MDCB has been updated to use Go 1.22 to benefit from fixed security issues, linkers, compilers etc. - -
      -
    • -
    - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md b/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md deleted file mode 100644 index 2c1f8d0539..0000000000 --- a/tyk-docs/content/product-stack/tyk-enterprise-mdcb/release-notes/version-2.7.md +++ /dev/null @@ -1,249 +0,0 @@ ---- -title: Tyk MDCB v2.7 Release Notes -description: "Tyk Multi Data-Center Bridge v2.7 release notes" -tags: ["release notes", "MDCB", "Tyk Multi Data-Center", "Tyk Multi Data-Center", "v2.7", "2.7.0", "2.7.1", "2.7.2"] ---- - -Licensed Protected Product - -*This page contains all release notes for version 2.7 displayed in reverse chronological order* - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - ---- - -## 2.7.2 Release Notes - -### Release Date 03 December 2024 - -### Release Highlights - -#### Support Tyk 5.7 -Tyk MDCB 2.7.2 has been updated to support API configurations from Tyk 5.7.0. - -### Breaking Changes -This release has no breaking changes. - -### Dependencies {#dependencies-X.Y.Z} - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations -There are no deprecations in this release. - -### Upgrade instructions -For users currently on v2.7.1, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower minor), it is advisable to bypass version 2.7.0 and proceed directly to this latest patch release. -
    -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Downloads -- [Docker image v2.7.2](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.2) - - ```bash - docker pull tykio/tyk-mdcb-docker:v2.7.2 - ``` - -### Changelog {#Changelog-v2.7.2} - -#### Updated -
      - -
    • -
      - Update for compatibility with API definitions for Tyk v5.7 - -MDCB 2.7.2 supports Tyk API definitions up to Tyk Gateway v5.7.0. Please use MDCB 2.7.2+ with Tyk Gateway v5.7.0+. -
      -
    • -
    - -#### Security Fixes -
      - -
    • -
      - Fixed the following CVEs: - - - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) - - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) - - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) -
      -
    • -
    - ---- - -## 2.7.1 Release Notes - -##### Release date 10 October 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -There are no deprecations in this release. - -#### Release Highlights - -#### Support GraphQL analytics records -MDCB (Multi-Data Center Bridge) has been enhanced to support the storage of GraphQL aggregate analytics directly. This allows for better tracking and analysis of GraphQL usage across distributed environments. This enhancement simplifies the storage and management of GraphQL analytics within MDCB, improving efficiency and ease of use. - -#### Downloads -- [Docker image v2.7.1](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.1) -- ```bash - docker pull tykio/tyk-mdcb-docker:v2.7.1 - ``` - - -#### Changelog {#Changelog-v2.7.1} - -##### Added -
      -
    • -
      - Support the storage of GraphQL aggregate analytics -MDCB (Multi-Data Center Bridge) has been enhanced to support the storage of GraphQL aggregate analytics directly. This allows for better tracking and analysis of GraphQL usage across distributed environments when Gateway send analytics data directly to MDCB, which processes and sends the data to the analytics storage. This enhancement simplifies the storage and management of GraphQL analytics without Tyk Pump, improving efficiency and ease of use. -
      -
    • -
    - - -##### Updated -
      - -
    • -
      - Update for compatibility with API definitions for Tyk v5.6 - -MDCB 2.7.1 supports Tyk API definitions up to Tyk Gateway v5.6.0. Please use MDCB 2.7.1+ with Tyk Gateway v5.6.0+. -
      -
    • -
    ---- - -## 2.7.0 Release Notes - -##### Release date 12 August 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### 3rd Party Dependencies & Tools -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by MDCB | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.0.x, 6.0.x, 7.0.x | 4.4.x, 5.0.x, 6.0.x, 7.0.x | Used by MDCB | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x LTS | 12.x - 16.x | Used by MDCB | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -#### Deprecations -There are no deprecations in this release, however with the introduction of new healthcheck endpoints we encourage customers to start using the new `/liveness` and `/readiness` endpoints and avoid using the old `/health` endpoint. - -###### Recommendations for users: - -- Migrate to new [health check]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#health-check" >}}) endpoints in order to get more detailed information. For Kubernetes users, use Helm Charts v1.6 to upgrade MDCB to set liveness and readiness probes of MDCB deployment to the new health check endpoints. - -#### Upgrade instructions -If you are using a 2.6.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 2.6.0 and upgrade directly to this release. - -#### Release Highlights - -#### New Health check probes -Two new [health check]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#health-check" >}}) endpoints have been added to improve monitoring and diagnostics: - -1. `/liveness`: This endpoint provides a quick check to determine if the MDCB application is alive and running. -2. `/readiness`: This endpoint offers a detailed status of components and dependencies required for MDCB to serve traffic. It includes status checks for: - - Database connectivity - - Redis connectivity - - RPC server status - -These new endpoints allow for more granular monitoring of MDCB's operational status, enabling quicker identification and resolution of potential issues. - -##### New Configuration Access Endpoint -Two new `/config` and `/env` [endpoints]({{< ref "tyk-multi-data-centre/setup-controller-data-centre#check-mdcb-configurations" >}}) have been implemented, allowing developers to access the current configuration state of the MDCB instance in real-time. This feature provides: - -- Secure access to configuration data -- Automatic redaction of sensitive information -- Up-to-date view of the running configuration - -This addition enhances debugging capabilities and provides valuable insights into the MDCB instance's current settings. - -Please refer to the [changelog]({{< ref "#Changelog-v2.7.0">}}) below. - -#### Downloads -- [Docker image v2.7.0](https://hub.docker.com/r/tykio/tyk-mdcb-docker/tags?page=&page_size=&ordering=&name=v2.7.0) -- ```bash - docker pull tykio/tyk-mdcb-docker:v2.7.0 - ``` - -#### Changelog {#Changelog-v2.7.0} - -##### Added -
      -
    • -
      - Added `/liveness` endpoint for quick checks on MDCB application status - Added `/liveness` endpoint that reports if MDCB is running. It returns status 200 if MDCB is alive. It returns status 503 if MDCB is not operational. In that case, a restart is recommended. -
      -
    • -
    • -
      - Implemented `/readiness` endpoint to detail status of critical components and dependencies - Added `/readiness` endpoint that reports if MDCB is ready to serve request. It returns status 200 if MDCB is ready. It returns status 503 if MDCB or one of the dependencies is not ready. -
      -
    • -
    • -
      - Introduced `/config` endpoint for secure, real-time access to MDCB instance configuration - Added `/config` endpoint that returns MDCB instance configuration in JSON format. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests return MDCB JSON configurations with passwords and sensitive information redacted. -
      -
    • -
    • -
      - Introduced `/env` endpoint for secure, real-time access to MDCB instance configuration - Added `/env` endpoint that returns MDCB instance configuration as a list of environment variable keys and values. It requires an administrative key provided in the `x-tyk-authorization` header for access, ensuring secure and controlled usage. Successful requests returns a list of environment variable keys and values with passwords and sensitive information redacted. -
      -
    • - - -
    - - -##### Updated -
      - -
    • -
      - Update for compatibility with API definitions for Tyk v5.5 - -MDCB 2.7.0 supports Tyk API definitions up to Tyk Gateway v5.5.0. Please use MDCB 2.7.x with Tyk Gateway v5.5.0+. -
      -
    • -
    ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger.md b/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger.md index 002c128cb2..50245e0ee5 100644 --- a/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger.md +++ b/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger.md @@ -8,7 +8,7 @@ aliases: {{< note success >}} **Note** -[Tyk Gateway 5.2]({{< ref "product-stack/tyk-gateway/release-notes/version-5.2.md" >}}) now includes OpenTelemetry Tracing. We recommend migrating to OpenTelemetry for better trace insights and more comprehensive support. This change will offer you significant advantages in managing your distributed tracing needs. +[Tyk Gateway 5.2]({{< ref "developer-support/release-notes/gateway.md" >}}) now includes OpenTelemetry Tracing. We recommend migrating to OpenTelemetry for better trace insights and more comprehensive support. This change will offer you significant advantages in managing your distributed tracing needs. Subsequently, we recommend following this guide [Exporting OpenTelemetry Distributed Traces to Jaeger]({{< ref "otel_jaeger" >}}). {{< /note >}} diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/.placeholder b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2.md deleted file mode 100755 index 57782efa11..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -date: 2017-03-28T12:47:56+01:00 -title: Upgrading to v2.3 from v2.2 -# notoc: true -# weight: 221 -aliases: - - /upgrading-v2-3-v2-2/ ---- - -Tyk v2.3 is backwards-compatible with v2.2 in terms of the configuration file and the original `tyk.conf` can be used with the new version. If you would like to keep your v2.2 settings, please remember to **backup your `tyk.conf` file before upgrading as it will be overwritten during the upgrade process.** - -*However*, there are behavioral differences in a v2.3 cluster when hooked up to a Dashboard that can cause some odd behavior if the upgrade is not conducted in the right order. - -Tyk v2.3 Gateways continuously talk to each other sharing load data, they also share information with the Dashboard regarding their current configuration. This chatter, if exposed to a v2.2 Gateway, can cause it go into a reload loop, which isn't ideal. Because of this, the recommended upgrade procedure for a Tyk v2.2 system is: - -1. Upgrade all the Tyk Gateways to v2.3 -2. Upgrade the Dashboard to v1.3 -3. Update the Tyk Pump to v0.4 - -If upgraded in this order, then the reload loop can be avoided on a production system. - -If the reload loop does occur it is not disastrous, Tyk will just keep proxying traffic even though it is constantly pulling new configurations. It's just not particularly efficient. - -> **Note for MDCB**: If you are using MDCB and want to upgrade your Gateways to v2.3, you will also need to upgrade your MDCB to v1.2.0.2. - -#### Retaining rate limiter functionality - -Tyk v2.3 introduces a new in-memory leaky-bucket *distributed* rate limiter, this is much more performant than the older rate limiter which hard-synchronised via Redis, and puts far less strain on a Redis instance or cluster than the old rate limiter. By default, Tyk v2.3 will switch to this rate limiter, however it is possible to retain the old behavior by enabling it explicitly in the `tyk.conf` file: - -``` - "enable_redis_rolling_limiter": true -``` - -This might be useful if you do not wish to switch over immediately and wish to test the new rate limiter first. - -#### Public and Private keys - -Tyk v2.3 introduces public/private key message authentication for messages that are sent from the management interface to the Gateways, and for code that is being deployed as a plugin to a Gateway via the bundle downloader. - -By default, Tyk's new config file has this feature *disabled*, however since it is new, an existing `tyk.conf` will assume a secure installation as the feature must be explicitly disabled. This means, prior to starting your new Gateways, either disable the security feature, or add a public/private key pair to your `tyk.conf` and `tyk_analytics.conf` files: - -##### Disable secure messages - -**If you are upgrading from v2.2 then you must either generate a public/private keypair or disable the option to validate inbound payloads against a key. You can do this by setting the following key in your `tyk.conf`:** - -``` - "allow_insecure_configs": true -``` - -##### Add a public key and private key pair - -First, generate the key pair: - -``` - # private key - openssl genrsa -out privkey.pem 2048 - - # public key - openssl rsa -in privkey.pem -pubout -out pubkey.pem -``` - -**`tyk.conf`:** - -``` - "public_key_path": "/path/to/public/key.pem" -``` - -**`tyk_analytics.conf`:** - -``` - "private_key_path": "/path/to/private/key.pem" -``` - -#### Conclusion - -The above are the key changes in v2.3 that could affect your setup and configuration during an upgrade. All other settings should be backwards compatible and not introduce breaking changes. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4.md deleted file mode 100644 index 48ca093a36..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.4.md +++ /dev/null @@ -1,299 +0,0 @@ ---- -date: 2017-03-24T09:58:52Z -title: Tyk Gateway v2.4 -menu: - main: - parent: "Release Notes" -weight: 15 -aliases: - - /release-notes/version-2.4/ ---- - -## New in this release: - -This release touch all our products and brings you numerous long awaited features and fixes. -Here are the packages and their versions we are releasing today: Tyk Gateway v2.4.0, Tyk Dashboard v1.4.0, Tyk Pump v0.4.2, MDCB v1.4.0, TIB v0.2. - -## Major highlights - -### Mutual TLS - -A major feature of this release is the implementation of Mutual TLS. Now you can protect your APIs by allow listing certificates, idenitfy users based on them, and increase security between Tyk and upstream API. For details, see [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). - - -### Extended use of Multiple Policies - -We have extended support for partitioned policies, and you can now mix them up when creating a key. Each policy should have own partition, and will not intersect, to avoid conflicts while merging their rules. - -Using this approach could be useful when you have lot of APIs and multiple subscription options. Before, you had to create a separate policy per API and subscription option. - -Using multiple partitioned policies you can create basic building blocks separately for accessing rules, rate limits and policies, and then mix them for the key, to creating unique combination that fit your needs. - -We have added a new `apply_policies` field to the Key definition, which is an string array of Policy IDs. -> **NOTE**: The old key apply_policy_id is supported, but is now deprecated. - -We have updated the Dashboard **Apply Policies** section of the **Add Key** section. - -{{< img src="/img/release-notes/apply_policy.png" alt="apply-policy" >}} - -For this release multiple policies are only supported only via the Add Key section and via the API. Support for OIDC, oAuth, and Portal API Catalogs are planned for subsequent releases. - -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -### Global API Rate Limits - -We have added a new API definition field `global_rate_limit` which specifies a global API rate limit in the following format: `{"rate": 10, "per": 1}`, similar to policies or keys. - -The API rate limit is an aggregate value across all users, which works in parallel with user rate limits, but has higher priority. - -Extended Dashboard API designer Rate Limiting and Quotas section in Core settings: - -{{< img src="/img/release-notes/rate_limits.png" alt="rate-limits" >}} - -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -### Specify custom analytics tags using HTTP headers - -We have added a new API definition field `tag_headers` which specifies a string array of HTTP headers which can be extracted and turned to tags. - -For example if you include `X-Request-ID` header to tag_headers, for each incoming request it will include a `x-request-id-` tag to request an analytic record. - -This functionality can be useful if you need to pass additional information from the request to the analytics, without enabling detailed logging, which records the full request and response objects. - -We have added a new **Tag headers** section to the Dashboard **API Designer Advanced** tab. - -{{< img src="/img/release-notes/tag_headers.png" alt="tag_headers" >}} - -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -### Single-Sign-On (SSO) improvements - -More SSO functionality is something that a lot of our customers have been asking for. In this release we've significantly improved our support for SSO, and you can now: - -* Enable Tyk Identity Broker to apply LDAP filters to user search [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/ldap" >}}) -* Set permissions for your users, logged via SSO, via `sso_permission_defaults` in Dashboard config file. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) -* Setup a login page redirect, using `sso_custom_login_url` and `sso_custom_portal_login_url` Dashboard config options to enable users login using a custom SSO login page. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) -* For those who love to build everything in-house, we have added new API for custom dashboard authentication integrations. [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/custom" >}}) - -## Moar! -This release is packed with way more more cool stuff. Here are detailed release notes for each product: - -### Tyk Gateway v2.4.0 - -#### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -#### Global API rate limits -[Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) - -#### Specify custom analytics tags using HTTP headers -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -#### Attaching Multiple Policies to the Keys -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -#### Default User Agent set to Tyk/$VERSION -If no user agent is specified in a request, it is now set as `Tyk/$VERSION`. - -#### Include `x-tyk-api-expires` date header for versioned APIs -If a request is made for an API which has an expiry date, the response will include the `x-tyk-api-expires` header with expiry date. - -[Docs]({{< ref "getting-started/key-concepts/versioning" >}}) - -#### Run Admin Control API on a separate port -Using `control_api_port` option in configuration file, you can run the admin control api on a separate port, and hide it behind firewall if needed. - -[Docs]({{< ref "tyk-oss-gateway/configuration#control_api_port" >}}) - -#### Added a Configuration Linter - -We have added a new `tyk lint ` command which will validate your `tyk.conf` file and validate it for syntax correctness, misspelled attribute names or format of values. The Syntax can be: - -`tyk lint` or `tyk --conf=path lint` - -If `--conf` is not used, the first of the following paths to exist is used: - -`./tyk.conf` -`/etc/tyk/tyk.conf` - -[Docs]({{< ref "tyk-oss-gateway/configuration" >}}) - -#### Set log_level from tyk.conf - -We have added a new `log_level` configuration variable to `tyk.conf` to control logging level. - -Possible values are: `debug`, `info`, `warn`, `error` - -[Docs]({{< ref "tyk-oss-gateway/configuration#log_level" >}}) - -#### Added jsonMarshal to body transform templates - -We have added the `jsonMarshal` helper to the body transform templates. You can apply jsonMarshal on a string in order to perform JSON style character escaping, and on complex objects to serialise them to a JSON string. - -Example: `{{ .myField | jsonMarshal }}` - -[Docs]({{< ref "transform-traffic/request-body" >}}) - -#### Added a blocking reload endpoint - -Now you can add a `?block=true` argument to the `/tyk/reload` API endpoint, which will block a response, until the reload is performed. This can be useful in scripting environments like CI/CD workflows. - -[Docs]({{< ref "tyk-gateway-api" >}}) - -#### `tyk_js_path` file now contains only user code - -Internal JS API not budled into tyk binary, and `js/tyk.js` file used only for custom user code. It is recommended to delete this file, if you are not using it, or remove Tyk internal code from it. New releases do not ship this file by default. - -#### Improved Swagger API import defaults - -When importing Swagger based APIs they now generate tracked URLs instead of allow listed ones. - -[More](https://github.com/TykTechnologies/tyk/issues/643) - -#### Respond with 503 if all hosts are down. -Previously, the internal load balancer was cycling though hosts even if they were known as down. - -#### Request with OPTIONS method should not be cached. -[More](https://github.com/TykTechnologies/tyk/issues/376) - -#### Health check API is officially deprecated. -This was very resource consuming and unstable feature. We recommend using load balancers of your choice for this. - -#### Fixed custom error templates for authentication errors. -[More](https://github.com/TykTechnologies/tyk/issues/438) - - -### Tyk Dashboard v1.4.0 - -#### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -#### Global API rate limits -[Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) - -#### Specify custom analytics tags using HTTP headers -[Docs]({{< ref "tyk-stack/tyk-manager/analytics/log-browser" >}}) - -#### Attaching Multiple Policies to the Keys -[Docs]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}) - -#### Set permissions for users logged via SSO (Tyk Identity Broker) -Added new option `sso_permission_defaults` in Dashboard config file. -Example: - -``` -"sso_permission_defaults": { - "analytics": "read", - "apis": "write", - "hooks": "write", - "idm": "write", - "keys": "write", - "policy": "write", - "portal": "write", - "system": "write", - "users": "write" -}, -``` -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) - -#### Set custom login pages for portal and dashboard -If you are using 3-rd party authentification like TIB, you maybe want to redirect from standard login pages to your own using following attributes in dashboard config: `sso_custom_login_url`, `sso_custom_portal_login_url`. - -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers" >}}) - -#### Added new set of APIs for custom dashboard authentification -Added new `/admin/sso` endpoint for custom integration. In fact, the same API is used by our own Tyk Identity Broker. - -[Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/custom" >}}) - - -#### Service discovery form improved with most common pre-defined templates - -Now you can pre-fill the form with most popular templates like consul or etcd. - -#### RPC credentials renamed to Organization ID -Yay! - -#### Replaced text areas with a code editors - -All multi-line text fields now replaced with a code editors. - -#### Replace dropdowns with the live search component - -All the dropdown lists now support live search, and work with a large number of elements (especially handy for API or Policiy lists). - -#### Display user ID and email on when listing users - -The **Users list** now displays the **User ID** and **Email**. - -#### Added search for portal developers - -We have added search for the users listed in the developer portal. - -#### Key request email link to developer details - -The email address in a **Key Request** from the **Developer Portal** is now a link to the relevant developer profile. - -#### Country code in log browser links to geo report - -The country code in the log browser has been changed to a link to the geographic report. - -#### Added support for HEAD methods in the Dashboard API Designer. - -#### Redirect user to the login page if session is timed out. - -#### When creating a portal API catalog, you can now attach documentation without saving the catalog first. - -#### Fixed the` proxy.preserve_host_header` field when saved via the UI. -Previously, the field was available in the API definition, but got removed if the API was saved via the UI. - -#### Fixed the port removal in service discovery properties. -https://github.com/TykTechnologies/tyk-analytics-ui/issues/12 - -#### Prevent an admin user revoking their own permissions. -This is a UI only fix, it is still allowable via the API (which is OK). - -#### Other UX Improvements - -* Key pieces of data made accessible to quickly copy+paste -* Improved help tips -* Get your API URL without having to save and go back -* Improved pagination -* Improved feedback messaging -* Improved charts -* Improved analytics search - -### Tyk Pump v0.4.2 - -#### Support added for Mongo SSL connections - -See https://tyk.io/docs/configure/tyk-pump-configuration/ for a sample pump.conf file. - -### MDCB v1.4.0 -Added support for Mutual TLS, mentioned by Gateway and Dashboard above. See [Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) - -Also fixed bug when Mongo connections became growing though the roof if client with wrong credentials tries to connect. - - -### TIB v0.2 - -Tyk Identity Broker now fully support LDAP search with complex filters! [Docs]({{< ref "advanced-configuration/integrate/3rd-party-identity-providers/ldap" >}}) - -### Upgrading all new Components - -> **NOTE**: This release is fully compatible with the previous version, except that if you want to use new features, like Mutual TLS, you need to upgrade all the related components. - -Cloud users will be automatically upgraded to the new release. - -Hybrid users should follow the upgrade instructions [here]({{< ref "upgrading-tyk#upgrade-guides-toc" >}}). - -Self-Managed users can download the new release packages from their usual repositories. - - -[3]: /img/release-notes/tag_headers.png -[4]: /img/release-notes/import_api_definition.png -[5]: /img/release-notes/live_search.png -[6]: /img/release-notes/user_list.png -[7]: /img/release-notes/dev_list.png -[8]: /img/release-notes/key_request_user.png - diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5.md deleted file mode 100644 index 788674a139..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.5.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -date: 2017-03-24T09:58:52Z -title: Tyk Gateway v2.5 -menu: - main: - parent: "Release Notes" -weight: 14 -aliases: - - /release-notes/version-2.5/ ---- - -## New in this Release: - -This release touches all our products and brings you numerous features and fixes. Here are the packages and their versions we are releasing today: Tyk Gateway v2.5.0, Tyk Dashboard v1.5.0, Tyk Pump v0.6.0, MDCB v1.5.0, TIB v0.3. - - -## Major Highlights - -### New Dashboard Look and Feel - -Our Dashboard has had a UI overhaul, with the following improvements: - -* A more modern, fun look and feel -* Consistent layouts and action buttons across each section -* Better feedback on errors and updates -* Various UX improvements - -### SSO with OpenId Identity Providers - -With TIB v0.3 we have made it possible to integrate any OpenID supported Identity provider with Tyk so you can configure Single Sign On (SSO), if the provider supports those. - -### Searching API and Policies List - -This long awaited feature has been added on the Dashboard UI. - -### Default API Versioning - -You can now specify a default API version when using a versioning strategy. - -### Tyk Pump with MDCB - -We've added MDCB support in this release of Tyk Pump - -## Moar! -This release is packed with way more more cool stuff. Here are detailed release notes for each product: - -### Tyk Gateway v2.5.0 - -#### New Relic Instrumentation Support - -We have added support for New Relic Instrumentation using: - -`"newrelic": {"app_name": "", "license_key": ""}` - -[Docs]({{< ref "basic-config-and-security/report-monitor-trigger-events/instrumentation" >}}) - -#### Default API Versioning - -You can now specify a default API version, and it will be used if a version is not set via headers, or URL parameters. Use the new option: - -`spec.version_data.default_version` - -[Docs]({{< ref "getting-started/key-concepts/versioning" >}}) - -#### Disable URL Encoding - -You can disable URL encoding using a new boolean `http_server_options` setting: - -`skip_target_path_escaping` - -[Docs]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) - -#### Enable Key Logging - -By default all key ids in logs are hidden. You can now turn it on if you want to see them for debugging reasons using the `enable_key_logging` option. - -[Docs]({{< ref "tyk-oss-gateway/configuration#enable_key_logging" >}}) - - -#### Specify TLS Cipher Suites - -We have added support for specifying allowed SSL ciphers using the following option: - -`http_server_options - ssl_ciphers` - -[Docs]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) - -### Plugins Updates - -* Coprocess plugins now have access to `config_data` -* The JSVM `spec` object now has access to `APIID` and `OriginID` to reflect similar functionality of Coprocess plugins. -* Plugins now have access to Host HTTP Header. - -[JSVM Docs]({{< ref "plugins/supported-languages/javascript-middleware/middleware-scripting-guide" >}}) -[Plugin Data Structure Docs]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-data-structures" >}}) - - -### Tyk Dashboard v1.5.0 - -#### A Fresh Look and Feel - -With this release we have refreshed the entire Dashboard UI with a new look-and-feel, bringing with it such improvements as: - -* A more modern, fun look and feel -* Consistent layouts and action buttons across each section -* Better feedback on errors and updates -* UX improvements - -#### Search on API and Policy List Pages - -We have added API and Policy search functionality, which should help those with long lists. - -* [API Docs]({{< ref "tyk-apis/tyk-dashboard-api/api-definitions" >}}) -* [Policy Docs]({{< ref "tyk-apis/tyk-dashboard-api/portal-policies" >}}) - -#### A New, Interactive Getting Started Walkthrough - -We have swapped out the old Getting started tutorial and added a new interactive one, which should make it easier for new users to get started with the Dashboard UI. - -#### Advanced URL Rewrites - -We have extended the URL Rewrite plugin functionality by enabling users to create more advanced rewrite rules based on Header matches, Query string variable/value matches, Path part matches, (i.e. components of the path itself), Session metadata values, and Payload matches. - -[Docs]({{< ref "transform-traffic/url-rewriting" >}}) - -#### Portal Session Lifetime - -You can now control the portal session lifetime using the `portal_session_lifetime` config variable. - -[Docs](https://tyk.io/docs/configure/tyk-dashboard-configuration-options/) - -#### Configure Port for WebSockets - -We have added `notifications_listen_port` option to configure the port used by WebSockets for real-time notifications. - -[Docs]({{< ref "tyk-oss-gateway/configuration" >}}) - -#### Slug - -Once set, the API slug will no longer be overridden when the API title is changed. - -#### Custom Domain - -We have fixed the API URL if a custom domain is set. - - -### Tyk Pump v0.5.0 - -#### Splunk Support - -We added support for forwarding analytics data to Splunk. A sample configuration is: - -``` -"pumps": { - "splunk": { - "name": "splunk", - "meta": { - "collector_token": "", - "collector_url": "https://.cloud.splunk.com: - 8088", - "ssl_insecure_skip_verify": true - } - } -}, -``` - -#### Analytics Collection Capping - -Detailed analytics collection capping is now enabled by default and configurable via the `collection_cap_enable` and `collection_cap_max_size_bytes` options. - - - -### MDCB v1.5.0 - -We've introduced long awaited support for using Tyk Pump in conjunction with MDCB to use any of services supported by Tyk Pump, like ElasticSearch, Splunk and etc. This works by setting `forward_analytics_to_pump` to true, which disables analytics processing by MDCB itself, and enables the forwarding of all data to Tyk Pump running inside your management environment. - - -### TIB v0.3 - -With this release, you now can use any OpenID Connect compatible provider with TIB. This means that you can use almost any Identity management solution, supporting OpenID, like Okta, Ping or Keycloak. - -Use `SocialProvider` with the following options: - -``` -"UseProviders": [{ - "Name": "openid-connect", - "Key": "CLIENT-KEY", - "Secret": "CLIENT-SECRET", - "DiscoverURL": "https:///.well-known/openidconfiguration" -}] -``` - -### Packaging changes across all products - -New deb and rpm packages add the "tyk" user and group so that package files and directories would be owned by it and the process run with its effective uid and gid. In addition to this gateway PID now has to reside in its own sub-rundir due to this change, so that's created (and additionally managed by systemd where it's available), default pidfile location changed appropriately so that upgrade wouldn't require any config changes by the users. The gateway config file is now only readable and writable by the "tyk" user and group. This change is applied across all our products except Gateway: its changes scheduled to 2.6. - -The "default" init system files are not removed on upgrade/remove anymore so that it's now a way for users to run the respective process with custom environment variables. - -The bug with removal of init system files on upgrade in rpm-based systems is now fixed. - - -### Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk](https://tyk.io/docs/upgrading-tyk/). - -### Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6.md deleted file mode 100644 index 0fb00f9a6f..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.6.md +++ /dev/null @@ -1,406 +0,0 @@ ---- -title: Tyk Gateway v2.6 -menu: - main: - parent: "Release Notes" -weight: 13 -aliases: - - /release-notes/version-2.6/ ---- - -## New in this Release: - -### Tyk Gateway v2.6.0 - -#### Organization Level Rate Limiting - -Endpoints Create organization keys and -Add/update organization keys now allow you to set rate limits at an organization level. You will need to add the following fields in your create/add/update key request: - -* `"allowance"` -* `"rate"` - -These are the number of allowed requests for the specified `per` value, and need to be set to the same value. - -* `"per"` is the time period, in seconds. - -So, if you want to restrict an organization rate limit to 100 requests per second you will need to add the following to your request: -``` - "allowance": 100, - "rate": 100, - "per": 5 -``` - -> **NOTE:** if you don't want to have organization level rate limiting, set `"rate"` or `"per"` to zero, or don't add them to your request. - -See the Keys section of the [Tyk Gateway REST API]({{< ref "tyk-gateway-api" >}}) Swagger doc for more details. - -#### Keys hashing improvements - -Now it is possible to do more operations with key by hash (when we set `"hash_keys":` to `true` in `tyk.conf`): - -- endpoints `POST /keys/create`, `POST /keys` and `POST /keys/{keyName}` also return field `"key_hash"` for future use -- endpoint `GET /keys` get all (or per API) key hashes. You can disable this endpoint by using the new `tyk.conf` setting `enable_hashed_keys_listing` (set to false by default) -- endpoint `GET /keys/{keyName}` was modified to be able to get a key by hash. You just need provide the key hash as a `keyName` -and call it with the new optional query parameter `hashed=true`. So the new format is `GET /keys/{keyName}?hashed=true"` -- also, we already have the same optional parameter for endpoint `DELETE /keys/{keyName}?hashed=true` - -#### JSON schema validation - -You can now use Tyk to verify user requests against a specified JSON schema and check that the data sent to your API by a consumer is in the right format. This means you can offload data validation from your application to us. - -If it's not in the right format, then the request will be rejected. And even better, the response will be a meaningful error rather than just a 'computer says no'. - -Schema validation is implemented as for the rest of our plugins, and its configuration should be added to `extended_paths` in the following format: -``` -"validate_json": [{ - "method": "POST", - "path": "me", - "schema": {..schema..}, // JSON object - "error_response_code": 422 // 422 default however can override. -}] -``` - -The schema must be a draft v4 JSON Schema spec, see http://json-schema.org/specification-links.html#draft-4 for details. An example schema can look like this: -``` -{ - "title": "Person", - "type": "object", - "properties": { - "firstName": { - "type": "string" - }, - "lastName": { - "type": "string" - }, - "age": { - "description": "Age in years", - "type": "integer", - "minimum": 0 - } - }, - "required": ["firstName", "lastName"] -} -``` - - -#### New endpoint to get list of tokens generated for provided OAuth-client - -`GET /oauth/clients/{apiID}/{oauthClientId}/tokens` - -This endpoint allows you to retrieve a list of all current tokens and their expiry date issued for a provided API ID and OAuth-client ID in the following format. New endpoint will work only for newly created tokens: -``` -[ - { - "code": "5a7d110be6355b0c071cc339327563cb45174ae387f52f87a80d2496", - "expires": 1518158407 - }, - { - "code": "5a7d110be6355b0c071cc33988884222b0cf436eba7979c6c51d6dbd", - "expires": 1518158594 - }, - { - "code": "5a7d110be6355b0c071cc33990bac8b5261041c5a7d585bff291fec4", - "expires": 1518158638 - }, - { - "code": "5a7d110be6355b0c071cc339a66afe75521f49388065a106ef45af54", - "expires": 1518159792 - } -] -``` - -You can control how long you want to store expired tokens in this list using `oauth_token_expired_retain_period ` which specifies the retain period for expired tokens stored in Redis. The value is in seconds, and the default value is `0`. Using the default value means expired tokens are never removed from Redis. - -#### Creating OAuth clients with access to multiple APIs - -When creating a client using `POST /oauth/clients/create`, the `api_id` is now optional - these changes make the endpoint more generic. If you provide the `api_id` it works the same as in previous releases. If you don't provide the `api_id` the request uses policy access rights and enumerates APIs from their setting in the newly created OAuth-client. - -At the moment this changes not reflected on Dashboard UI yet, as we going to do major OAuth improvements in 2.7 - -#### Certificate public key pinning - -Certificate pinning is a feature which allows you to allow public keys used to generate certificates, so you will be protected in case an upstream certificate is compromised. - -Using Tyk you can allow one or multiple public keys per domain. Wildcard domains are also supported. - -Public keys are stored inside the Tyk certificate storage, so you can use Certificate API to manage them. - -You can define them globally, from the Tyk Gateway configuration file using the `security.pinned_public_keys` option, or via an API definition `pinned_public_keys` field, using the following format: -``` -{ - "example.com": "", - "foo.com": "/path/to/pub.pem", - "*.wild.com": "," -} -``` - -For `key-id` you should set the ID returned after you upload the public key using the Certificate API. Additionally, you can just set path to public key, located on your server. You can specify multiple public keys by separating their IDs by a comma. - -Note that only public keys in PEM format are supported. - -If public keys are not provided by your upstream, you can extract them -by yourself using the following command: -> openssl s_client -connect the.host.name:443 | openssl x509 -pubkey -noout - -If you already have a certificate, and just need to get its public key, you can do it using the following command: -> openssl x509 -pubkey -noout -in cert.pem - -**Note:** Upstream certificates now also have wildcard domain support - -#### JQ transformations (experimental support) - -> This feature is experimental and can be used only if you compile Tyk yourself own using `jq` tag: `go build --tags 'jq'` - -If you work with JSON you are probably aware of the popular `jq` command line JSON processor. For more details, see here https://stedolan.github.io/jq/ - -Now you can use the full power of its queries and transformations to transform requests, responses, headers and even context variables. - -We have added two new plugins: - -* `transform_jq` - for request transforms. -* `transform_jq_response` - for response transforms - -Both have the same structure, similar to the rest of our plugins: -`{ "path": "", "method": "", "filter": "" }` - -#### Request Transforms -Inside a request transform you can use following variables: -* `.body` - your current request body -* `._tyk_context` - Tyk context variables. You can use it to access request headers as well. - -Your JQ request transform should return an object in the following format: -`{ "body": , "rewrite_headers": , "tyk_context": }`. - -`body` is required, while `rewrite_headers` and `tyk_context` are optional. - - -#### Response Transforms -Inside a response transform you can use following variables: -* `.body` - your current response body -* `._tyk_context` - Tyk context variables. You can use it to access request headers as well. -* `._tyk_response_headers` - Access to response headers - -Your JQ response transform should return an object in the following format: -`{ "body": , "rewrite_headers": }`. - -`body` is required, while `rewrite_headers` is optional. - -#### Example -``` -"extended_paths": { - "transform_jq": [{ - "path": "/post", - "method": "POST", - "filter": "{\"body\": (.body + {\"TRANSFORMED-REQUEST-BY-JQ\": true, path: ._tyk_context.path, user_agent: ._tyk_context.headers_User_Agent}), \"rewrite_headers\": {\"X-added-rewrite-headers\": \"test\"}, \"tyk_context\": {\"m2m_origin\": \"CSE3219/C9886\", \"deviceid\": .body.DEVICEID}}" - }], - "transform_jq_response": [{ - "path": "/post", - "method": "POST", - "filter": "{\"body\": (.body + {\"TRANSFORMED-RESPONSE-BY-JQ\": true, \"HEADERS-OF-RESPONSE\": ._tyk_response_headers}), \"rewrite_headers\": {\"JQ-Response-header\": .body.origin}}" - }] -} -``` - - -## Tyk Dashboard v1.6.0 - -#### API categories - -You can apply multiple categories to an API definition, and then filter by these categories on the API list page. - -They might refer to the APIs general focus: 'weather', 'share prices'; geographic location 'APAC', 'EMEA'; or technical markers 'Dev', 'Test'. It's completely up to you. - -From an API perspective, categories are stored inside API definition `name` field like this: "Api name #category1 #category2", e.g. categories just appended to the end of the name. - -Added new API `/api/apis/categories` to return list of all categories and belonging APIs. - -#### Raw API Definition mode - -Now you can directly edit a raw API definition JSON object directly from the API Designer, by selecting either the **Raw API Definition** or the **API Designer** at the top of the API Designer screen. - -{{< img src="/img/dashboard/system-management/raw_or_designer_mode.png" alt="Raw or Designer" >}} - -This feature comes especially handy if you need copy paste parts of one API to another, or if you need to access fields not yet exposed to the Dashboard UI. - -#### Certificate public key pinning - -You can configure certificate pinning on the **Advanced** tab of the API Designer, using a similar method to how you specify upstream client certificates. - -{{< img src="/img/release-notes/certificate_pinning.png" alt="Certificate Pinning" >}} - -#### JSON schema validation - -Reflecting the Tyk Gateway changes, on the Dashboard we have added a new **Validate JSON** plugin, which you can specify per URL, and can set both a schema, and custom error code, if needed. - -#### Improved key hashing support - -The Tyk Dashboard API reflects changes made in the v2.6.0 Gateway API, and now supports more operations with key by hash (when we have set `"hash_keys":` to ` true` in `tyk_analytics.conf`): - -- endpoint `POST /keys/` also returns a new field `key_hash` per each key in the list -- endpoint `GET /apis/{apiId}/keys/{keyId}` supports query string parameter `hashed=true` to get the key info via hash -- endpoint `GET /apis/{apiId}/keys` returns keys hashes -- endpoint `DELETE /apis/{apiId}/keys?hashed=true` can delete a key by its hash, but its functionality is disabled by default, unless you set `enable_delete_key_by_hash` boolean option inside the Dashboard configuration file. - - -#### Key requests management API now supports OAuth - -For this release we've improved our developer portal APIs to fully support an OAuth2.0 based workflow. Developers using your API will now be able to register OAuth clients and manage them. - -This change is not yet supported by our built-in portal, but if you are using custom developer portals, you can start using this new functionality right away. Full UI support for built-in portal will be shipped with our next 2.7 release. - -Developers can request access to an API protected with OAuth and get OAuth client credentials. - -The endpoint `POST /api/portal/requests` now has an optional `"oauth_info"` field which identifies the OAuth key request. - -Example of the OAuth key request: -``` -{ - "by_user": "5a3b2e7798b28f03a4b7b3f0", - "date_created": "2018-01-15T04:49:20.992-04:00", - "for_plan": "5a52dfce1c3b4802c10053c8", - "version": "v2", - "oauth_info": { - "redirect_uri": "http://new1.com,http://new2.com" - } -} -``` - -Where: - -- `"by_user"` - contains the ID of portal developer who is requesting OAuth access -- `"for_plan"` - subscription ID -- `"version"` - is expected to have the value `"v2"` -- `"oauth_info"` - simple structure which contains a field with comma-separated list of redirect URI for OAuth flow - -A new field `"oauth_info"` will be present in replies for endpoints `GET /api/portal/requests/{id}` and `GET /api/portal/requests` - -When this kind of OAuth key request gets approved when using endpoint `PUT /api/portal/requests/approve/{id}` -a new OAuth-client is generated for a developer specified in the specified `"by_user"` field. - -Example of OAuth key request approval reply: -``` -{ - "client_id": "203defa5162b42708c6bcafcfa28c9fb", - "secret": "YjUxZDJjNmYtMzgwMy00YzllLWI2YzctYTUxODQ4ODYwNWQw", - "policy_id": "5a52dfce1c3b4802c10053c8", - "redirect_uri": "http://new1.com,http://new2.com" -} -``` - -Where: - -- `"client_id"` and `"secret"` are OAuth-client credentials used to request the get token (they are to be kept in secret) -- `"policy_id"` - the subscription this OAuth-client provides access to -- `"redirect_uri"` - with comma-separated list of redirect URI for OAuth flow - -Also, if you set email notifications in your portal, an email with the OAuth-client credentials will be sent to the developer -who made that OAuth key request. - -There is also a change in the reply from the `GET /api/portal/developers` endpoint.The developer object will have new field - -`"oauth_clients"` which will contain a mapping of subscription IDs to the list of OAuth clients that the developer requested and -was approved, i.e.: -``` -"oauth_clients": { - "5a52dfce1c3b4802c10053c8": [ - { - "client_id": "203defa5162b42708c6bcafcfa28c9fb", - "redirect_uri": "http://new1.com,http://new2.com", - "secret": "YjUxZDJjNmYtMzgwMy00YzllLWI2YzctYTUxODQ4ODYwNWQw" - } - ] -}, -``` - -#### New endpoints to get tokens per OAuth client - -These endpoints allow you to get a list of all current tokens issued for provided OAuth client ID: - -- `GET /apis/oauth/{apiId}/{oauthClientId}/tokens` -- `GET /apis/oauth/{oauthClientId}/tokens` when the API ID is unknown or OAuth-client provides access to several APIs - - -#### Renamed the response `_id` field to `id` in List Key Requests - -We have renamed the response `_id` field when retrieving a list of key requests to `id`. - -See [List Key Requests]({{< ref "tyk-apis/tyk-dashboard-api/manage-key-requests#list-key-requests" >}}) for more details. - - -#### Developers can request a password reset email - -If a developer forgets their password, they can now request a password reset email from the Developer Portal Login screen. - -{{< img src="/img/dashboard/portal-management/password_request.png" alt="Request email reset" >}} - -See [Developer Profiles]({{< ref "tyk-developer-portal/tyk-portal-classic/developer-profiles#reset-developer-password" >}}) for more details. - -#### SSO API custom email support - -Now you can set email address for users logging though the Dashboard SSO API, by adding an "Email" field to the JSON payload which you sent to `/admin/sso` endpoint. For example: -``` -POST /admin/sso HTTP/1.1 -Host: localhost:3000 -admin-auth: 12345 - -{ - "ForSection": "dashboard", - "Email": "user@example.com", - "OrgID": "588b4f0bb275ff0001cc7471" -} -``` - -#### Set Catalog settings for each individual API - -Now you can override the global catalog settings and specify settings per catalog. -The Catalog object now has `config` field, with exactly same structure as Portal Config, except new `override` boolean field. -If set, Catalog settings will override global ones. - -At the moment the following options can be overriden: `Key request fields`, `Require key approval` and `Redirect on key request` (with `Redirect to` option as well). - -#### {{}}Blocklist{{}} IP Support - -Tyk allows you to block IP Addresses, which is located in the **Advanced Options** tab in the **Endpoint Designer**. - -{{< img src="/img/release-notes/blacklist_option.png" alt="Blocklist Support" >}} - -## Tyk Identity Broker v0.4.0 - -With this release TIB joins the Tyk product line as a first class citizen and is now distributed via packages and [Docker image](https://hub.docker.com/r/tykio/tyk-identity-broker/). - -#### Support for SSO API email field -If IDP provides a user email, it should be passed to the Dashboard SSO API, and you should see it in the Dashboard UI. - -#### Improved support for local IDPs -If you run a local IDP, like Ping, with an untrusted SSL certificate, you can now turn off SSL verification by setting `SSLInsecureSkipVerify` to `true` in the TIB configuration file. - -#### Added Redis TLS support -To enable set `BackEnd.UseSSL` and, optionally, `BackEnd.SSLInsecureSkipVerify`. - -## Tyk Pump v0.5.2 - -#### Redis TLS support -Added new `redis_use_ssl` and `redis_ssl_insecure_skip_verify` options. - - -## Redis TLS support - -Many Redis hosting providers now support TLS and we're pleased to confirm that we do too. - -Whether it's the open source API Gateway, or Dashboard, Pump, Sink and Tyk Identity Broker (TIB): you can now make secure connections to Redis from all Tyk products, as long as your provider allows it. - -## MDCB v1.5.3 - -#### Redis TLS support -Added new `redis_use_ssl` and `redis_ssl_insecure_skip_verify` options. - -## Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk](https://tyk.io/docs/upgrading-tyk/). - -## Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7.md deleted file mode 100644 index e70da44b6d..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.7.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: Tyk Gateway v2.7 -menu: - main: - parent: "Release Notes" -weight: 12 -aliases: - - /release-notes/version-2.7/ ---- - -## New in this Release: - -### Tyk Gateway v2.7.0 - -#### Performance improvements - - -> **TLDR** -> To get benefit or performance improvements ensure that you have `close_connections` set to `false` and set `max_idle_connections_per_host` according to our [production perfomance guide]({{< ref "planning-for-production" >}}) - -We have thoroughly analyzed every part of our Gateway, and the results are astounding, up to 160% improvement, compared to our 2.6 release. - -Such a performance boost comes from various factors, such as optimizing our default configs, better HTTP connection re-use, optimization of the analytics processing pipeline, regexp caching, doing fewer queries to the database, and numerous small changes in each of the middleware we have. - -Our performance testing plan was focused on replicating our customer's setup, and try not to optimize for “benchmarks”: so no supercomputers and no sub-millisecond inner DC latency. Instead, we were testing on average performance 2 CPU Linode machine, with 50ms latency between Tyk and upstream. For testing, we used the Tyk Gateway in Hybrid mode, with a default config, except for a single 2.7 change where `max_idle_connections_per_host ` is set to 500, as apposed to 100 in 2.6. Test runner was using [Locust](https://locust.io/) framework and [Boomer](https://github.com/myzhan/boomer) for load generation. - -For a keyless API we were able to achieve 3.7K RPS (requests per second) for 2.7, while 2.6 showed about 2.5K RPS, which is a 47% improvement. - -For protected APIs, when Tyk needs to track both rate limits and quotas, 2.7 shows around 3.1K RPS, while 2.6 shows around 1.2K RPS, which is 160% improvement! - -In 2.7 we optimized the connection pool between Tyk and upstream, and previously `max_idle_connections_per_host` option was capped to 100. In 2.7 you can set it to any value. `max_idle_connections_per_host` by itself controls an amount of keep-alive connections between clients and Tyk. If you set this value too low, then Tyk will not re-use connections and will have to open a lot of new connections to your upstream. If you set this value too big, you may encounter issues with slow clients occupying your connection and you may reach OS limits. You can calculate the correct value using a straightforward formula: if latency between Tyk and Upstream is around 50ms, then a single connection can handle 1s / 50s = 20 requests. So if you plan to handle 2000 requests per second using Tyk, the size of your connection pool should be at least 2000 / 20 = 100. For example, on low-latency environments (like 5ms), a connection pool of 100 connections will be enough for 20k RPS. - -To get the benefit of optimized connection pooling, ensure that `close_connections` is set to `false`, which enables keep-alive between Tyk and Upstream. - -#### Custom key hashing algorithms - -Key hashing is a security technique introduced inside Tyk a long time ago, which allows you to prevent storing your API tokens in database, and instead, only store their hashes. Only API consumers have access to their API tokens, and API owners have access to the hashes, which gives them access to usage and analytics in a secure manner. Time goes on, algorithms age, and to keep up with the latest security trends, we introduce a way to change algorithms used for key hashing. - -This new feature is in public beta, and turned off by default, keeping old behavior when Tyk uses `murmur32` algorithm. To set the custom algorithm, you need to set `hash_key_function` to one of the following options: -- `murmur32` -- `murmur64` -- `murmur128` -- `sha256` - -MurMur non-cryptographic hash functions is considered as industry fastest and conflict-prone algorithms up to date, which gives a nice balance between security and performance. With this change you now you may choose the different hash length, depending on your organization security policies. As well, we have introduced a new `sha256` **cryptographic** key hashing algorithm, for cases when you are willing to sacrifice performance with additional security. - -Performance wise, setting new key hashing algorithms can increase key hash length, as well as key length itself, so expect that your analytics data size to grow (but not that much, up to 10%). Additionally, if you set the `sha256` algorithm, it will significantly slowdown Tyk, because `cryptographic` functions are slow by design but very secure. - -Technically wise, it is implemented by new key generation algorithms, which now embed additional metadata to the key itself, and if you are curious about the actual implementation details, feel free to check the following [pull request](https://github.com/TykTechnologies/tyk/pull/1753). - -Changing hashing algorithm is entirely backward compatible. All your existing keys will continue working with the old `murmur32` hashing algorithm, and your new keys will use algorithm specified in Tyk config. Moreover, changing algorithms is also backward compatible, and Tyk will maintain keys multiple hashing algorithms without any issues. - - -### Tyk Dashboard v1.7.0 - -#### User Groups - -Instead of setting permissions per user, you can now [create a user group]({{< ref "basic-config-and-security/security/dashboard/create-user-groups" >}}), and assign it to multiple users. It works for Single Sign-On too, just specify group ID during [SSO API]({{< ref "tyk-apis/tyk-dashboard-admin-api/sso" >}}) flow. - -This feature is available to all our Cloud and Hybrid users. For Self-Managed installations, this feature is available for customers with an "Unlimited" license. - -To manage user groups, ensure that you have either admin or “user groups” permission for your user, which can be enabled by your admin. - -From an API standpoint, user groups can be managed by [new Dashboard API]({{< ref "tyk-apis/tyk-dashboard-api/user-groups" >}}). The User object now has a new `group_id` field, and if it is specified, all permissions will be inherited from the specified group. [SSO API]({{< ref "tyk-apis/tyk-dashboard-admin-api/sso" >}}) has been updated to include `group_id` field as well. - -#### Added SMTP support -Now you can configure the Dashboard to send transactional emails using your SMTP provider. See [Outbound Email Configuration]({{< ref "configure/outbound-email-configuration" >}}) for details. - -## Upgrading all new Components - -For details on upgrading all Tyk versions, see [Upgrading Tyk]({{< ref "upgrading-tyk" >}}). - -## Don't Have Tyk Yet? - -Get started now, for free, or contact us with any questions. - -* [Get Started](https://tyk.io/pricing/compare-api-management-platforms/#get-started) -* [Contact Us](https://tyk.io/about/contact/) - - diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8.md deleted file mode 100644 index adee02694c..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.8.md +++ /dev/null @@ -1,246 +0,0 @@ ---- -title: Tyk Gateway v2.8 -menu: - main: - parent: "Release Notes" -weight: 11 -aliases: - - /release-notes/version-2.8/ ---- - -## Looping - -You now can configure complex request pipelines, allowing you to specify different actions for the same path, depending -on defined conditions. - -Visit the [looping section]({{< ref "advanced-configuration/transform-traffic/looping" >}}) for more information. - ---- - -## Debugger - -You can now safely test all API changes without publishing them, and visually see the whole request flow, including which plugins are running and even their individual logs. - -We have added a new `Debugging` tab in the API designer which provides a "Postman" like HTTP client interface to simulate queries for the current API definition being edited. - -You can even debug your virtual endpoints by dynamically modifying the code, sending the request via `Debugger` and watching the virtual endpoint plugin logs. - -See [Debugging Tab]({{< ref "advanced-configuration/transform-traffic/endpoint-designer#debugging" >}}) for more information. - ---- - -## Separate rate limits and quotas per API within the same Policy - -If you set the `Limits and Quotas per API` flag while configuring a policy, you will be able to configure separate rate limits and quotas per API. - -Note that you can’t mix this functionality with -[partitioned policies]({{< ref "basic-config-and-security/security/security-policies/partitioned-policies" >}}). - ---- - -## Developer portal oAuth support - -The Developer portal now fully supports exposing oAuth2 APIs: - -* Developers can register their oAuth clients and see analytics -* Administrators can see list of oAuth clients from a developer screen - ---- - -## Multi-organization users - -NOTE: Currently only available with >2 node Dashboard license. - -You can now create users with the same email address in different organizations. Users will then be able to select an organization -when logging in, and can easily switch between organizations via the navigation menu. To enable set -`"enable_multi_org_users": true`. - ---- - -## Request throttling - -When hitting quota or rate limits, the Gateway now can now automatically queue and auto-retry client requests. Throttling can be configured at a key or policy level via two new fields: `throttle_interval` and `throttle_retry_limit`. - -1. `throttle_interval`: Interval(seconds) between each request retry. -2. `throttle_retry_limit`: Total request retry number. - ---- - -## Password policy improvements - -* `security.user_password_max_days` Set the maximum lifetime of a password in days for a user. - They will be prompted to reset their password if the lifetime exceeds the configured expiry value. - e.g. If the value is set to `30` any user password used over 30 days is considered invalid and must be reset. -* `security.enforce_password_history` Set a maximum number of previous passwords used by a user that cannot be reused. - e.g. If set to `5` the user cannot reuse any of their 5 most recently used passwords. -* `security.force_first_login_pw_reset` A newly created user will be forced to reset their password on their first login. By default this is set to `false`. - ---- - -## Developer management improvements -* You can now manually create developer subscriptions from the developer screen. -* We've added a quick way to change a subscription policy and reset a quota -* All actions on the developer screen now only require developer permissions - ---- - -## Key hashing improvements - -You can now update keys by only having its hash. This is controlled via the `enable_update_key_by_hash` dashboard configuration variable. - - -## Ability to publish keyless APIs to the developer portal - -You can now add open (keyless) APIs to the developer portal. You have the same functionality as for closed APIs, except for key generation, which is disabled. - ---- - -## Dynamic Portal Customization - -Portal templates now have access to the Developer object, its subscriptions, and issued key metadata, providing the ability to conditionally show or hide content inside the Portal based on the attributes below: - -The Current logged in Developer can be accessed using the `.Profile` variable with the following fields: - -* `Id` - Internal developer ID -* `Email` - Developer email -* `OrgID` - Tyk Organization ID -* `Subscriptions` - A map containing subscriptions where the key is a policy ID and the value is an API key -* `Fields` - A map containing custom developer fields -* `OauthClients` - A map containing list of registered oAuth clients, where the key is the policy ID. - -The Current logged in Developer detailed subscription object can be accessed using the `.APIS` variable, containing a map, where the key is a policy ID and the values are in the following format: - -* `APIDescription` - API definition - * `ID` - Internal API id - * `Name` - API name - * More fields: https://github.com/TykTechnologies/tyk/blob/master/apidef/api_definitions.go#L320 -* `APIKey` - API key -* `PolicyData` - Policy object - * `ID` - Internal Policy ID - * `Name` - Policy Name - * More fields: https://github.com/TykTechnologies/tyk/blob/master/user/policy.go#L5 -* `KeyMetaData` - Key metadata of the specified map type - -### Example - -You have different teams of developers, and for each team we want to show them a different list of APIs. -In this case, for each developer, we need to set a custom `Team` field, and add it to a template like this: - -``` -{{if eq .Profile.Fields.Team `internal`}} - … Display internal set of APIs … -{{end}} -{{if eq .Profile.Fields.Team `public`}} - … Display public set of APIs … -{{end}} -``` - -Similar functionality based on Key metadata can look like this: - -``` -{{range $pol, $subscription := .Data.APIS}}}} - {{if eq $subscription.APIDescription.Name `test` }} - {{if eq $subscription.KeyMetaData.Vip `1`}} - …Show extended documentation for users having subscription with `vip` meta tag in token… - {{end}} - {{end}} -{{end}} -``` - ---- - -## Custom analytics storage engines for Multi-Cloud & Enterprise MDCB users - -Multi-Cloud & Enterprise MDCB installations can now leverage the power of the Tyk Pump and send analytics to custom sources like ElasticSearch or InfluxDB from within their local Data Centers. - -This allows you disable sending the Tyk Gateway analytics to the Multi-Cloud / Master layer from the Gateway itself, allowing the Tyk Pump process to take care of it. - -In order to do that, you need to: - -* Install Tyk Pump, with a `hybrid` pump section with the following configuration: - -``` -"hybrid": { - "name": "hybrid", - "meta": { - "rpc_key": ``, - "api_key": ``, - "connection_string": `hybrid.cloud.tyk.io:9091`, - "use_ssl": true, - "ssl_insecure_skip_verify": false, - "group_id": "", - "call_timeout": 30, - "ping_timeout": 60, - "rpc_pool_size": 30 - } -} -``` - -* Enable Tyk Pump in the Tyk Gateway configuration, by changing `analytics_config.type` from `rpc` to an empty value. - -Now you can add additional pumps to the Tyk Pump config. - ---- - -## Plugin bundler CLI tools now built-in to Tyk binary - -Previously you had to use a separate `tyk-cli` binary to build bundles. -The build command remains the same, but instead of using `tyk-cli bundle` you now use `tyk bundle`. - ---- - -## Basic Auth - Extract Credentials from Body - -It is now possible to extract BasicAuth credentials from the request body. This is particularly useful in SOAP requests. - -```text - - - prova1234 - prova1234 - - ... -``` - -You can modify your API definition to let Tyk know how to get the credentials: - -``` -... -"basic_auth": { - "extract_from_body": true, - "body_user_regexp": "(.*)", - "body_password_regexp": "(.*)" -}, -... -``` - ---- - -## Insecure Skip Verify on a per API basis - -Previously, it was possible to get Tyk Gateway to skip TLS verification globally (for ALL apis), but it was not possible to enable this on a per API basis. This meant that it was not previously possible to use self-signed certificates for some APIs, and actual certs for others. - -It is now possible to control which APIs use skip secure verification as follows within the API Definition object: - -`api_definition.proxy.transport.ssl_insecure_skip_verify: bool` - Defaults to `false`. - -Tyk's JSVM `TykMakeHttpRequest` function will also respect the above configuration value. - ---- - -## Detailed changelog - -### Tyk Gateway 2.8.0 -- URL rewrite advanced rules extended with looping support, allowing you to build complex request pipelines. -- Added an Admin Debugger API -- SSL verification now can be disabled at the API level in addition to the global level, using the new `proxy.transport.ssl_insecure_skip_verify` boolean variable. -- You can rename the default `/hello` healthcheck endpoint using the new gateway `health_check_endpoint_name` string variable. -- Basic auth plugin now can extract credentials from the request body -- Bundler CLI tools now built in to the Tyk binary -- Allow updating keys by hash - -### Tyk Pump 0.6 - -- Added `hybrid` pump configuration, allowing Multi-Cloud users to use custom storage engines for analytics. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md deleted file mode 100644 index 8181d7cdfb..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md +++ /dev/null @@ -1,158 +0,0 @@ ---- -title: Tyk Gateway v2.9 -menu: - main: - parent: "Release Notes" -weight: 10 -aliases: - - /release-notes/version-2.9/ ---- - -### TCP Proxying - -Tyk now can be used as a reverse proxy for your TCP services. It means that you can put Tyk not only on top of your APIs, but on top of **any** network application, like databases, services using custom protocols and etc. - -The main benefit of using Tyk as your TCP proxy is that functionality you used to managed your APIs now can be used for your TCP services as well. Features like load balancing, service discovery, Mutual TLS (both authorization and communication with upstream), certificate pinning: all work exactly the same way as for your HTTP APIs. - -See our [TCP Proxy Docs]({{< ref "key-concepts/tcp-proxy" >}}) for more details. - -### APIs as Products - -With this release we have removed all the barriers on how you can mix and match policies together, providing you with ultimate flexibility for configuring your access rules. - -Now a key can have multiple policies, each containing rules for different APIs. In this case each distinct policy will have its own rate limit and quota counters. For example if the first policy gives access to `API1` and second policy to `API2` and `API3`, if you create a key with both policies, your user will have access to all three APIs, where `API1` will have quotas and rate limits defined inside the first policy, and `API2`, `API3` will have shared quotas and rate limits defined inside the second policy. - -Additionally you can now mix policies defined for the same API but having different path and methods access rules. For example you can have one policy which allows only access to `/users` and a second policy giving user access to a `/companies` path. If you create a key with both policies, their access rules will be merged, and user will get access to both paths. See [Multiple APIs for single Key Requests]({{< ref "tyk-developer-portal/tyk-portal-classic/portal-concepts#multiple-apis-for-a-single-key-request" >}}). - -#### Developer Portal Updates - -Developers now can have multiple API keys, and subscribe to multiple catalogs with a single key. Go to the Portal settings and set `Enable subscribing to multiple APIs with single key` option to enable this new flow. When enabled, developers will see the new API generation user interface, which allows users to request access to multiple Catalogs of the **same type** with a single key. - -From an implementation point of view, Developer objects now have a `Keys` attribute, which is the map where the key is a `key` and the value is an array of policy IDs. The `Subscriptions` field can be considered as deprecated, with retained backwards compatibility. We have added new set of Developer APIs to manage the keys, similar to the deprecated subscriptions APIs. - -Other changes: - -- Added two new Portal templates, which are used by a new key request flow `portal/templates/request_multi_key.html`, `portal/templates/request_multi_key_success.html` -- The Portal Catalog list page has been updated to show the Catalog authentication mode -- The API dashboard screen now show keys instead of subscriptions, and if subscribed to multiple policies, it will show the allowance rules for all catalogs. -- The Key request API has been updated to accept an `apply_policies` array instead of `for_plan` - -### JWT and OpenID scope support - -Now you can set granular permissions on per user basis, by injecting permissions to the "scope" claim of a JSON Web Token. To make it work you need to provide mapping between the scope and policy ID, and thanks to enchanced policy merging capabilities mentioned above, Tyk will read the scope value from the JWT and will generate dynamic access rules. Your JWT scopes can look like `"users:read companies:write"` or similar, it is up to your imagination. OpenID supports it as well, but at the moment only if your OIDC provider can generate ID tokens in JWT format (which is very common this days). - -See our [JWT Scope docs]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) for more details. - -### Go plugins - -[Go](https://golang.org/) is an open source programming language that makes it easy to build simple, reliable, and efficient software. The whole Tyk stack is written in Go language, and it is one of the reasons of behind our success. - -With this release you now can write native Go plugins for Tyk. Which means extreme flexibility and the best performance without any overhead. - -Your plugin can be as simple as: - -```{.go} -package main -import ( - "net/http" -) -// AddFooBarHeader adds custom "Foo: Bar" header to the request -func AddFooBarHeader(rw http.ResponseWriter, r *http.Request) { - r.Header.Add("Foo", "Bar") -} -``` - -See our [Golang plugin documentation]({{< ref "plugins/supported-languages/golang" >}}) for more details. - -### Distributed tracing - -We have listened to you, and tracing is recently one of your most common requests. Distributed tracing takes your monitoring and profiling experience to the next level, since you can see the whole request flow, even if it has complex route though multiple services. And inside this flow, you can go deep down into the details like individual middleware execution performance. -At the moment we are offering [OpenTracing](https://opentracing.io/) support, with [Zipkin](https://zipkin.io/) and [Jaeger](https://www.jaegertracing.io/) as supported tracers. - -See our [Distributed Tracing documentation]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview" >}}) for more details. - -### HMAC request signing - -Now Tyk can sign a request with HMAC, before sending to the upsteam target. - -This feature is implemented using [Draft 10](https://tools.ietf.org/html/draft-cavage-http-signatures-10) RFC. - -`(request-target)` and all the headers of the request will be used for generating signature string. -If the request doesn't contain a `Date` header, middleware will add one as it is required according to above draft. - -A new config option `request_signing` can be added in an API Definition to enable/disable the request signing. It has following format: - -```{.json} -"request_signing": { - "is_enabled": true, - "secret": "xxxx", - "key_id": "1", - "algorithm": "hmac-sha256" -} -``` - -The following algorithms are supported: - -1. `hmac-sha1` -2. `hmac-sha256` -3. `hmac-sha384` -4. `hmac-sha512` - -### Simplified Dashboard installation experience - -We worked a lot with our clients to build a way nicer on-boarding experience for Tyk. Instead of using the command line, you can just run the Dashboard, and complete a form which will configure your Dashboard. However, we did not forget about our experienced users too, and now provide a CLI enchanced tool for bootstrapping Tyk via a command line. - -See our updated [Getting Started]({{< ref "tyk-self-managed/install" >}}) section and [new CLI documentation]({{< ref "tyk-on-premises" >}}). - -### DNS Caching - -Added a global DNS cache in order to reduce the number of request to a Gateway's local DNS server and the appropriate gateway config section. This feature is turned off by default. - -``` -"dns_cache": { - "enabled": true, //Turned off by default - "ttl": 60, //Time in seconds before the record will be removed from cache - "multiple_ips_handle_strategy": "pick_first" //A strategy, which will be used when dns query will reply with more than 1 ip address per single host. -}, -``` - -### Python Plugin Improvements - -We have completed a massive rewrite of our Python scripting engine in order to simplify the installation and usage of Python scripts. From now on, you no longer need to use a separate Tyk binary for Python plugins. Everything is now bundled to the main binary. -This also means that you can combine JSVM, Python and Coprocess plugins inside the same installation. -In addition you can now use any Python 3.x version. Tyk will automatically detect a supported version and will load the required libraries. If you have multiple Python versions available, you can specify the exact version using `python_version`. - -### Importing Custom Keys using the Dashboard API - -Previously if you wanted migrate to Tyk and keep existing API keys, you had to use our low level Tyk Gateway API, which has lot of constraints, especially regarding complex setups with multiple organizations and data centers. - -We have introduced a new Dashboard API for importing custom keys, which is as simple as `POST /api/keys/{custom_key} {key-payload}`. This new API ensures that Keys from multiple orgs will not intersect, and it also works for multi-data center setups, and even Tyk SaaS. - -### Single sign on for the Tyk SaaS - -Before SSO was possible only for Tyk On-Premise, since it required access to low-level Dashboard Admin APIs. With 2.9 we have added new a new Dashboard SSO API, which you can use without having super admin access, and it works at the organization level. This means that all our Tyk SaaS users can use 3rd party IDPs to manage Dashboard users and Portal developers. - -> **NOTE**: This feature is available by request. Please contact our sales team for details. - -See our [Dashboard SSO documentation]({{< ref "tyk-apis/tyk-dashboard-api/sso" >}}) for more details. - -### Importing WSDL APIs - -WSDL now is a first class citizen at Tyk. You can take your WSDL definition and simply import to the Dashboard, creating a nice boilerplate for your service. See [Import APIs]({{< ref "getting-started/import-apis" >}}) for more details. - -### Updated Versions - -- Tyk Gateway 2.9.0 -- Tyk Dashboard 1.9.0 -- Tyk Pump 0.8.0 -- Tyk MDCB 1.7.0 - -### Upgrading From Version 2.8 - -#### Tyk On-Premises - -For this release, you should upgrade your Tyk Pump first. - -#### Tyk MDCB - -For this release, you should upgrade your MDCB component first. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md deleted file mode 100644 index 3b83b7dfad..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/overview.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Tyk Gateway Release Notes -description: "Links to Tyk major minor releases for Tyk Gateway" -tags: ["Tyk Gateway Release notes", "Tyk Gateway Releases"] ---- - -This page provides access to release notes for Tyk Gateway. Links to archived releases are also included. - -## Release 5 - -- [v5.7]({{< ref "product-stack/tyk-gateway/release-notes/version-5.7.md" >}}) -- [v5.6]({{< ref "product-stack/tyk-gateway/release-notes/version-5.6.md" >}}) -- [v5.5]({{< ref "product-stack/tyk-gateway/release-notes/version-5.5.md" >}}) -- [v5.4]({{< ref "product-stack/tyk-gateway/release-notes/version-5.4.md" >}}) -- [v5.3]({{< ref "product-stack/tyk-gateway/release-notes/version-5.3.md" >}}) - LTS -- [v5.2]({{< ref "product-stack/tyk-gateway/release-notes/version-5.2.md" >}}) -- [v5.1]({{< ref "product-stack/tyk-gateway/release-notes/version-5.1.md" >}}) -- [v5.0]({{< ref "product-stack/tyk-gateway/release-notes/version-5.0.md" >}}) - -Historic release notes can be previewed by expanding the links in the sections below. - -## Release 4 -
    - - Click to expand - - -- [v4.3]({{< ref "product-stack/tyk-gateway/release-notes/version-4.3.md" >}}) -- [v4.2]({{< ref "product-stack/tyk-gateway/release-notes/version-4.2.md" >}}) -- [v4.1]({{< ref "product-stack/tyk-gateway/release-notes/version-4.1.md" >}}) -- [v4.0]({{< ref "product-stack/tyk-gateway/release-notes/version-4.0.md" >}}) -
    - -## Release 3 -
    - - Click to expand - - -- [v3.2]({{< ref "product-stack/tyk-gateway/release-notes/version-3.2.md" >}}) -- [v3.1]({{< ref "product-stack/tyk-gateway/release-notes/version-3.1.md" >}}) -- [v3.0]({{< ref "product-stack/tyk-gateway/release-notes/version-3.0.md" >}}) -
    - -## Archived Releases - -### Release 2 -
    - - Click to expand - - -- [v2.9]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md" >}}) -- [v2.8]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.8.md" >}}) -- [v2.7]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.7.md" >}}) -- [v2.6]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.6.md" >}}) -- [v2.5]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.5.md" >}}) -- [v2.4]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.4.md" >}}) -
    \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/release-highlights-and-upgrades/.placeholder b/tyk-docs/content/product-stack/tyk-gateway/release-notes/release-highlights-and-upgrades/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.0.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.0.md deleted file mode 100644 index 7fcc9fe689..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.0.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -title: Tyk Gateway v3.0 -description: "Tyk Gateway 3.0 release notes" -tags: ["release notes", "Tyk Gateway", "v3.0", "3.0"] -aliases: - - /release-notes/version-3.0/ ---- - -## Release Highlights - -#### Version changes and LTS releases - -We have bumped our major Tyk Gateway version from 2 to 3, a long overdue change as we’ve been on version 2 for 3 years. We have also changed our Tyk Dashboard major version from 1 to 3, and from now on it will always be aligned with the Tyk Gateway for major and minor releases. The Tyk Pump has also now updated to 1.0, so we can better indicate major changes in future. - -Importantly, such a big change in versions does not mean that we going to break backward compatibility. More-over we are restructuring our internal release strategy to guarantee more stability and to allow us to deliver all Tyk products at a faster pace. We aim to bring more clarity to our users on the stability criteria they can expect, based on the version number. -Additionally we are introducing Long Term Releases (also known as LTS). - -Read more about this changes in our blogpost: https://tyk.io/introducing-long-term-support-some-changes-to-our-release-process-product-versioning/ - - -#### Universal Data Graph and GraphQL - -Tyk now supports GraphQL **natively**. This means Tyk doesn’t have to use any external services or process for any GraphQL middleware. You can securely expose existing GraphQL APIs using our GraphQL core functionality. - -In addition to this you can also use Tyk’s integrated GraphQL engine to build a Universal Data Graph. The Universal Data Graph (UDG) lets you expose existing services as one single combined GraphQL API. - -All this without even have to build your own GraphQL server. If you have existing REST APIs all you have to do is configure the UDG and Tyk has done the work for you. - -With the Universal Data Graph Tyk becomes your central integration point for all your internal as well as external APIs. In addition to this, the UDG benefits from all existing solutions that already come with your Tyk installation. That is, your Data Graph will be secure from the start and there’s a large array of out of the box middlewares you can build on to power your Graph. - -Read more about the [GraphQL]({{< ref "graphql" >}}) and [Universal Data Graph]({{< ref "universal-data-graph" >}}) - -#### Using external secret management services - -Want to reference secrets from a KV store in your API definitions? We now have native Vault & Consul integration. You can even pull from a tyk.conf dictionary or environment variable file. - -[Read more]({{< ref "tyk-configuration-reference/kv-store" >}}) - -#### Co-Process Response Plugins - -We added a new middleware hook allowing middleware to modify the response from the upstream. Using response middleware you can transform, inspect or obfuscate parts of the response body or response headers, or fire an event or webhook based on information received by the upstream service. - -At the moment the Response hook is supported for [Python and gRPC plugins]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-work#coprocess-dispatcher---hooks" >}}). - - -#### Enhanced Gateway health check API - -Now the standard Health Check API response include information about health of the dashboard, redis and mdcb connections. -You can configure notifications or load balancer rules, based on new data. For example, you can be notified if your Tyk Gateway can’t connect to the Dashboard (or even if it was working correctly with the last known configuration). - -[Read More]({{< ref "planning-for-production/ensure-high-availability/health-check" >}}) - -#### Enhanced Detailed logging -Detailed logging is used in a lot of the cases for debugging issues. Now as well as enabling detailed logging globally (which can cause a huge overhead with lots of traffic), you can enable it for a single key, or specific APIs. - -New detailed logging changes are available only to our Self-Managed customers currently. - -[Read More]({{< ref "tyk-stack/tyk-pump/useful-debug-modes" >}}) - -#### Better Redis failover - -Now, if Redis is not available, Tyk will be more gracefully handle this scenario, and instead of simply timing out the Redis connection, will dynamically disable functionality which depends on redis, like rate limits or quotas, and will re-enable it back once Redis is available. The Tyk Gateway can even be started without Redis, which makes possible scenarios, such as when the Gateway proxies Redis though itself, like in a Redis Sentinel setup. - -#### Ability to shard analytics to different data-sinks - -In a multi-org deployment, each organization, team, or environment might have their preferred analytics tooling. At present, when sending analytics to the Tyk Pump, we do not discriminate analytics by org - meaning that we have to send all analytics to the same database - e.g. MongoDB. Now the Tyk Pump can be configured to send analytics for different organizations to different places. E.g. Org A can send their analytics to MongoDB + DataDog. But Org B can send their analytics to DataDog + expose the Prometheus metrics endpoint. - -It also becomes possible to put a {{}}blocklist{{}} in-place, meaning that some data sinks can receive information for all orgs, whereas others will not receive OrgA’s analytics if blocked. - -This change requires updating to new Tyk Pump 1.0 - -[Read More]({{< ref "tyk-pump/configuration" >}}) - -#### 404 Error logging - unmatched paths - -Concerned that client’s are getting a 404 response? Could it be that the API definition or URL rewrites have been misconfigured? Telling Tyk to track 404 logs, will cause the Tyk Gateway to produce error logs showing that a particular resource has not been found. - -The feature can be enabled by setting the config `track_404_logs` to `true` in the gateway's config file. - -## Changelog - -#### Fixes - -- Fixed the bug when tokens created with non empty quota, and quota expiration set to `Never`, were treated as having unlimited quota. Now such tokens will stop working, once initial quota is reached. - -## Updated Versions - -- Tyk Gateway 3.0 -- Tyk Pump 1.0 - -## Upgrading From Version 2.9 - -No specific actions required. -If you are upgrading from version 2.8, pls [read this guide]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md" >}}) diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.1.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.1.md deleted file mode 100644 index 441106cf60..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.1.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -title: Tyk Gateway v3.1 -description: "Tyk Gateway 3.1 release notes" -tags: ["release notes", "Tyk Gateway", "v3.1", "3.1"] -aliases: - - /release-notes/version-3.1/ ---- - -## Release Highlights - -#### Identity Management UX and SAML support -You will notice that the experience for creating a new profile in the Identity management section of the dashboard was changed to a ‘wizard’ approach which reduces the time it takes to get started and configure a profile. -In addition, users are now able to use SAML for the dashboard and portal login, whether you use TIB(Tyk Identity Broker) internally or externally of the dashboard. - -This follows the recent changes that we have made to embed TIB (Tyk Identity Broker)in the dashboard. See 3.0 [release notes](https://tyk.io/docs/release-notes/version-3.0/) for more information regarding this. - -To learn more [see the documentation](https://tyk.io/docs/getting-started/tyk-components/identity-broker/) - -#### UDG (Universal Data Graph) & GraphQL -##### Schema Validation - -For any GraphQL API that is created via Dashboard or through our API, the GraphQL schema is now validated before saving the definition. Instant feedback is returned in case of error. - -##### Sync / Update schema with upstream API (Proxy Only Mode) - -If you’ve configured just a proxy GraphQL API, you can now keep in sync the upstream schema with the one from the API definition, just by clicking on the `Get latest version` button on the `Schema` tab from API Designer - -Docs [here](https://tyk.io/docs/graphql/syncing-schema/) - -##### Debug logs - -You can now see what responses are being returned by the data sources used while configuring a UDG (universal data graph). These can be seen by calling the `/api/debug` API or using the playground tab within API designer. - -The data that will be displayed will show information on the query before and after the request to a data source happens, as follows: - -Before the request is sent: - -Example log message: "Query.countries: preSendHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Fieldname and Upstream url; - - -After the request is sent: - -Example log message: "Query.countries: postReceiveHttpHook executed”. Along with this message, the log entry will contain the following set of fields: Typename, Filename, response body, status code. - -Example: - -```{"typename": "Query", "fielname": "countries", "response_body": "{\"data\":{}}", "status_code": 200}``` - -Docs [here](https://tyk.io/docs/graphql/graphql-playground/) - -#### Portal -##### GraphQL Documentation - -Documentation for the GraphQL APIs that you are exposing to the portal is available now through a GraphQL Playground UI component, same as on the playground tab of API Designer. - -Also to overcome the CORS issues that you might encounter while testing documentation pages on the portal, we have pre-filled the CORS settings section in API Designer with explicit values from the start. All you need to do is to check the “Enable CORS” option. - -##### Portal - API key is hidden in email -You now have the option to hide the API key in the email generated after you approve the key request for a developer. - -[Docs here](https://tyk.io/docs/tyk-developer-portal/key-requests/) - - -## Changelog -The 3.1 version includes the fixes that are part of 3.0.1. -https://github.com/TykTechnologies/tyk/releases/tag/v3.0.1 - - -## Updated Versions - -- Tyk Gateway 3.1 - diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.2.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.2.md deleted file mode 100644 index 0c48eae7a3..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-3.2.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: Tyk Gateway v3.2 -description: "Tyk Gateway 3.2 release notes" -tags: ["release notes", "Tyk Gateway", "v3.2", "3.2"] -aliases: - - /release-notes/version-3.2/ ---- - -## Release Highlights - -#### GraphQL and UDG improvements - -We've updated the GraphQL functionality of our [Universal Data Graph]({{< ref "universal-data-graph" >}}). You’re now able to deeply nest GraphQL & REST APIs and stitch them together in any possible way. - -Queries are now possible via WebSockets and Subscriptions are coming in the next Release (3.3.0). - -You're also able to configure [upstream Headers dynamically]({{< ref "universal-data-graph/udg-getting-started/header-forwarding" >}}), that is, you’re able to inject Headers from the client request into UDG upstream requests. For example, it can be used to acccess protected upstreams. - -We've added an easy to use URL-Builder to make it easier for you to inject object fields into REST API URLs when stitching REST APIs within UDG. - -Query-depth limits can now be configured on a per-field level. - -If you’re using GraphQL upstream services with UDG, you’re now able to forward upstream error objects through UDG so that they can be exposed to the client. - -#### Go response plugins - -With Go response plugins you are now able to modify and create a full request round trip made through the Tyk Gateway. -Find out more about [plugins]({{< ref "plugins" >}}) and how to write [Go response plugins]({{< ref "/product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins#creating-a-custom-response-plugin" >}}). - -## Changelog - -In addition to the above, version 3.2 includes all the fixes that are part of 3.0.5 -https://github.com/TykTechnologies/tyk/releases/tag/v3.0.5 - -## Updated Versions -Tyk Gateway 3.2 - -## Upgrade process -If you already have GraphQL or UDG APIs you need to follow this upgrade guide https://tyk.io/docs/graphql/migration-guide/ diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.0.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.0.md deleted file mode 100644 index 366bd181f6..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.0.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Tyk Gateway v4.0 -description: "Tyk Gateway 4.0 release notes" -tags: ["release notes", "Tyk Gateway", "v4.0", "4.0"] -aliases: - - /release-notes/version-4.0/ ---- - -## Release Highlights - -#### GraphQL federation - -As we know, ease-of-use is an important factor when adopting GraphQL. Modern enterprises have dozens of backend services and need a way to provide a unified interface for querying them. Building a single, monolithic GraphQL server is not the best option. It is hard to maintain and leads to a lot of dependencies and over-complication. - -To remedy this, Tyk 4.0 offers GraphQL federation that allows the division of GraphQL implementation across multiple backend services, while still exposing them all as a single graph for the consumers. Subgraphs represent backend services and define a distinct GraphQL schema. A subgraph can be queried directly, as a separate service or federated in the Tyk Gateway into a larger schema of a supergraph – a composition of several subgraphs that allows execution of a query across multiple services in the backend. - -[Federation docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md" >}}) - -[Subgraphs and Supergraphs docs]({{< ref "/content/getting-started/key-concepts/graphql-federation.md#subgraphs-and-supergraphs" >}}) - -#### GraphQL subscriptions - -Subscriptions are a way to push data from the server to the clients that choose to listen to real-time messages from the server, using the WebSocket protocol. There is no need to enable subscriptions separately; Tyk supports them alongside GraphQL as standard. - -With release 4.0, users can federate GraphQL APIs that support subscriptions. Federating subscriptions means that events pushed to consumers can be enriched with information from other federated graphs. - -[Subscriptions docs]({{< ref "/content/getting-started/key-concepts/graphql-subscriptions.md" >}}) - -## Changelog - -- Now it is possible to configure GraphQL upstream authentification, in order for Tyk to work with its schema -- JWT scopes now support array and comma delimeters -- Go plugins can be attached on per-endpoint level, similar to virtual endpoints - -## Updated Versions - -Tyk Gateway 4.0 -Tyk Pump 1.5 - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.1.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.1.md deleted file mode 100644 index 4b7f2e89a2..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.1.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Tyk Gateway v4.1 -description: "Tyk Gateway 4.1 release notes" -tags: ["release notes", "Tyk Gateway", "v4.1", "4.1"] -aliases: - - /release-notes/version-4.1/ ---- - -## Release Highlights - -#### OpenAPI as a native API definition format -Tyk has always had a proprietary specification for defining APIs. From Tyk v4.1 we now support defining APIs using the Open API Specification (OAS) as well, which can offer significant time and complexity savings. [This is an early access capability]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}). - -As we extend our OAS support, we would very much like your feedback on how we can extend and update to best meet your needs: . - -This capability is available in both the open source and paid versions of Tyk. See our [High Level Concepts]({{< ref "getting-started/key-concepts/high-level-concepts" >}}) for more details, or jump to [OAS Getting Started documentation]({{< ref "getting-started/using-oas-definitions/create-an-oas-api" >}}). - - -#### MDCB Synchroniser - -Tyk Gateway v4.1 enables an improved synchroniser functionality within Multi Data Center Bridge (MDCB) v2.0. Prior to this release, the API keys, certificates and OAuth clients required by worker Gateways were synchronised from the controller Gateway on-demand. With Gateway v4.1 and MDCB v2.0 we introduce proactive synchronisation of these resources to the worker Gateways when they start up. - -This change improves resilience in case the MDCB link or controller Gateway is unavailable, because the worker Gateways can continue to operate independently using the resources stored locally. There is also a performance improvement, with the worker Gateways not having to retrieve resources from the controller Gateway when an API is first called. - -Changes to keys, certificates and OAuth clients are still synchronised to the worker Gateways from the controller when there are changes and following any failure in the MDCB link. - -#### Go Plugin Loader -When upgrading your Tyk Installation you need to re-compile your plugin with the new version. At the moment of loading a plugin, the Gateway will try to find a plugin with the name provided in the API definition. If none is found then it will fallback to search the plugin file with the name: `{plugin-name}_{Gw-version}_{OS}_{arch}.so` - -From v4.1.0 the plugin compiler automatically names plugins with the above naming convention. It enables you to have one directory with different versions of the same plugin. For example: - -- `plugin_v4.1.0_linux_amd64.so` -- `plugin_v4.2.0_linux_amd64.so` - -So, if you upgrade from Tyk v4.1.0 to v4.2.0 you only need to have the plugins compiled for v4.2.0 before performing the upgrade. - -## Changelog - -#### Tyk Gateway -##### Added -- Added support for new OAS API definition format -- Added support for headers on subgraph level for federated GraphQL APIs -- Added support for interfaces implementing interfaces in GQL schema editor -- Added support for passing authorization header in GQL API Playgrounds for subscription APIs -- Added TYK_GW_OMITCONFIGFILE option for Tyk Gateway to ignore the values in the config file and load its configuration only from environment variables and default values -- Added a way to modify Tyk analytics record via Go plugins [configurable with API definition](https://tyk.io/docs/plugins/analytics-plugins/). Can be used to sanitise analytics data. -- Added new policy API REST endpoints -- Added option to configure certificates for Tyk Gateway using [environment variable](https://tyk.io/docs/tyk-oss-gateway/configuration/#http_server_optionscertificates) -- Added support for Python 3.9 plugins -- Added support for headers on subgraph level for federated GraphQL APIs -- Added support for introspecting schemas with interfaces implementing interfaces for proxy only GQL -- Added support for input coercion in lists for GraphQL -- Added support for repeatable directives for GraphQL -##### Changed -- Generate API ID when API ID is not provided while creating API. -- Updated the Go plugin loader to load the most appropriate plugin bundle, honoring Tyk version, architecture and OS -- When a GraphQL query with a @skip directive is sent to the upstream it will no longer return “null” for the skipped field, but remove the field completely from the response -##### Fixed -- Fixed a bug where the MDCB worker Gateway could become unresponsive when a certificate is added in the Tyk Dashboard -- Fixed an issue with the calculation of TTL for keys in an MDCB deployment such that TTL could be different between worker and controller Gateways -- Fixed a bug when using Open ID where quota was not tracked correctly -- Fixed multiple issues with schema merging in GraphQL federation. Federation subgraphs with the same name shared types like objects, interfaces, inputs, enums, unions and scalars will no longer cause errors when users are merging schemas into a federated supergraph. -- Fixed an issue where schema merging in GraphQL federation could fail depending on the order or resolving subgraph schemas and only first instance of a type and its extension would be valid. Subgraphs are now individually normalized before a merge is attempted and all extensions that are possible in the federated schema are applied. -- Fixed an issue with accessing child properties of an object query variable for GraphQL where query {{.arguments.arg.foo}} would return "{ "foo":"123456" }" instead of "123456" - -## Updated Versions -Tyk Gateway 4.1 -Tyk MDCB 2.0.1 - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.2.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.2.md deleted file mode 100644 index e4a833753f..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.2.md +++ /dev/null @@ -1,136 +0,0 @@ ---- -title: Tyk Gateway v4.2 -description: "Tyk Gateway 4.2 release notes" -tags: ["release notes", "Tyk Gateway", "v4.2", "4.2"] -aliases: - - /release-notes/version-4.2/ ---- - -## Release Highlights - -#### GraphQL Federation improvements - -##### Changed GUI in Universal Data Graph configuration section. - -A new GUI introduces enhancements to the user experience and more consistent user journey for UDG. -This change does not yet cover all possible use cases and is released with a feature flag. To enable the new GUI, analytics.conf needs the following setting: - -``` -"ui": { - "dev": true -} -``` - -What’s possible with this change: -- Importing GraphQL schema created outside of Tyk (formats accepted .json, .graphql, .grahqls) -- Creating GraphQL schema in Tyk using schema editor -- Hide/Unhide schema editor to focus on graphical representation of the schema -- Resizing schema editor to adjust workspace look & feel to user preferences -- Improved search in schema editor (search and search & replace available) -- Quick link to UDG documentation from schema editor - -> Note: Full configuration of new Universal Data Graph is not yet possible in the GUI, however any UDGs created earlier will not be broken and will work as previously. - -#### Changes to federation entities -##### Defining the base entity -Entities must be defined with the `@key` directive. The fields argument must reference a field by which the entity can be uniquely identified. Multiple primary keys are possible. For example: - -Subgraph 1 (base entity): -``` -type MyEntity @key(fields: "id") @key(fields: "name") { - id: ID! - name: String! -} -``` - Attempting to extend a non-entity with an extension that includes the @key directive or attempting to extend a base entity with an extension that does not include the @key directive will both result in errors. - -##### Entity stubs - -Entities cannot be shared types (be defined in more than one single subgraph). -If one subgraph references a base entity (an entity defined in another subgraph), that reference must be declared as a stub (stubs look like an extension without any new fields in federation v1). This stub would contain the minimal amount of information to identify the entity (referencing exactly one of the primary keys on the base entity regardless of whether there are multiple primary keys on the base entity). For example, a stub for MyEntity from Subgraph 1 (defined above): - -Subgraph 2 (stub) -``` -extend type MyEntity @key(fields: "id") { - id: ID! @external -} -``` - -##### Supergraph extension orphans -It is now possible to define an extension for a type in a subgraph that does not define the base type. -However, if an extension is unresolved (an extension orphan) after an attempted federation, the federation will fail and produce an error. - -##### Improved Dashboard UI and error messages -GraphQL-related (for example when federating subgraphs into a supergraph) errors in the Dashboard UI will show a lean error message with no irrelevant prefixes or suffixes. - -Changed the look & feel of request logs in Playground tab for GraphQL APIs. New component presents all logs in a clearer way and is easier to read for the user - -##### Shared types -Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is identical. -Shared types cannot be extended outside of the current subgraph, and the resolved extension must be identical to the resolved extension of the shared type in all other subgraphs (see subgraph normalization notes). Attempting to extend a shared type will result in an error. -The federated supergraph will include a single definition of a shared type, regardless of how many times it has been identically defined in its subgraphs. - -##### Subgraph normalization before federation -Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. A valid example involving a shared type: - -Subgraph 1: -``` -enum Example { - A, - B -} - -extend enum Example { - C -} -``` - -Subgraph 2: -``` -enum Example { - A, - B, - C -} -``` - -The enum named “Example” defined in Subgraph 1 would resolve to be identical to the same-named enum defined in Subgraph 2 before federation takes place. The resulting supergraph would include a single definition of this enum. - -##### Validation -Union members must be both unique and defined. -Types must have bodies, e.g., enums must contain at least one value; inputs, interfaces, or objects must contain at least one field - -#### OpenAPI -Added support for the Request Body Transform middleware, for new Tyk OAS API Definitions. - -#### Universal Data Graph - -Added support for Kafka as a data source in Universal Data Graph. Configuration allows the user to provide multiple topics and broker addresses. - -## Changelog - -#### Tyk Gateway -##### Added -- Added support for Kafka as a data source in Universal Data Graph. -- Adding a way to defining the base GraphQL entity via @key directive -- It is now possible to define an extension for a type in a subgraph that does not define the base type. -- Added support for the Request Body Transform middleware, for the new Tyk OAS API Definition -- Session lifetime now can be controled by Key expiration, e.g. key removed when it is expired. Enabled by setting `session_lifetime_respects_key_expiration` to `true` -##### Changed -- Generate API ID when API ID is not provided while creating API. -- Updated the Go plugin loader to load the most appropriate plugin bundle, honoring the Tyk version, architecture and OS -- When GraphQL query with a @skip directive is sent to the upstream it will no longer return “null” for the skipped field, but remove the field completely from the response -- Added validation to Union members - must be both unique and defined. -##### Fixed -- Fixed an issue where the Gateway would not create the circuit breaker events (BreakerTripped and BreakerReset) for which the Tyk Dashboard offers webhooks. -- Types of the same name can be defined in more than one subgraph (a shared type). This will no longer produce an error if each definition is exactly identical. -- Apply Federation Subgraph normalization do avoid merge errors. Extensions of types whose base type is defined in the same subgraph will be resolved before an attempt at federation. - -## Updated Versions -Tyk Gateway 4.2 - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "/content/upgrading-tyk.md" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "/content/planning-for-production/database-settings/postgresql.md#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.3.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.3.md deleted file mode 100644 index d5c6918fa7..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-4.3.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: Tyk Gateway v4.3 -description: "Tyk Gateway 4.3 release notes" -tags: ["release notes", "Tyk Gateway", "v4.3"] -aliases: - - /release-notes/version-4.3/ ---- - -## Release Highlights - -#### Mock Responses with Tyk OAS API Definitions - -Does your Tyk OAS API Definition define examples or a schema for your path responses? If so, starting with Tyk v4.3, Tyk can use those configurations to mock your API responses, enabling your teams to integrate easily without being immediately dependent on each other. Check it out! [Mock Responses Documentation]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}) - -#### External OAuth - 3rd party OAuth IDP integration - -If you’re using a 3rd party IDP to generate tokens for your OAuth applications, Tyk can now validate the generated tokens by either performing JWT validation or by communicating with the authorization server and executing token introspection. - -This can be achieved by configuring the new External OAuth authentication mechanism. Find out more here [External OAuth Integration]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) - -#### Updated the Tyk Gateway version of Golang, to 1.16. - -**Our Gateway is using Golang 1.16 version starting with 4.3 release. This version of the Golang release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** - -The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. - -Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. - -#### Improved GQL security - -4.3 adds two important features that improve security settings for GraphQL APIs in Tyk. - -1. Ability to turn on/off introspection - this feature allows much more control over what consumers are able to do when interacting with a GraphQL API. In cases where introspection is not desirable, API managers can now disallow it. The setting is done on API key level, which means API providers will have very granular control over who can and who cannot introspect the API. -2. Support for allow list in field-based permissions - so far Tyk was offering field-based permissions as a “block list” only. That meant that any new field/query added to a graph was by default accessible for all consumers until API manager explicitly blocked it on key/policy level. Adding support for “allow list” gives APi managers much more control over changing schemas and reduces the risk of unintentionally exposing part of the graph that are not ready for usage. See [Introspection]({{< ref "graphql/introspection" >}}) for more details. - - -## Changelog - -#### Tyk Gateway - -##### Added -- Minor modifications to the Gateway needed for enabling support for Graph Mongo Pump. -- Added header `X-Tyk-Sub-Request-Id` to each request dispatched by federated supergraph and Universal Data Graph, so that those requests can be distinguished from requests directly sent by consumers. -- Added a functionality that allows to block introspection for any GraphQL API, federated supergraph and Universal Data Graph (currently only supported via Gateway, UI support coming in the next release). -- Added an option to use allow list in field-based permissions. Implemented for full types and individual fields. (currently only supported via Gateway, UI support coming in the next release) -- Added new middleware that can be used with HTTP APIs to set up persisted queries for GraphQL upstreams. -- Added support for two additional subscription protocols for GraphQL subscriptions. Default protocol used between the gateway and upstream remains to be `graphql-ws`, two additional protocols are possible to configure and use: `graphql-transport-ws` and `SSE`. - -##### Changed - -Updated the Tyk Gateway version of Golang, to 1.16. - -**SECURITY: The release deprecates x509 commonName certificates usage. This will be the last release where it's still possible to use commonName, users need to explicitly re-enable it with an environment variable.** - -The deprecated, legacy behavior of treating the CommonName field on X.509 certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable. - -Note that if the CommonName is an invalid host name, it's always ignored, regardless of GODEBUG settings. Invalid names include those with any characters other than letters, digits, hyphens and underscores, and those with empty labels or trailing dots. - -##### Fixed - -- Fixed an issue where introspection query was returning a wrong response in cases where introspection query had additional objects. -- Fixed an issue where gateway was crashing when a subscription was started while no datasource was connected to it. -- Fixed a problem with missing configuration in the GraphQL config adapter that caused issues with batching requests to subgraphs in GraphQL API federation setting. -- A HTTP OAS API version lifetime respects now the date value of the expiration field from Tyk OAS API Definition. -- Now it is possible to proxy traffic from a HTTP API (using Tyk Classic API Definition) to a HTTP OAS API (using Tyk OAS API Definition) and vice versa. - - -## Updated Versions - -Tyk Gateway 4.3 ([docker images](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=1&name=4.3.0) - -## Upgrade process - -Follow the [standard upgrade guide]({{< ref "upgrading-tyk" >}}), there are no breaking changes in this release. - -If you want switch from MongoDB to SQL, you can [use our migration tool]({{< ref "planning-for-production/database-settings/postgresql#migrating-from-an-existing-mongodb-instance" >}}), but keep in mind that it does not yet support the migration of your analytics data. - -{{< note success >}} -**Note** - -Note: Upgrading the Golang version implies that all the Golang custom plugins that you are using need to be recompiled before migrating to 4.3 version of the Gateway. Check our docs for more details [Golang Plugins]({{< ref "/content/plugins/supported-languages/golang.md" >}}). -{{< /note >}} diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.0.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.0.md deleted file mode 100644 index 67a022e3d7..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.0.md +++ /dev/null @@ -1,459 +0,0 @@ ---- -title: Tyk Gateway 5.0 Release Notes -description: Tyk Gateway v5.0 release notes -tags: - [ - "release notes", - "Tyk Gateway", - "v5.0", - "5.0", - "5.0.0", - "5.0.1", - "5.0.1", - "5.0.2", - "5.0.3", - "5.0.4", - "5.0.5", - "5.0.6", - "5.0.7", - "5.0.8", - "5.0.9", - "5.0.10", - "5.0.11", - "5.0.13", - "5.0.14", - ] -aliases: - - /release-notes/version-5.0/ ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.0.X displayed in reverse chronological order** - ---- - -## 5.0.15 Release Notes {#rn-v5.0.15} - -### Release Date 24 October 2024 - -### Breaking Changes - -There are no breaking changes in this release. - -### Upgrade Instructions - -Go to the [Upgrading Tyk](https://tyk.io/docs/product-stack/tyk-gateway/release-notes/version-5.0/#upgrading-tyk) -section for detailed upgrade instructions. - -### Release Highlights - -This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data -plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.0.15 to -avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.0.15">}}) below. - -### Changelog {#Changelog-v5.0.15} - -#### Fixed - -
      -
    • -
      -Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud -In version 5.0.14, Tyk Gateway could encounter panic when attempting to reconnect to the control plane after it was restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control plane following reconnections and reducing the need for manual intervention. -
      -
    • -
    - ---- - -## 5.0.14 Release Notes {#rn-v5.0.14} - -### Release Date 18th September 2024 - -{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when -reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk -Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    - -

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. -

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    -Recommendations:
    -

      -
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      -We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. - -
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      -Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      -
    -

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. -{{< /note >}} - -### Breaking Changes - -**Attention:** Please read this section carefully. - -There are no breaking changes in this release. - -### Upgrade Instructions - -This release is not tightly coupled with Tyk Dashboard v5.0.14, so you do not have to upgrade both together. - -Go to the [Upgrading Tyk](https://tyk.io/docs/product-stack/tyk-gateway/release-notes/version-5.0/#upgrading-tyk) -section for detailed upgrade instructions. - -### Release Highlights - -This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway -configuration options to control path matching strictness. - -### Changelog {#Changelog-v5.0.14} - -#### Added - -

      -
    • -
      -Implemented Gateway configuration options to set URL path matching strictness - -We have introduced two new options in the `http_server_options` [Gateway -configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching -when Tyk performs checks on whether middleware or other logic should be applied to a request: - -- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API - definition -- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API - definition -- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is - performed - -These configuration options provide control to avoid unintended matching of paths from Tyk's default _wildcard_ match. -Use of regex special characters when declaring the endpoint path in the API definition will automatically override these -settings for that endpoint. - -**Tyk recommends that exact matching is employed, but both options default to `false` to avoid introducing a breaking -change for existing users.** - -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Incorrectly configured regex in policy affected Path-Based Permissions authorization - -Fixed an issue when using granular [Path-Based -Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization -incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue -where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly -handles both of these scenarios granting access only to the expected resources. - -
      -
    • -
    • -
      -Missing path parameter can direct to the wrong endpoint - -Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits -the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to -`/user/{id}`. - -
      -
    • - -
    • -
      -Improved Gateway Synchronization with MDCB for Policies and APIs - -We have enhanced the Tyk Gateway's synchronization with MDCB to ensure more reliable loading of policies and APIs. A -synchronous initialization process has been implemented to prevent startup failures and reduce the risk of service -disruptions caused by asynchronous operations. This update ensures smoother and more consistent syncing of policies and -APIs from MDCB. - -
      -
    • -
    - ---- - -## 5.0.13 Release Notes - -### Release Date 4 July 2024 - -### Release Highlights - -Resolved an issue encountered in MDCB environments where changes to custom keys made via the Dashboard were not properly -replicated to dataplanes. The issue impacted both key data and associated quotas, in the following versions: - -- 5.0.4 to 5.0.12 -- 5.1.1 and 5.1.2 -- 5.2.0 to 5.2.6 -- 5.3.0 to 5.3.2 - -##### Action Required - -Customers should clear their edge Redis instances of any potentially affected keys to maintain data consistency and -ensure proper synchronization across their environments. Please refer to the item in the [fixed](#fixed) section of the -changelog for recommended actions. - -### Changelog {#Changelog-v5.0.13} - -#### Fixed - -
      -
    • -
      -Resolved an issue where changes to custom keys were not properly replicated to dataplanes - -Resolved a critical issue affecting MDCB environments, where changes to custom keys made via the dashboard were not -properly replicated to dataplanes. This affected both the key data and associated quotas. This issue was present in -versions: - -- 5.0.4 to 5.0.12 -- 5.1.1 and 5.1.2 -- 5.2.0 to 5.2.6 -- 5.3.0 to 5.3.2 - -**Action Required** - -Customers are advised to clear their edge Redis instances of any keys that might have been affected by this bug to -ensure data consistency and proper synchronization across their environments. There are several methods available to -address this issue: - -1. **Specific Key Deletion via API**: To remove individual buggy keys, you can use the following API call: - -```bash -curl --location --request DELETE 'http://tyk-gateway:{tyk-hybrid-port}/tyk/keys/my-custom-key' \ --header 'X-Tyk-Authorization: {dashboard-key}' -``` - -Replace `{tyk-hybrid-port}`, `my-custom-key` and `{dashboard-key}` with your specific configuration details. This method -is safe and recommended for targeted removals without affecting other keys. - -2. **Bulk Key Deletion Using Redis CLI**: For environments with numerous affected keys, you might consider using the - Redis CLI to remove keys en masse: - -```bash -redis-cli --scan --pattern 'apikey-*' | xargs -L 1 redis-cli del -redis-cli --scan --pattern 'quota-*' | xargs -L 1 redis-cli del -``` - -This method can temporarily impact the performance of the Redis server, so it should be executed during a maintenance -window or when the impact on production traffic is minimal. - -3. **Complete Redis Database Flush**: If feasible, flushing the entire Redis database offers a clean slate: - -```bash -redis-cli FLUSHALL ASYNC -``` - -**Implications** Regardless of the chosen method, be aware that quotas will be reset and will need to resynchronize -across the system. This may temporarily affect reporting and rate limiting capabilities. - -
      -
    • -
    - ---- - -## 5.0.12 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.12). - ---- - -## 5.0.11 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.11). - ---- - -## 5.0.10 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.10). - ---- - -## 5.0.9 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.9). - ---- - -## 5.0.8 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.8). - ---- - -## 5.0.7 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.7). - ---- - -## 5.0.6 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.6). - ---- - -## 5.0.5 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.5). - ---- - -## 5.0.4 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.4). - ---- - -## 5.0.3 Release Notes - -Please refer to our GitHub [release notes](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.3). - ---- - -## 5.0.2 Release Notes - -##### Release Date 29 May 2023 - -#### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.0.2">}}) below. - -#### Downloads - -- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.2/images/sha256-5e126d64571989f9e4b746544cf7a4a53add036a68fe0df4502f1e62f29627a7?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.2) - -#### Changelog {#Changelog-v5.0.2} - -##### Updated - -- Internal refactoring to make storage related parts more stable and less affected by potential race issues - ---- - -## 5.0.1 Release Notes - -##### Release Date 25 Apr 2023 - -#### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.0.1">}}) below. - -#### Downloads - -- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.1/images/sha256-5fa7aa910d62a7ed2c1cfbc68c69a988b4b0e9420d7a52018f80f9a45cadb083?context=explore -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.1) - -#### Changelog {#Changelog-v5.0.1} - -##### Added - -- Added a new `enable_distributed_tracing` option to the NewRelic config to enable support for Distributed Tracer - -##### Fixed - -- Fixed panic when JWK method was used for JWT authentication and the token didn't include kid -- Fixed an issue where failure to load GoPlugin middleware didn’t prevent the API from proxying traffic to the upstream: - now Gateway logs an error when the plugin fails to load (during API creation/update) and responds with HTTP 500 if the - API is called; at the moment this is fixed only for file based plugins -- Fixed MutualTLS issue causing leak of allowed CAs during TLS handshake when there are multiple mTLS APIs -- Fixed a bug during hot reload of Tyk Gateway where APIs with JSVM plugins stored in filesystem were not reloaded -- Fixed a bug where the gateway would remove the trailing `/`at the end of a URL -- Fixed a bug where nested field-mappings in UDG weren't working as intended -- Fixed a bug when using Tyk OAuth 2.0 flow on Tyk Cloud where a request for an Authorization Code would fail with a 404 - error -- Fixed a bug where mTLS negotiation could fail when there are a large number of certificates and CAs; added an option - (`http_server_options.skip_client_ca_announcement`) to use the alternative method for certificate transfer -- Fixed CVE issue with go.uuid package -- Fixed a bug where rate limits were not correctly applied when policies are partitioned to separate access rights and - rate limits into different scopes - ---- - -## 5.0.0 Release Notes - -##### Release Date 28 Mar 2023 - -#### Deprecations - -- Tyk Gateway no longer natively supports **LetsEncrypt** integration. You still can use LetsEncrypt CLI tooling to - generate certificates and use them with Tyk. - -#### Release Highlights - -##### Improved OpenAPI support - -We have added some great features to the Tyk OAS API definition bringing it closer to parity with our Tyk Classic API -and to make it easier to get on board with Tyk using your Open API workflows. - -Tyk’s OSS users can now make use of extensive [custom middleware](https://tyk.io/docs/plugins/) options with your OAS -APIs, to transform API requests and responses, exposing your upstream services in the way that suits your users and -internal API governance rules. We’ve enhanced the Request Validation for Tyk OAS APIs to include parameter validation -(path, query, headers, cookie) as well as the body validation that was introduced in Tyk 4.1. - -[Versioning your Tyk OAS APIs]({{< ref "getting-started/key-concepts/oas-versioning" >}}) is easier than ever, with the -Tyk OSS Gateway now looking after the maintenance of the list of versions associated with the base API for you; we’ve -also added a new endpoint on the Tyk API that will return details of the versions for a given API. - -We’ve improved support for [OAS -Mock Responses]({{< ref "product-stack/tyk-gateway/middleware/mock-response-middleware" >}}), with the Tyk OAS API -definition now allowing you to register multiple Mock Responses in a single API, providing you with increased testing -flexibility. - -Of course, we’ve also addressed some bugs and usability issues as part of our ongoing ambition to make Tyk OAS API the -best way for you to create and manage your APIs. - -Thanks to our community contributors [armujahid](https://github.com/armujahid), -[JordyBottelier](https://github.com/JordyBottelier) and [ls-michal-dabrowski](https://github.com/ls-michal-dabrowski) -for your PRs that further improve the quality of Tyk OSS Gateway! - -#### Downloads - -- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.0.0/images/sha256-196815adff2805ccc14c267b14032f23913321b24ea86c052b62a7b1568b6725?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.0.0) - -#### Changelog {#Changelog-v5.0.0} - -##### Added - -- Support for request validation (including query params, headers and the rest of OAS rules) with Tyk OAS APIs -- Transform request/response middleware for Tyk OAS APIs -- Custom middleware for Tyk OAS APIs -- Added a new API endpoint to manage versions for Tyk OAS APIs -- Improved Mock API plugin for Tyk OAS APIs -- Universal Data Graph and GraphQL APIs now support using context variables in request headers, allowing passing - information it to your subgraphs -- Now you can control access to introspection on policy and key level - -#### Fixed - -- Fixed potential race condition when using distributed rate limiter - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-374cc3d0-f16d-4620-a435-68c53553ca40) - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating -to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.1.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.1.md deleted file mode 100644 index 71911a5b5b..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.1.md +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: Tyk Gateway 5.1 Release Notes -description: "Release notes 5.1 for Tyk Gateway" -tags: ["Release notes", "Gateway", "5.1"] -aliases: - - /release-notes/version-5.1/ ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -### Support Lifetime -Minor releases are supported until our next minor comes out in Q3. - ---- - -## 5.1 Release Notes - -##### Release Date 23 June 2023 - -#### Breaking Changes - -**Attention warning*: Please read carefully this section. - -##### Golang Version upgrade -Our Gateway is using [Golang 1.19](https://tip.golang.org/doc/go1.19) programming language starting with the 5.1 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. Don’t forget that, if you’re using GoPlugins, you'll need to [recompile]({{< ref "plugins/supported-languages/golang#upgrading-your-tyk-gateway" >}}) these to maintain compatibility with the latest Gateway. - -##### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backward-compatible. Downgrading to a previous version after upgrading may result in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade Instructions -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -#### Release Highlights - -##### Request Body Size Limits - -We have introduced a new Gateway-level option to limit the size of requests made -to your APIs. You can use this as a first line of defense against overly large -requests that might affect your Tyk Gateways or upstream services. Of course, -being Tyk, we also provide the flexibility to configure API-level and -per-endpoint size limits so you can be as granular as you need to protect and -optimize your services. Check out our improved documentation for full -description of how to use these powerful [features]({{< ref "basic-config-and-security/control-limit-traffic/request-size-limits" >}}). - -##### Changed default RPC pool size for MDCB deployments - -We have reduced the default RPC pool size from 20 to 5. This can reduce the CPU and -memory footprint in high throughput scenarios. Please monitor the CPU and memory -allocation of your environment and adjust accordingly. You can change the pool -size using [slave_options.rpc_pool_size]({{< ref "tyk-oss-gateway/configuration#slave_optionsrpc_pool_size" >}}) - -#### Downloads - -- [docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.1/images/sha256-3d1e64722be1a983d4bc4be9321ca1cdad10af9bb3662fd6824901d5f22820f1?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.1.0) - - -#### Changelog - -##### Added - -- Added `HasOperation`, `Operation` and `Variables` to GraphQL data source API definition for easier nesting -- Added abstractions/interfaces for ExecutionEngineV2 and ExecutionEngine2Executor with respect to graphql-go-tools -- Added support for the `:authority` header when making GRPC requests. If the `:authority` header is not present then some GRPC servers return PROTOCOL_ERROR which prevents custom GRPC plugins from running. Thanks to [vanhtuan0409](https://github.com/vanhtuan0409) from the Tyk Community for his contribution! - -##### Changed - -- Tyk Gateway updated to use Go 1.19 -- Updated [_kin-openapi_](https://github.com/getkin/kin-openapi) dependency to the version [v0.114.0](https://github.com/getkin/kin-openapi/releases/tag/v0.114.0) -- Enhanced the UDG parser to comprehensively extract all necessary information for UDG configuration when users import to Tyk their OpenAPI document as an API definition -- Reduced default CPU and memory footprint by changing the default RPC pool size from 20 to 5 connections. - -##### Fixed - -- Fixed an issue where invalid IP addresses could be added to the IP allow list -- Fixed an issue when using custom authentication with multiple authentication methods, custom authentication could not be selected to provide the base identity -- Fixed an issue where OAuth access keys were physically removed from Redis on expiry. Behavior for OAuth is now the same as for other authorization methods -- Fixed an issue where the `global_size_limit` setting didn't enable request size limit middleware. Thanks to [PatrickTaibel](https://github.com/PatrickTaibel) for the contribution! -- Fixed minor versioning, URL and field mapping issues when importing OpenAPI document as an API definition to UDG -- When the control API is not protected with mTLS we now do not ask for a cert, even if all the APIs registered have mTLS as an authorization mechanism - -#### Tyk Classic Portal Changelog - -##### Changed - -- Improved performance when opening the Portal page by optimizing the pre-fetching of required data - - -## Community Contributions - -Special thanks to the following members of the Tyk community for their contributions in this release: - -- Thanks to [PatrickTaibel](https://github.com/PatrickTaibel) for fixing an issue where `global_size_limit` was not enabling request size limit middleware. - -- Thanks to [vanhtuan0409](https://github.com/vanhtuan0409) for adding support to the `:authority` header when making gRPC requests. - ---- - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-c23829a5-7b3c-454f-8dcb-a1c67249032b) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.2.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.2.md deleted file mode 100644 index 445071ae4f..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.2.md +++ /dev/null @@ -1,707 +0,0 @@ ---- -title: Tyk Gateway 5.2 Release Notes -date: 2023-09-27T15:49:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.2.X series." -tags: ["Tyk Gateway", "Release notes", "v5.2", "5.2.0", "5.2", "changelog", "5.2.1", "5.2.2", "5.2.3", "5.2.4", "5.2.5"] ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.2.X displayed in reverse chronological order** - -## Support Lifetime -Minor releases are supported until our next minor or major release comes out. There is no 5.3 scheduled in 2023. Subsequently, 5.2 is currently expected to remain in support until our next minor version comes out in Q1 2024. - ---- - -## 5.2.5 Release Notes - -### Release Date 19 Dec 2023 - -### Breaking Changes - -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -### Release Highlights -This release implements a bug fix. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.5">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.5/images/sha256-c09cb03dd491e18bb84a0d9d4e71177eb1396cd5debef694f1c86962dbee10c6?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.5) - -### Changelog {#Changelog-v5.2.5} - -#### Fixed -
      -
    • -
      - Long custom keys not maintained in distributed Data Planes - -Fixed an issue where custom keys over 24 characters in length were deleted from Redis in the Data Plane when key update action signalled in distributed (MDCB) setups. -
      -
    • -
    - ---- - -## 5.2.4 Release Notes - -### Release Date 7 Dec 2023 - -### Breaking Changes -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -### Release Highlights -This release enhances security, stability, and performance. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.4">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.4/images/sha256-c0d9e91e4397bd09c85adf4df6bc401b530ed90c8774714bdafc55db395c9aa5?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.4) - -### Changelog {#Changelog-v5.2.4} - -#### Fixed -
      -
    • -
      - Output from Tyk OAS request validation schema failure is too verbose - -Fixed an issue where the Validate Request middleware provided too much information when reporting a schema validation failure in a request to a Tyk OAS API. -
      -
    • -
    • -
      - Gateway incorrectly applying policy Path-Based Permissions in certain circumstances - -Fixed a bug where the gateway didn't correctly apply Path-Based Permissions from different policies when using the same `sub` claim but different scopes in each policy. Now the session will be correctly configured for the claims provided in the policy used for each API request. -
      -
    • -
    • -
      - Plugin compiler not correctly supporting build_id to differentiate between different builds of the same plugin - -Fixed a bug when using the build_id argument with the Tyk Plugin Compiler that prevents users from hot-reloading different versions of the same plugin compiled with different build_ids. The bug was introduced with the plugin module build change implemented in the upgrade to Go version 1.19 in Tyk 5.1.0. -
      -
    • -
    • -
      - URL Rewrite fails to handle escaped character in query parameter - -Fixed a bug that was introduced in the fix applied to the URL Rewrite middleware in Tyk 5.0.5/5.1.2. The previous fix did not correctly handle escaped characters in the query parameters. Now you can safely include escaped characters in your query parameters and Tyk will not modify them in the URL Rewrite middleware. -
      -
    • -
    - ---- - -## 5.2.3 Release Notes - -### Release Date 21 Nov 2023 - -### Breaking Changes -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -### Release Highlights -This release enhances security, stability, and performance. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.3">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.3/images/sha256-8a94658c8c52ddfe30f78c5438dd4308c4d019655d8af7773a33fdffda097992?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.3) - -### Changelog {#Changelog-v5.2.3} - -#### Fixed - -
      -
    • -
      -Python version not always correctly autodetected - -Fixed an issue where Tyk was not autodetecting the installed Python version if it had multiple digits in the minor version (e.g. Python 3.11). The regular expression was updated to correctly identify Python versions 3.x and 3.xx, improving compatibility and functionality. -
      -
    • -
    • -
      - Gateway blocked trying to retrieve keys via MDCB when using JWT auth - -Improved the behavior when using JWTs and the MDCB (Multi Data Center Bridge) link is down; the Gateway will no longer be blocked attempting to fetch OAuth client info. We’ve also enhanced the error messages to specify which type of resource (API key, certificate, OAuth client) the data plane Gateway failed to retrieve due to a lost connection with the control plane. -
      -
    • -
    • -
      - Custom Authentication Plugin not working correctly with policies - -Fixed an issue where the session object generated when creating a Custom Key in a Go Plugin did not inherit parameters correctly from the Security Policy. -
      -
    • -
    • -
      - Attaching a public key to an API definition for mTLS brings down the Gateway - -Fixed an issue where uploading a public key instead of a certificate into the certificate store, and using that key for mTLS, caused all the Gateways that the APIs are published on to cease negotiating TLS. This fix improves the stability of the gateways and the successful negotiation of TLS. -
      -
    • -
    - -#### Added - -
      -
    • -
      -Implemented a `tyk version` command that provides more details about the Tyk Gateway build - -This prints the release version, git commit, Go version used, architecture and other build details. -
      -
    • -
    • -
      -Added option to fallback to default API version - -Added new option for Tyk to use the default version of an API if the requested version does not exist. This is referred to as falling back to default and is enabled using a [configuration]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#versioning" >}}) flag in the API definition; for Tyk OAS APIs the flag is `fallbackToDefault`, for Tyk Classic APIs it is `fallback_to_default`. -
      -
    • -
    • -
      -Implemented a backoff limit for GraphQL subscription connection retry - -Added a backoff limit for GraphQL subscription connection retry to prevent excessive error messages when the upstream stops working. The connection retries and linked error messages now occur in progressively longer intervals, improving error handling and user experience. -
      -
    • -
    - -#### Community Contributions - -Special thanks to the following member of the Tyk community for their contribution to this release: - -
      -
    • -
      -Runtime log error incorrectly produced when using Go Plugin Virtual Endpoints - -Fixed a minor issue with Go Plugin virtual endpoints where a runtime log error was produced from a request, even if the response was successful. Thanks to [uddmorningsun](https://github.com/uddmorningsun) for highlighting the [issue](https://github.com/TykTechnologies/tyk/issues/4197) and proposing a fix. -
      -
    • -
    - ---- - -## 5.2.2 Release Notes - -### Release Date 31 Oct 2023 - -### Breaking Changes -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are using a 5.2.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, you should skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.2">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.2/images/sha256-84d9e083872c78d854d3b469734ce40b7e77b9963297fe7945e214a0e6ccc614?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.2) - -### Changelog {#Changelog-v5.2.2} - -#### Security - -The following CVEs have been resolved in this release: - -- [CVE-2022-40897](https://nvd.nist.gov/vuln/detail/CVE-2022-40897) -- [CVE-2022-1941](https://nvd.nist.gov/vuln/detail/CVE-2022-1941) -- [CVE-2021-23409](https://nvd.nist.gov/vuln/detail/CVE-2021-23409) -- [CVE-2021-23351](https://nvd.nist.gov/vuln/detail/CVE-2021-23351) -- [CVE-2019-19794](https://nvd.nist.gov/vuln/detail/CVE-2019-19794) -- [CVE-2018-5709](https://nvd.nist.gov/vuln/detail/CVE-2018-5709) -- [CVE-2010-0928](https://nvd.nist.gov/vuln/detail/CVE-2010-0928) -- [CVE-2007-6755](https://nvd.nist.gov/vuln/detail/CVE-2007-6755) - - - -#### Fixed - -
      -
    • -
      -Enforced timeouts were incorrect on a per-request basis - -Fixed an issue where [enforced timeouts]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) values were incorrect on a per-request basis. Since we enforced timeouts only at the transport level and created the transport only once within the value set by [max_conn_time]({{< ref "tyk-oss-gateway/configuration#max_conn_time" >}}), the timeout in effect was not deterministic. Timeouts larger than 0 seconds are now enforced for each request. -
      -
    • -
    • -
      -Incorrect access privileges were granted in security policies - -Fixed an issue when using MongoDB and [Tyk Security Policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) where Tyk could incorrectly grant access to an API after that API had been deleted from the associated policy. This was due to the policy cleaning operation that is triggered when an API is deleted from a policy in a MongoDB installation. With this fix, the policy cleaning operation will not remove the final (deleted) API from the policy; Tyk recognizes that the API record is invalid and denies granting access rights to the key. -
      -
    • -
    • -
      -Logstash formatter timestamp was not in RFC3339 Nano format - -The [Logstash]({{< ref "log-data#aggregated-logs-with-logstash" >}}) formatter timestamp is now in [RFC3339Nano](https://www.rfc-editor.org/rfc/rfc3339) format. -
      -
    • -
    • -
      -In high load scenarios the DRL Manager was not protected against concurrent read and write operations - -Fixed a potential race condition where the *DRL Manager* was not properly protected against concurrent read/write operations in some high-load scenarios. -
      -
    • -
    • -
      -Performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API - -Fixed a performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API. The token is now validated against [JWKS or the public key]({{}}) in the API Definition. -
      -
    • -
    • -
      -JWT middleware introduced latency which reduced overall request/response throughput - -Fixed a performance issue where JWT middleware introduced latency which significantly reduced the overall request/response throughput. -
      -
    • -
    • -
      -UDG examples were not displayed when Open Policy Agent (OPA) was enabled - -Fixed an issue that prevented *UDG* examples from being displayed in the dashboard when the *Open Policy Agent(OPA)* is enabled. -
      -
    • -
    • -
      -Sensitive information logged when incorrect signature provided for APIs protected by HMAC authentication - -Fixed an issue where the Tyk Gateway logs would include sensitive information when the incorrect signature is provided in a request to an API protected by HMAC authentication. -
      -
    • -
    - -#### Community Contributions - -Special thanks to the following members of the Tyk community for their contributions to this release: - -
      -
    • -
      -ULID Normalization implemented -- Implemented *ULID Normalization*, replacing valid ULID identifiers in the URL with a `{ulid}` placeholder for analytics. This matches the existing UUID normalization. Thanks to [Mohammad Abdolirad](https://github.com/atkrad) for the contribution. -
      -
    • -
    • -
      -Duplicate error message incorrectly reported when a custom Go plugin returned an error - -Fixed an issue where a duplicate error message was reported when a custom Go plugin returned an error. Thanks to [@PatrickTaibel](https://github.com/PatrickTaibel) for highlighting the issue and suggesting a fix. -
      -
    • -
    - - ---- - -## 5.2.1 Release Notes - -### Release Date 10 Oct 2023 - -### Breaking Changes -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Upgrade Instructions -If you are on a 5.2.0 we advise you to upgrade ASAP and if you are on an older version skip 5.2.0 and upgrade directly to this release. Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade instructions. - -### Release Highlights -This release primarily focuses on bug fixes. -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. - -### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.1/images/sha256-47cfffda64ba492f79e8cad013a476f198011f5a97cef32464f1f47e1a9be9a2?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.1.2) - -### Changelog {#Changelog-v5.2.1} - -#### Changed - -
      -
    • -
      -Log messaging quality enhanced - -Enhance log message quality by eliminating unnecessary messages -
      -
    • -
    • -
      -Configurable retry for resource loading introduced - -Fixed a bug that occurs during Gateway reload where the Gateway would continue to load new API definitions even if policies failed to load. This led to a risk that an API could be invoked without the associated policies (for example, describing access control or rate limits) having been loaded. Now Tyk offers a configurable retry for resource loading, ensuring that a specified number of attempts will be made to load resources (APIs and policies). If a resource fails to load, an error will be logged and the Gateway reverts to its last working configuration. - -We have introduced two new variables to configure this behavior: -- `resource_sync.retry_attempts` - defines the number of [retries]({{< ref "tyk-oss-gateway/configuration#resource_syncretry_attempts" >}}) that the Gateway should perform during a resource sync (APIs or policies), defaulting to zero which means no retries are attempted -- `resource_sync.interval` - setting the [fixed interval]({{< ref "tyk-oss-gateway/configuration#resource_syncinterval" >}}) between retry attempts (in seconds) -
      -
    • -
    • -
      -Added http.response.body.size and http.request.body.size for OpenTelemetry users - -For OpenTelemetry users, we've included much-needed attributes, `http.response.body.size` and `http.request.body.size`, in both Tyk HTTP spans and upstream HTTP spans. This addition enables users to gain better insight into incoming/outgoing request/response sizes within their traces. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Memory leak was encountered if OpenTelemetry enabled - -Fixed a memory leak issue in Gateway 5.2.0 if [OpenTelemetry](https://opentelemetry.io/) (abbreviated "OTel") is [enabled](https://tyk.io/docs/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview/#enabling-opentelemetry-in-two-steps). It was caused by multiple `otelhttp` handlers being created. We have updated the code to use a single instance of `otelhttp` handler in 5.2.1 to improve performance under high traffic load. -
      -
    • -
    • -
      -Memory leak encountered when enabling the strict routes option - -Fixed a memory leak that occurred when enabling the [strict routes option]({{< ref "tyk-oss-gateway/configuration#http_server_optionsenable_strict_routes" >}}) to change the routing to avoid nearest-neighbor requests on overlapping routes (`TYK_GW_HTTPSERVEROPTIONS_ENABLESTRICTROUTES`) -
      -
    • -
    • -
      -High rates of Tyk Gateway reloads were encountered - -Fixed a potential performance issue related to high rates of *Tyk Gateway* reloads (when the Gateway is updated due to a change in APIs and/or policies). The gateway uses a timer that ensures there's at least one second between reloads, however in some scenarios this could lead to poor performance (for example overloading Redis). We have introduced a new [configuration option]({{< ref "tyk-oss-gateway/configuration#reload_interval" >}}), `reload_interval` (`TYK_GW_RELOADINTERVAL`), that can be used to adjust the duration between reloads and hence optimize the performance of your Tyk deployment. -
      -
    • -
    • -
      -Headers for GraphQL headers were not properly forwarded upstream for GQL/UDG subscriptions - -Fixed an issue with GraphQL APIs, where [headers]({{< ref "graphql/gql-headers" >}}) were not properly forwarded upstream for [GQL/UDG subscriptions]({{< ref "getting-started/key-concepts/graphql-subscriptions" >}}). -
      -
    • -
    • -
      -Idle upstream connections were incorrectly closed - -Fixed a bug where the Gateway did not correctly close idle upstream connections (sockets) when configured to generate a new connection after a configurable period of time (using the [max_conn_time]({{}}) configuration option). This could lead to the Gateway eventually running out of sockets under heavy load, impacting performance. -
      -
    • -
    • -
      -Extra chunked transfer encoding was uncessarily added to rawResponse analytics - -Removed the extra chunked transfer encoding that was added unnecessarily to `rawResponse` analytics -
      -
    • -
    • -
      -Reponse body transformation not execute when Persist GraphQL middleware used - -Resolved a bug with HTTP GraphQL APIs where, when the [Persist GraphQL middleware]({{< ref "graphql/persisted-queries" >}}) was used in combination with [Response Body Transform]({{< ref "advanced-configuration/transform-traffic/response-body" >}}), the response's body transformation was not being executed. -{{< img src="img/bugs/bug-persistent-gql.png" width="400" alt="Bug in persistent gql and response body transform" title="The setup of graphQL middlewares">}} -
      -
    • -
    • -
      -Unable to modify a key that provides access to an inactive or draft API - -Fixed a bug where, if you created a key which provided access to an inactive or draft API, you would be unable to subsequently modify that key (via the Tyk Dashboard UI, Tyk Dashboard API or Tyk Gateway API) -
      -
    • -
    - - -#### Dependencies -- Updated TykTechnologies/gorm to v1.21 in Tyk Gateway - ---- - -## 5.2.0 Release Notes - -### Release Date 29 Sep 2023 - -### Breaking Changes -**Attention**: Please read carefully this section. We have two topics to report: - -### Early Access Features: -Please note that the `Tyk OAS APIs` feature, currently marked as *Early Access*, is subject to breaking changes in subsequent releases. Please refer to our [Early Access guide]({{}}) for specific details. Upgrading to a new version may introduce changes that are not backwards-compatible. Downgrading or reverting an upgrade may not be possible resulting in a broken installation. - -Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates. - -### Deprecations -There are no deprecations in this release. - -### Release Highlights - -We're thrilled to bring you some exciting enhancements and crucial fixes to improve your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.2.0">}}) below. - -#### Added Body Transform Middleware to Tyk OAS API Definition - -With this release, we are adding the much requested *Body Transformations* to *Tyk OAS API Definition*. You can now [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) middleware for both [request]({{< ref "transform-traffic/request-body" >}}) and [response]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) body transformations and - as a Tyk Dashboard user - you’ll be able to do so from within our simple and elegant API Designer tool. - -#### Reference Tyk OAS API Definition From Within Your Custom Go Plugins - -Reference the *Tyk OAS API definition* from within your custom *Go Plugins*, bringing them up to standard alongside those you might use with a *Tyk Classic API*. - -#### Configure Caching For Each API Endpoint - -We’ve added the ability to [configure]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}) per-endpoint timeouts for Tyk’s response cache, giving you increased flexibility to tailor your APIs to your upstream services. - -#### Added Header Management in Universal Data Graph - -With this release we are adding a concept of [header management]({{< ref "universal-data-graph/concepts/header_management" >}}) in *Universal Data Graph*. With multiple upstream data sources, data graphs need to be sending the right headers upstream, so that our users can effectively track the usage and be able to enforce security rules at each stage. All *Universal Data Graph* headers now have access to *request context* variables like *JWT claims*, *IP address* of the connecting client or *request ID*. This provides extensive configurability of customizable information that can be sent upstream. - -#### Added Further Support For GraphQL WebSocket Protocols - -Support for [WebSocket]({{< ref "/graphql/graphql-websockets" >}}) protocols between client and the *Gateway* has also been expanded. Instead of only supporting the *graphql-ws protocol*, which is becoming deprecated, we now also support [graphql-transport-ws](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) by setting the *Sec-WebSocket-Protocol* header to *graphql-transport-ws*. - -#### Added OpenTelemetry Tracing - -In this version, we're introducing the support for *OpenTelemetry Tracing*, the new [open standard](https://opentelemetry.io/) for exposing observability data. This addition gives you improved visibility into how API requests are processed, with no additional license required. It is designed to help you with monitoring and troubleshooting APIs, identify bottlenecks, latency issues and errors in your API calls. For detailed information and guidance, you can check out our [OpenTelemetry Tracing]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview" >}}) resource. - -*OpenTelemetry* makes it possible to isolate faults within the request lifetime through inspecting API and Gateway meta-data. Additionally, performance bottlenecks can be identified within the request lifetime. API owners and developers can use this feature to understand how their APIs are being used or processed within the Gateway. - -*OpenTelemetry* functionality is also available in [Go Plugins]({{< ref "/product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins" >}}). Developers can write code to add the ability to preview *OpenTelemetry* trace attributes, error status codes etc., for their Go Plugins. - -We offer support for integrating *OpenTelemetry* traces with supported open source tools such [Jaeger]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger" >}}), [Dynatrace]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace" >}}) or [New Relic]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic" >}}). This allows API owners and developers to gain troubleshooting and performance insights from error logs, response times etc. -You can also find a direct link to our docs in the official [OpenTelemetry Integration page](https://opentelemetry.io/ecosystem/integrations/) - -{{< warning success >}} -**Warning** - -*Tyk Gateway 5.2* now includes *OpenTelemetry Tracing*. Over the next year, we'll be deprecating *OpenTracing*. We recommend migrating to *OpenTelemetry* for better trace insights and more comprehensive support. This change will offer you significant advantages in managing your distributed tracing needs. - -{{< /warning >}} - -### Downloads - -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-gateway/v5.2.0/images/sha256-cf0c57619e8285b1985bd5e4bf86b8feb42abec56cbc241d315cc7f8c0d43025?context=explore) -- [source code](https://github.com/TykTechnologies/tyk/releases/tag/v5.2.0) - -### Changelog {#Changelog-v5.2.0} - -#### Added: - -
      -
    • -
      -Added support for configuring distributed tracing behavior - -Added support for [configuring]({{< ref "tyk-oss-gateway/configuration#opentelemetry" >}}) distributed tracing behavior of *Tyk Gateway*. This includes enabling tracing, configuring exporter types, setting the URL of the tracing backend to which data is to be sent, customizing headers, and specifying enhanced connectivity for *HTTP*, *HTTPS* and *gRPC*. Subsequently, users have precise control over tracing behavior in *Tyk Gateway*. -
      -
    • -
    • -
      -Added support for configuring OpenTelemetry - -Added support to configure *OpenTelemetry* [sampling types and rates]({{< ref "tyk-oss-gateway/configuration#opentelemetrysampling" >}}) in the *Tyk Gateway*. This allows users to manage the need for collected detailed tracing information against performance and resource usage requirements. -
      -
    • -
    • -
      -Added span attributes to simplify identifying Tyk API and request meta-data per request - -Added span attributes to simplify identifying Tyk API and request meta-data per request. Example span attributes include: *tyk.api.id*, *tyk.api.name*, *tyk.api.orgid*, *tyk.api.tags*, *tyk.api.path*, *tyk.api.version*, *tyk.api.apikey*, *tyk.api.apikey.alias* and *tyk.api.oauthid*. This allows users to use *OpenTelemetry* [semantic conventions](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/README.md) to filter and create metrics for increased insight and observability. -
      -
    • -
    • -
      -Add custom resource attributes to allow process information to be available in traces - -Added custom resource attributes: *service.name*, *service.instance.id*, *service.version*, *tyk.gw.id*, *tyk.gw.dataplane*, *tyk.gw.group.id*, *tyk.gw.tags* to allow process information to be available in traces. -
      -
    • -
    • -
      -Allow clients to retrieve the trace ID from response headers when OpenTelemetry enabled - -Added a new feature that allows clients to retrieve the trace ID from response headers. This feature is available when *OpenTelemetry* is [enabled]({{< ref "tyk-oss-gateway/configuration#opentelemetryenabled" >}}) and simplifies debugging API requests, empowering users to seamlessly correlate and analyze data for a specific trace in any *OpenTelemetry* backend like [Jaeger](https://www.jaegertracing.io/). -
      -
    • -
    • -
      -Allow detailed tracing to be enabled/disabled at API level - -Added configuration parameter to enable/disable [detail_tracing]({{< ref "/product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview#step-2-enable-detailed-tracing-at-api-level-optional" >}}) for *Tyk Classic API*. -
      -
    • -
    • -
      -Add OpenTelemetry support for GraphQL - -Added *OpenTelemetry* support for GraphQL. This is activated by setting [opentelemetry.enabled]({{< ref "tyk-oss-gateway/configuration#opentelemetryenabled" >}}) to *true*. This integration enhances observability by enabling GQL traces in any OpenTelemetry backend, like [Jaeger](https://www.jaegertracing.io/), granting users comprehensive insights into the execution process, such as request times. -
      -
    • -
    • -
      -Add support to configure granual control over cache timeout at the endpoint level - -Added a new [timeout option]({{< ref "product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas#configuring-the-middleware-in-the-tyk-oas-api-definition" >}}), offering granular control over cache timeout at the endpoint level. -
      -
    • -
    • -
      -Enable request context variables in UDG global or data source headers - -Added support for using [request context variables]({{< ref "context-variables#available-context-variables" >}}) in *UDG* global or data source headers. This feature enables much more advanced [header management]({{< ref "/universal-data-graph/concepts/header_management" >}}) for UDG and allows users to extract header information from an incoming request and pass it to upstream data sources. -
      -
    • -
    • -
      -Add support for configuration of global headers for any UDG - -Added support for configuration of [global headers]({{< ref "/universal-data-graph/concepts/header_management" >}}) for any *UDG*. These headers will be forwarded to all data sources by default, enhancing control over data flow. -
      -
    • -
    • -
      -Add ability for Custom GoPlugin developers using Tyk OAS APIs to access the API Definition - -Added the ability for Custom GoPlugin developers using *Tyk OAS APIs* to access the *API Definition* from within their plugin. The newly introduced *ctx.getOASDefinition* function provides read-only access to the *OAS API Definition* and enhances the flexibility of plugins. -
      -
    • -
    • -
      -Add support for graphql-transport-ws websocket protocol - -Added support for the websocket protocol, *graphql-transport-ws protocol*, enhancing communication between the client and *Gateway*. Users [connecting]({{< ref "/graphql/graphql-websockets" >}}) with the header *Sec-WebSocket-Protocol* set to *graphql-transport-ws* can now utilize messages from this [protocol](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) for more versatile interaction. -
      -
    • -
    • -
      -Developers using Tyk OAS API Definition can configure body transform middleware for API reponses - -Added support for API Developers using *Tyk OAS API Definition* to [configure]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc#transformbody" >}}) a body transform middleware that operates on API responses. This enhancement ensures streamlined and selective loading of the middleware based on configuration, enabling precise response data customization at the per-endpoint level. -
      -
    • -
    • -
      -Enhanced Gateway usage reporting, allowing reporting of number of connected gateways and data planes -- Added support for enhanced *Gateway* usage reporting. *MDCB v2.4* and *Gateway v5.2* can now report the number of connected gateways and data planes. Features such as data plane gateway visualisation are available in *Tyk Dashboard* for enhanced monitoring of your deployment. -
      -
    • -
    - -#### Changed: -
      -
    • -
      -Response Body Transform middleware updated to remove unnecessary entries in Tyk Classic API Definition - -Updated *Response Body Transform* middleware for *Tyk Classic APIs* to remove unnecessary entries in the *API definition*. The dependency on the *response_processor.response_body_transform* configuration has been removed to streamline middleware usage, simplifying API setup. -
      -
    • -
    - -#### Fixed: -
      -
    • -
      -UDG was dropping array type parameter in certain circumstances from final request URL sent upstream - -Fixed an issue with querying a *UDG* API containing a query parameter of array type in a REST data source. The *UDG* was dropping the array type parameter from the final request URL sent upstream. -
      -
    • -
    • -
      -Introspection of GraphQL schemas raised an error when dealing with some custom root types - -Fixed an issue with introspecting GraphQL schemas that previously raised an error when dealing with custom root types other than *Query*, *Mutation* or *Subscription*. -
      -
    • -
    • -
      -Enforced Timeout configuration parameter of an API endpoint was not validated - -Fixed an issue where the [Enforced Timeout]({{< ref "planning-for-production/ensure-high-availability/enforced-timeouts" >}}) configuration parameter of an API endpoint accepted negative values, without displaying validation errors. With this fix, users receive clear feedback and prevent unintended configurations. -
      -
    • -
    • -
      -allowedIPs validation failures were causing the loss of other error types reported - -Fixed an issue where *allowedIPs* validation failures replaced the reported errors list, causing the loss of other error types. This fix appends IP validation errors to the list, providing users with a comprehensive overview of encountered errors. Subsequently, this enhances the clarity and completeness of validation reporting. -
      -
    • -
    • -
      -The Data Plane Gateway for versions < v5.1 crashed with panic error when creating a Tyk OAS API - -Fixed a critical issue in MDCB v2.3 deployments, relating to *Data Plane* stability. The *Data Plane* Gateway with versions older than v5.1 was found to crash with a panic when creating a Tyk OAS API. The bug has been addressed, ensuring stability and reliability in such deployments. -
      -
    • -
    - - ---- - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### API Documentation - -- [OpenAPI Document]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/collection/27225007-c23829a5-7b3c-454f-8dcb-a1c67249032b) - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.3.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.3.md deleted file mode 100644 index 2dbef72eb8..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.3.md +++ /dev/null @@ -1,1853 +0,0 @@ ---- -title: Tyk Gateway 5.3 LTS Release Notes -date: 2024-03-27T15:51:11Z -description: - "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.3.X series." -tags: ["Tyk Gateway", "Release notes", "changelog", "v5.3", "5.3.0", "5.3.1", "5.3.3", "5.3.5", "5.3.7", "5.3.8" ] ---- - - - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.3.X displayed in a reverse chronological order** - -## Support Lifetime - - - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.3.8 Release Notes - -### Release Date 07 November 2024 - -### Release Highlights - -This release focuses mainly on bug fixes. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.8">}}) below. - -### Breaking Changes - -This release has no breaking changes. - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.8 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.22 (GW) | 1.22 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. - - -### Upgrade Instructions - -If you are upgrading to 5.3.8, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.8) - - ```bash - docker pull tykio/tyk-gateway:v5.3.8 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.8} - - - -#### Added -
      -
    • -
      -Deprecation notice of External OAuth and OpenID Connect options -A deprecation notice for External OAuth and OpenID Connect (OIDC) authentication mechanisms has been implemented in the Gateway logs starting from version 5.3.8. This provides advanced notification to users regarding any APIs configured with these authentication methods in preparation for future upgrades where these middleware options may be removed in version 5.7.0. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Memory consumption reduced in Gateway for large payloads - -This update fixes a bug that caused increased memory usage when proxying large response payloads that was introduced in version 5.3.1, restoring memory requirements to the levels seen in version 5.0.6. Users experiencing out-of-memory errors with 1GB+ file downloads will notice improved performance and reduced latency. -
      -
    • -
    • -
      -Path-based permissions in combined policies not preserved - -We resolved an issue that caused path-based permissions in policies to be lost when policies were combined, potentially omitting URL values and restricting access based on the merge order. It ensures that all applicable policies merge their allowed URL access rights, regardless of the order in which they are applied. -
      -
    • -
    • -
      -Enhanced flexibility in Tyk OAS schema validation - -A backwards compatibility issue in the way that the Gateway handles Tyk OAS API definitions has been addressed by reducing the strictness of validation against the expected schema. Since Tyk version 5.3, the Gateway has enforced strict validation, potentially causing problems for users downgrading from newer versions. With this change, Tyk customers can move between versions seamlessly, ensuring their APIs remain functional and avoiding system performance issues. -
      -
    • -
    • -
      -Fix for API key loss on worker Gateways due to keyspace sync interruption - -This update resolves an issue where API keys could be lost if the [keyspace synchronization]({{}}) between control and data planes was interrupted. The solution now enforces a resynchronization whenever a connection is re-established between MDCB and the data plane, ensuring key data integrity and seamless API access. -
      -
    • -
    - ---- - -## 5.3.7 Release Notes - -### Release Date 22 October 2024 - -### Release Highlights - -This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data -plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.3.7 to -avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.3.7">}}) below. - -### Breaking Changes - -There are no breaking changes in this release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.7 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.7 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.7) - - ```bash - docker pull tykio/tyk-gateway:v5.3.7 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.7} - -#### Fixed - - -
      -
    • -
      - Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud -In version 5.3.6, Tyk Gateway could encounter a panic when attempting to reconnect to the control plane after it was restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control plane following reconnections and reducing the need for manual intervention. -
      -
    • -
    - - - ---- - -## 5.3.6 Release Notes - -### Release Date 04 October 2024 - -{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when -reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk -Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    - -

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. -

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    -Recommendations:
    -

      -
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      -We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. - -
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      -Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      -
    -

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. -{{< /note >}} - -### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.3.6">}}) below. - -### Breaking Changes - -Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in -the image. - -If moving from an version of Tyk older than 5.3.0 please read the explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.6 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.6 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.6) - - ```bash - docker pull tykio/tyk-gateway:v5.3.6 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.6} - - - -#### Changed - - -

      -
    • -
      -Upgrade to Go 1.22 for Tyk Gateway - -The Tyk Gateway has been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, strengthened security, -and access to the latest features available in the new Golang release. - -
      -
    • - -
    • -
      -Introducing Distroless Containers for Tyk Gateway (2024 LTS) - -In this release, we've enhanced the security of the Tyk Gateway image by changing the build process to support -[distroless](https://github.com/GoogleContainerTools/distroless) containers. This significant update addresses critical -CVEs associated with Debian, ensuring a more secure and minimal runtime environment. Distroless containers reduce the -attack surface by eliminating unnecessary packages, which bolsters the security of your deployments. - -
      -
    • - -
    - -#### Fixed - -
      -
    • -
      -Custom Response Plugins not working for Tyk OAS APIs - -We have resolved an issue where custom [response plugins]({{< ref "plugins/plugin-types/response-plugins" >}}) were not being -triggered for Tyk OAS APIs. This fix ensures that all [supported]({{< ref "getting-started/using-oas-definitions/oas-reference" >}}) -custom plugins are invoked as expected when using Tyk OAS APIs. - -
      -
    • - -
    • -
      -Data plane gateways sometimes didn't synchronise policies and APIs on start-up - -We have enhanced the initial synchronization of Data Plane gateways with the Control Plane to ensure more reliable -loading of policies and APIs on start-up. A synchronous initialization process has been implemented to avoid sync -failures and reduce the risk of service disruptions caused by failed loads. This update ensures smoother and more -consistent syncing of policies and APIs in distributed deployments. - -
      -
    • - -
    • -
      -Quota wasn't respected under extreme load - -We have fixed an issue where the quota limit was not being consistently respected during request spikes, especially in -deployments with multiple gateways. The problem occurred when multiple gateways cached the current and remaining quota -counters at the end of quota periods. To address this, a distributed lock mechanism has been implemented, ensuring -coordinated quota resets and preventing discrepancies across gateways. - -
      -
    • - -
    • -
      -Restored Key Creation Speed in Gateway 4.0.13 and Later - -We have addressed a performance regression identified in Tyk Gateway versions 4.0.13 and later, where key creation for -policies with a large number of APIs (100+) became significantly slower. The operation, which previously took around 1.5 -seconds in versions 4.0.0 to 4.0.12, was taking over 20 seconds in versions 4.0.13 and beyond. This issue has been -resolved by optimizing Redis operations during key creation, restoring the process to its expected speed of -approximately 1.5 seconds, even with a large number of APIs in the policy. - -
      -
    • -
    - -#### Security Fixes - - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security -vulnerabilities: - -- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) -
      -
    • -
    - ---- - -## 5.3.5 Release Notes - -### Release Date 26 September 2024 - -### Release Highlights - -This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway -configuration options to control path matching strictness. For a comprehensive list of changes, please refer to the -detailed [changelog]({{< ref "#Changelog-v5.3.5">}}) below. - -### Breaking Changes - -There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the -explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.5 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.5 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v2.0.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.5) - - ```bash - docker pull tykio/tyk-gateway:v5.3.5 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.5} - - - -#### Added - -
      -
    • -
      -Implemented Gateway configuration options to set URL path matching strictness - -We have introduced two new options in the `http_server_options` [Gateway -configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching -when Tyk performs checks on whether middleware or other logic should be applied to a request: - -- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API - definition -- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API - definition -- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is - performed - -These configuration options provide control to avoid unintended matching of paths from Tyk's default _wildcard_ match. -Use of regex special characters when declaring the endpoint path in the API definition will automatically override these -settings for that endpoint. Tyk recommends that exact matching is employed, but both options default to `false` to avoid -introducing a breaking change for existing users. - -The example Gateway configuration file `tyk.conf.example` has been updated to set the recommended exact matching with: - -- `http_server_options.enable_path_prefix_matching = true` -- `http_server_options.enable_path_suffix_matching = true` -- `http_server_options.enable_strict_routes = true` -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Incorrectly configured regex in policy affected Path-Based Permissions authorization - -Fixed an issue when using granular [Path-Based -Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization -incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue -where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly -handles both of these scenarios granting access only to the expected resources. - -
      -
    • -
    • -
      -Missing path parameter could direct to the wrong endpoint - -Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits -the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to -`/user/{id}`. - -
      -
    • -
    - ---- - -## 5.3.4 Release Notes - -### Release Date August 26th 2024 - -### Release Highlights - -Gateway 5.3.4 was version bumped only, to align with Dashboard 5.3.4. Subsequently, no changes were encountered in -release 5.3.4. For further information please see the release notes for Dashboard -[v5.3.4]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.3.md" >}}) - -### Breaking Changes - -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the -explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.4 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.4 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.4) - - ```bash - docker pull tykio/tyk-gateway:v5.3.4 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.4} - -Since this release was version bumped only to align with Dashboard v5.3.4, no changes were encountered in this release. - ---- - -## 5.3.3 Release Notes - -### Release Date August 2nd 2024 - -### Breaking Changes - -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the -explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.3 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Release Highlights - -#### Bug Fixes - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.3.3">}}) below. - -#### FIPS Compliance - -Tyk Gateway now offers [FIPS 140-2](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf) compliance. For further -details please consult [Tyk API Management -FIPS support]({{< ref "developer-support/special-releases-and-features/fips-release" >}}). - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.3 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.3) - - ```bash - docker pull tykio/tyk-gateway:v5.3.3 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.3} - - - -#### Added - - -
      -
    • -
      -Added FIPS compliance - -Added [FIPS compliance]({{< ref "developer-support/special-releases-and-features/fips-release" >}}) for Tyk Gateway. - -
      -
    • - -
    • -
      -Corrected ordering of Tyk OAS API paths to prevent middleware misapplication - -Fixed an issue where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the -parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered, preventing this -middleware misapplication and ensuring both the HTTP method and URL match accurately. - -
      -
    • -
    - ---- - -#### Fixed - - -
      -
    • -
      - Optimised key creation to reduce redundant Redis commands - -Addressed an issue where creating or resetting a key caused an exponential number of Redis DeleteRawKey commands. -Previously, the key creation sequence repeated for every API in the access list, leading to excessive deletion events, -especially problematic for access lists with over 100 entries. Now, the key creation sequence executes only once, and -redundant deletion of non-existent keys in Redis has been eliminated, significantly improving performance and stability -for larger access lists. - -
      -
    • -
    • -
      -Resolved SSE streaming issue - -Fixed a bug that caused Server Side Event (SSE) streaming responses to be considered for caching, which required -buffering the response and prevented SSE from being correctly proxied. - -
      -
    • -
    • -
      - Fixed Analytics Latency Reporting for MDCB Setups - -Resolved an issue where Host and Latency fields (Total and Upstream) were not correctly reported for edge gateways in -MDCB setups. The fix ensures accurate Host values and Latency measurements are now captured and displayed in analytics -data. - -
      -
    • -
    - ---- - -## 5.3.2 Release Notes - -### Release Date 5th June 2024 - -### Breaking Changes - -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the -explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.2 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.3.2">}}) below. - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.2 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.4.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.2) - - ```bash - docker pull tykio/tyk-gateway:v5.3.2 - ``` -- Helm charts - - [tyk-charts v1.4]({{< ref "product-stack/tyk-charts/release-notes/version-1.4.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.2} - - - -#### Fixed - - -
      -
    • -
      - Remove sensitive information leaked from OpenTelemetry traces - -In Gateway version 5.2+ and 5.3+, we discovered a bug within the OpenTelemetry tracing feature that inadvertently -transmits sensitive information. Specifically, `tyk.api.apikey` and `tyk.api.oauthid` attributes were exposing API keys. -We have fixed the issue to ensure that only the hashed version of the API key is transmitted in traces. - -
      -
    • -
    • -
      -APIs with common listen paths but different custom domains - -Addressed an issue where an API with a custom domain might not be invoked if another API with the same listen path but -no custom domain was also deployed on the Gateway. Now APIs with custom domain names are loaded first, so requests will -be checked against these first before falling back to APIs without custom domains. - -
      -
    • -
    • -
      -Gateway service discovery issue with consul - -Addressed an issue in service discovery where an IP:port returned by Consul wasn't parsed correctly on the Gateway side, -leading to errors when proxying requests to the service. The issue primarily occurred with IP:port responses, while -valid domain names were unaffected. - -
      -
    • -
    • -
      -Resolved Universal Data Graph Nested Field Mapping Issue - -Fixed an issue with nested field mapping in UDG when used with GraphQL (GQL) operations for a field's data source. -Previously, querying only the mentioned field resulted in an error, but querying alongside another 'normal' field from -the same level worked without issue. - -
      -
    • -
    • -
      -Added control over access to context variables from middleware when using Tyk OAS APIs - -Addressed a potential issue when working with Tyk OAS APIs where request context variables are automatically made -available to relevant Tyk and custom middleware. We have introduced a control in the Tyk OAS API definition to disable -this access if required. - -
      -
    • -
    - ---- - -## 5.3.1 Release Notes - -### Release Date 24 April 2024 - -### Breaking Changes - -**Attention**: Please read this section carefully. - -There are no breaking changes in this release, however if moving from an version of Tyk older than 5.3.0 please read the -explanation provided with [5.3.0 release]({{< ref "#TykOAS-v5.3.0">}}). - -### Deprecations - -There are no deprecations in this release. - -### Upgrade Instructions - -When upgrading to 5.3.1 please follow the [detailed upgrade instructions](#upgrading-tyk). - -### Release Highlights - -This release primarily focuses on bug fixes. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.3.1">}}) below. - -### Dependencies - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.1 | MDCB v2.5.1 | MDCB v2.5.1 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.1) - - ```bash - docker pull tykio/tyk-gateway:v5.3.1 - ``` -- Helm charts - - [tyk-charts v1.3]({{< ref "product-stack/tyk-charts/release-notes/version-1.3.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.1} - -#### Fixed - -
      -
    • -
      -Improved security: don't load APIs into Gateway if custom plugin bundle fails to load - -Issues were addressed where Tyk failed to properly reject custom plugin bundles with signature verification failures, -allowing APIs to load without necessary plugins, potentially exposing upstream services. With the fix, if the plugin -bundle fails to load (for example, due to failed signature verification) the API will not be loaded and an error will be -logged in the Gateway. - -
      -
    • -
    • -
      -Stability: fixed a Gateway panic that could occur when using custom JavaScript plugins with the Ignore Authentication middleware - -Fixed a panic scenario that occurred when a custom JavaScript plugin that requests access to the session metadata -(`require_session:true`) is assigned to the same endpoint as the Ignore Authentication middleware. While the custom -plugin expects access to a valid session, the configuration flag doesn't guarantee its presence, only that it's passed -if available. As such, the custom plugin should be coded to verify that the session metadata is present before -attempting to use it. - -
      -
    • -
    • -
      -Stability: Gateway could crash when custom Python plugins attempted to access storage - -Fixed a bug where the Gateway could crash when using custom Python plugins that access the Redis storage. The Tyk Python -API methods `store_data` and `get_data` could fail due to connection issues with the Redis. With this fix, the Redis -connection will be created if required, avoiding the crash. - -
      -
    • -
    • -
      -Stability: Gateway panics when arguments are missing in persist GraphQL endpoints - -In some instances users were noticing gateway panics when using the **Persist GQL** middleware without arguments -defined. This issue has been fixed and the gateway will not throw panics in these cases anymore. - -
      -
    • -
    • -
      -Missing GraphQL OTel attributes in spans when requests fail validation - -In cases where `detailed_tracing` was set to `false` and the client was sending a malformed request to a GraphQL API, -the traces were missing GraphQL attributes (operation name, type and document). This has been corrected and debugging -GraphQL with OTel will be easier for users. - -
      -
    • -
    • -
      -Incorrect naming for semantic conventions attributes in GQL spans - -GQL Open Telemetry semantic conventions attribute names were missing `graphql` prefix and therefore were not in line -with the community standard. This has been fixed and all attributes have the correct prefix. - -
      -
    • -
    • -
      -URL Rewrite middleware did not always correctly observe quotas for requests using keys created from policies - -Fixed two bugs in the handling of usage quotas by the URL rewrite middleware when it was configured to rewrite to itself -(e.g. to `tyk://self`). Quota limits were not observed and the quota related response headers always contained `0`. - -
      -
    • -
    • -
      -Tyk Dashboard License Statistics page could display incorrect number of data plane gateways - -Resolved an issue in distributed deployments where the MDCB data plane gateway counter was inaccurately incremented when -a Gateway was stopped and restarted. - -
      -
    • -
    • -
      -Unable to clear the API cache in distributed data plane Gateways from the control plane Dashboard - -Addressed a bug where clearing the API cache from the Tyk Dashboard failed to invalidate the cache in distributed data -plane gateways. This fix requires MDCB 2.5.1. - -
      -
    • -
    • -
      -Unable to load custom Go plugins compiled in RHEL 8 - -Fixed a bug where custom Go plugins compiled in RHEL8 environments were unable to load into Tyk Gateway due to a -discrepancy in base images between the Gateway and Plugin Compiler environments. This fix aligns the plugin compiler -base image with the gateway build environment, enabling seamless plugin functionality on RHEL8 environments. - -
      -
    • -
    • -
      -Removed unused packages from plugin compiler image - -Removed several unused packages from the plugin compiler image. The packages include: docker, buildkit, ruc, sqlite, -curl, wget, and other build tooling. The removal was done in order to address invalid CVE reporting, none of the removed -dependencies are used to provide plugin compiler functionality. - -
      -
    • -
    - ---- - -## 5.3.0 Release Notes - -### Release Date 5 April 2024 - -### Breaking Changes - - - -**Attention: Please read this section carefully** - -#### Tyk OAS APIs Compatibility Caveats - Tyk OSS {#TykOAS-v5.3.0} - -This upgrade transitions Tyk OAS APIs out of [Early Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}). - -For licensed deployments (Tyk Cloud, Self Managed including MDCB), please refer to the [release notes of Tyk Dashboard 5.3.0]({{}}). - -- **Out of Early Access** - - This means that from now on, all Tyk OAS APIs will be backwards compatible and in case of a downgrade from v5.3.X to - v5.3.0, the Tyk OAS API definitions will always work. -- **Not Backwards Compatible** - - Tyk OAS APIs in Tyk Gateway v5.3.0 are not [backwards compatible](https://tinyurl.com/3xy966xn). This means that the - new Tyk OAS API format created by Tyk Gateway v5.3.X does not work with older versions of Tyk Gateway, i.e. you - cannot export these API definitions from a v5.3.X Tyk Gateway and import them to an earlier version. - - The upgrade is **not reversible**, i.e. you cannot use version 5.3.X Tyk OAS API definitions with an older version - of Tyk Dashboard. - - This means that if you wish to downgrade or revert to your previous version of Tyk, you will need to restore these - API definitions from a backup. Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed - instructions on backup before upgrading to v5.3.0. - - If you are not using Tyk OAS APIs, Tyk will maintain backward compatibility standards. -- **Not Forward Compatible** - - Tyk OAS API Definitions prior to v5.3.0 are not [forward compatible](https://tinyurl.com/t3zz88ep) with Tyk Gateway - v5.3.X. - - This means that any Tyk OAS APIs created in any previous release (4.1.0-5.2.x) cannot work with the new Tyk Gateway - v5.3.X without being migrated to its [latest format]({{}}). -- **After upgrade (the good news)** - - Tyk OAS API definitions that are part of the file system **are not automatically converted** to the [new - format]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}). Subsequently, users will have to manually update their - OAS API Definitions to the new format. - - If users upgrade to 5.3.0, create new Tyk OAS APIs and then decide to rollback then the upgrade is non-reversible. - Reverting to your previous version requires restoring from a backup. - -**Important:** Please go to the [backup]({{< ref "#upgrade-instructions" >}}) section for detailed instructions on -backup before upgrading to v5.3.0 - -#### Python plugin support - -Starting from Tyk Gateway version v5.3.0, Python is no longer bundled with the official Tyk Gateway Docker image to -reduce exposure to security vulnerabilities in the Python libraries. - -Whilst the Gateway still supports Python plugins, you must [extend -the image]({{< ref "plugins/supported-languages/rich-plugins/python/python#install-the-python-development-packages" >}}) -to add the language support. - - - - - - - -### Dependencies {#dependencies-5.3.0} - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | ------------------------------------------------------------------ | ----------------------- | -| 5.3.0 | MDCB v2.5 | MDCB v2.4.2 | -| | Operator v0.17 | Operator v0.16 | -| | Sync v1.4.3 | Sync v1.4.3 | -| | Helm Chart (tyk-stack, tyk-oss, tyk-dashboard, tyk-gateway) v1.3.0 | Helm all versions | -| | EDP v1.8.3 | EDP all versions | -| | Pump v1.9.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------------- | --------------------- | ------------------------------------------------------------------------------------------ | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - - - -In 5.3.0, we have simplified the configuration of response transform middleware. We encourage users to embrace the -`global_headers` mechanism as the `response_processors.header_injector` is now an optional setting and will be removed -in a future release. - - - - -### Upgrade instructions {#upgrade-5.3.0} - -If you are upgrading to 5.3.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -**The following steps are essential to follow before upgrading** Tyk Cloud (including Hybrid Gateways) and Self Managed -users - Please refer to the [release notes of Tyk Dashboard 5.3.0]({{}}). - -For OSS deployments - - -1. Backup Your environment using the [usual guidance]({{}}) documented with every release (this includes - backup config file and database). -2. Backup all your API definitions (Tyk OAS API and Classic Definitions) by saving your API and policy files or by - exporting them using the `GET /tyk/apis` and `Get /tyk/policies` -3. Performing the upgrade - follow the instructions in the [upgrade - guide]({{}}) when upgrading Tyk. - -### Release Highlights - - - -We’re thrilled to announce the release of 5.3.0, an update packed with exciting features and significant fixes to -elevate your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the detailed -[changelog](#Changelog-v5.3.0) below. - -#### Tyk OAS Feature Maturity - -Tyk OAS is now out of [Early -Access]({{< ref "developer-support/special-releases-and-features/early-access-features" >}}) as we have reached feature maturity. -You are now able to make use of the majority of Tyk Gateway's features from your Tyk OAS APIs, so they are a credible alternative -to the legacy Tyk Classic APIs. - -From Tyk 5.3.0 we support the following features when using Tyk OAS APIs with Tyk Gateway: - -- Security - - - All Tyk-supported client-gateway authentication methods including custom auth plugins - - Automatic configuration of authentication from the OpenAPI description - - Gateway-upstream mTLS - - CORS - -- API-level (global) middleware including: - - - Response caching - - Custom plugins for PreAuth, Auth, PostAuth, Post and Response hooks - - API-level rate limits - - Request transformation - headers - - Response transformation - headers - - Service discovery - - Internal API - -- Endpoint-level (per-path) middleware including: - - - Request validation - headers and body (automatically configurable from the OpenAPI description) - - Request transformation - method, headers and body - - Response transformation - headers and body - - URL rewrite and internal endpoints - - Mock responses (automatically configurable from the OpenAPI description) - - Response caching - - Custom Go Post-Plugin - - Request size limit - - Virtual endpoint - - Allow and block listing - - Do-not-track - - Circuit breakers - - Enforced timeouts - - Ignore authentication - -- Observability - - - Open Telemetry tracing - - Detailed log recording (include payload in the logs) - - Do-not-track endpoint - -- Governance - - API Versioning - -#### Enhanced KV storage of API Definition Fields - -Tyk is able to store configuration data from the API definition in KV systems, such as Vault and Consul, and then -reference these values during configuration of the Tyk Gateway or APIs deployed on the Gateway. Previously this was -limited to the Target URL and Listen Path but from 5.3.0 you are able to store any `string` type field from your API -definition, unlocking the ability to store sensitive information in a centralised location. For full details check out -the [documentation]({{< ref "tyk-configuration-reference/kv-store" >}}) of this powerful feature. - -#### Redis v7.x Compatibility - -We have upgraded Redis driver [go-redis](https://github.com/redis/go-redis) to v9. Subsequently, Tyk 5.3 is compatible -with Redis v7.x. - -#### Gateway and Component Upgrades - -We've raised the bar with significant upgrades to our Gateway and components. Leveraging the power and security of Go -1.21, upgrading Sarama to version 1.41.0 and enhancing the GQL engine with Go version 1.19, we ensure improved -functionality and performance to support your evolving needs seamlessly. - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.3.0) - - ```bash - docker pull tykio/tyk-gateway:v5.3.0 - ``` -- Helm charts - - [tyk-charts v1.3]({{< ref "product-stack/tyk-charts/release-notes/version-1.3.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.3.0} - - - -#### Added - - -
      -
    • -
      -Additional features now supported when working with Tyk OAS APIs - -The following features have been added in 5.3.0 to bring Tyk OAS to feature maturity: - -- Detailed log recording (include payload in the logs) -- Enable Open Telemetry tracing -- Context variables available to middleware chain -- API-level header transforms (request and response) -- Endpoint-level cache -- Circuit breakers -- Track endpoint logs for inclusion in Dashboard aggregated data -- Do-not-track endpoint -- Enforced upstream timeouts -- Configure endpoint as Internal, not available externally -- URL rewrite -- Per-endpoint request size limit -- Request transformation - method, header -- Response transformation - header -- Custom domain certificates - -
      -
    • -
    • -
      -Enhanced KV storage for API Definition fields - -We have implemented support for all `string` type fields in the Tyk OAS and Tyk Classic API Definitions to be stored in -separate KV storage, including Hashicorp Consul and Vault. - -
      -
    • -
    • -
      -Support for Redis v7.0.x - -Tyk 5.3 refactors Redis connection logic by using -[storage v1.2.2](https://github.com/TykTechnologies/storage/releases/tag/v1.2.2), which integrates with -[go-redis](https://github.com/redis/go-redis) v9. Subsequently, Tyk 5.3 supports Redis v7.0.x. - -
      -
    • -
    • -
      -Clearer error messages from GQL engine for invalid variables (JSON Schema) - -Some of the error messages generated by the GQL engine were unclear for users, especially relating to variable -validation. The errors have been changed and are now much more clearer and helpful in cases where engine processing -fails. - -
      -
    • -
    • -
      -Upgraded GQL Engine's Go version to 1.19 - -Upgraded Go version for GraphQL engine to [1.19](https://go.dev/doc/go1.19). - -
      -
    • -
    • -
      -Enhanced semantic conventions for GraphQL spans in Gateway - -We've added OpenTelemetry semantic conventions for GraphQL spans. Spans will now incorporate ``, -`` and `` tags. - -
      -
    • -
    • -
      -Added support for detailed_tracing to be configured via GQL API definitions - -GraphQL APIs can now use the `detailed_tracing` setting in an API definition. With that property set to `true` any call -to a GraphQL API will create a span for each middleware involved in request processing. While it is set to `false`, only -two spans encapsulating the entire request lifecycle will be generated. This setting helps to reduce the size of traces, -which can get large for GraphQL APIs. Furthermore, this gives users an option to customize the level of tracing detail -to suit their monitoring needs. - -
      -
    • -
    • -
      -Enhanced OpenTelemetry trace generation for UDG with mixed data sources - -This release introduces an enhanced trace generation system for Universal Data Graph (UDG). It consolidates all spans -from both Tyk-managed and external data source executions into a single trace when used together. Furthermore, when UDG -solely utilizes Tyk-managed data sources, trace management is simplified and operational visibility is improved. - -
      -
    • -
    • -
      -Disabled normalize and validate in GraphQL Engine - -For GraphQL requests normalization and validation has been disabled in the GraphQL engine. Both of those actions were -performed in the Tyk Gateway and were unnecessary to be done again in the engine. This enhances performance slightly and -makes detailed OTel traces concise and easier to read. - -
      -
    • -
    • -
      -Enhanced OAS-to-UDG converter handling of arrays of objects in OpenAPI Documents - -The Tyk Dashboard API endpoint _/api/data-graphs/data-sources/import_ now handles OpenAPI schemas with arrays of -objects. This addition means users can now import more complex OpenAPI documents and transform them into UDG -configurations. - -
      -
    • -
    • -
      -OAS-to-UDG converter support for allOf/anyOf/oneOf keywords - -The OAS-to-UDG converter now seamlessly handles OpenAPI descriptions that utilize the _allOf_, _anyOf_ and _oneOf_ -keywords, ensuring accurate and comprehensive conversion to a Tyk API definition. The feature expands the scope of -OpenAPI documents that the converter can handle and allows our users to import REST API data sources defined in OAS in -more complex cases. - -
      -
    • -
    • -
      -Improved UDG's handling of unnamed object definitions in OpenAPI descriptions - -The OAS-to-UDG converter can now create GraphQL types even if an object's definition doesn’t have an explicit name. - -
      -
    • -
    • -
      -Refined handling of arrays of objects in endpoint responses by OAS-to-UDG Converter - -The OAS-to-UDG converter was unable to handle a document properly if an object within the OpenAPI description had no -properties defined. This limitation resulted in unexpected behavior and errors during the conversion process. The tool -will now handle such cases seamlessly, ensuring a smoother and more predictable conversion process. - -
      -
    • -
    • -
      -OAS-to-UDG converter support for enumerated types in OpenAPI descriptions - -Previously OAS-to-UDG converter had limitations in handling enums from OpenAPI descriptions, leading to discrepancies -and incomplete conversions. With the inclusion of enum support, the OAS converter now seamlessly processes enums defined -in your OpenAPI descriptions, ensuring accurate and complete conversion to GraphQL schemas. - -
      -
    • -
    • -
      -Expanded handling of HTTP Status Code ranges by OAS-to-GQL converter - -OAS-to-UDG converter can now handle HTTP status code ranges that are defined by the OpenAPI Specification. This means -that code ranges defined as 1XX, 2XX, etc will be correctly converted by the tool. - -
      -
    • -
    • -
      -Added support for custom rate limit keys - -We have added the capability for users to define a [custom rate limit -key]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys" >}}) -within session metadata. This increases flexibility with rate limiting, as the rate limit can be assigned to different entities -identifiable from the session metadata (such as a client app or organization) and is particularly useful for users of Tyk's -Enterprise Developer Portal. - -
      -
    • -
    - -#### Changed - - -
      -
    • -
      -Prefetch session expiry information from MDCB to reduce API call duration in case Gateway is temporarily disconnected from MDCB - -Previously, when operating in a worker configuration (in the data plane), the Tyk Gateway fetched session expiry -information from the control plane the first time an API was accessed for a given organization. This approach led to a -significant issue: if the MDCB connection was lost, the next attempt to consume the API would incur a long response -time. This delay, typically around 30 seconds, was caused by the Gateway waiting for the session-fetching operation to -time out, as it tried to communicate with the now-inaccessible control plane. - -
      Now, the worker gateway fetches the session expiry information up front, while there is an active connection to -MDCB. This ensures that this data is already available locally in the event of an MDCB disconnection. - -
      This change significantly improves the API response time under MDCB disconnection scenarios by removing the need for -the Gateway to wait for a timeout when attempting to fetch session information from the control plane, avoiding the -previous 30-second delay. This optimization enhances the resilience and efficiency of Tyk Gateway in distributed -environments. - -
      -
    • -
    • -
      -Changes to the Tyk OAS API Definition - -We have made some changes to the Tyk OAS API Definition to provide a stable contract that will now be under -breaking-change control for future patches and releases as Tyk OAS moves out of Early Access. Changes include the -removal of the unnecessary `slug` field and simplification of the custom plugin contract. - -
      -
    • -
    • -
      -Optimized Gateway memory usage and reduced network request payload with Redis Rate Limiter - -We have optimized the allocation behavior of our sliding window log rate limiter implementation ([Redis -Rate Limiter]({{< ref "getting-started/key-concepts/rate-limiting#redis-rate-limiter" >}})). Previously the complete -request log would be retrieved from Redis. With this enhancement only the count of the requests in the window is -retrieved, optimizing the interaction with Redis and decreasing the Gateway memory usage. - -
      -
    • -
    - -#### Fixed - - -
      -
    • -
      -Improved OAuth token management in Redis - -In this release, we fixed automated token trimming in Redis, ensuring efficient management of OAuth tokens by -implementing a new hourly job within the Gateway and providing a manual trigger endpoint. - -
      -
    • -
    • -
      -Tyk Gateway now validates RFC3339 Date-Time Formats - -We fixed a bug in the Tyk OAS Validate Request middleware where we were not correctly validating date-time format -schema, which could lead to invalid date-time values reaching the upstream services. - -
      -
    • -
    • -
      -Inaccurate Distributed Rate Limiting (DRL) behavior on Gateway startup - -Fixed an issue when using the Distributed Rate Limiter (DRL) where the Gateway did not apply any rate limit until a DRL -notification was received. Now the rate of requests will be limited at 100% of the configured rate limit until the DRL -notification is received, after which the limit will be reduced to an even share of the total (i.e. 100% divided by the -number of Gateways) per the rate limit algorithm design. - -
      -
    • -
    • -
      -Duplicate fields added by OAS-to-UDG converter - -Fixed an issue where the OAS-to-UDG converter was sometimes adding the same field to an object type many times. This -caused issues with the resulting GQL schema and made it non-compliant with GQL specification. - -
      -
    • -
    • -
      -Gateway issue processing queries with GQL Engine - -Fixed an issue where the Gateway attempted to execute a query with GQL engine version 1 (which lacks OTel support), -while simultaneously trying to validate the same query with the OpenTelemetry (OTel) supported engine. It caused the API -to fail with an error message "Error socket hang up". Right now with OTel enabled, the gateway will enforce GQL engine -to default to version 2, so that this problem doesn't occur anymore. - -
      -
    • -
    • -
      -Handling arrays of objects in endpoint responses by OAS-to-UDG converter - -The OAS-to-UDG converter now effectively handles array of objects within POST paths. Previously, there were instances -where the converter failed to accurately interpret and represent these structures in the generated UDG configuration. - -
      -
    • -
    • -
      -GQL Playground issues related to encoding of request response - -An issue was identified where the encoding from the GQL upstream cache was causing readability problems in the response -body. Specifically, the upstream GQL cache was utilizing brotli compression and not respecting the Accept-Encoding -header. Consequently, larger response bodies became increasingly unreadable for the GQL engine due to compression, -leading to usability issues for users accessing affected content. The issue has now been fixed by adding the brotli -encoder to the GQL engine. - -
      -
    • -
    • -
      -OAS-to-UDG converter issue with "JSON" return type - -OAS-to-UDG converter was unable to correctly process Tyk OAS API definitions where "JSON" was used as one of enum -values. This issue is now fixed and whenever "JSON" is used as one of enums in the OpenAPI description, it will get -correctly transformed into a custom scalar in GQL schema. - -
      -
    • -
    • -
      -Gateway Panic during API Edit with Virtual Endpoint - -Fixed an issue where the Gateway could panic while updating a Tyk OAS API with the Virtual Endpoint middleware -configured. - -
      -
    • -
    • -
      -Gateway panics during API Reload with JavaScript middleware bundle - -Fixed an issue where reloading a bundle containing JS plugins could cause the Gateway to panic. - -
      -
    • -
    • -
      -GraphQL introspection issue when Allow/Block List enabled - -Fixed an issue where the _Disable introspection_ setting was not working correctly in cases where field-based -permissions were set (allow or block list). It was not possible to introspect the GQL schema while introspection was -technically allowed but field-based permissions were enabled. Currently, Allow/Block list settings are ignored only for -introspection queries and introspection is only controlled by the _Disable introspection_ setting. - -
      -
    • -
    • -
      -Handling of objects without properties in OAS-to-UDG converter - -The OAS-to-UDG converter was unable to handle a document properly if an object within the OpenAPI description had no -properties defined. This limitation resulted in unexpected behavior and errors during the conversion process. The tool -will now handle such cases seamlessly, ensuring a smoother and more predictable conversion process - -
      -
    • -
    • -
      -Fixed memory leak issue in Tyk Gateway v5.2.4 - -Addressed a memory leak issue in Tyk Gateway linked to a logger mutex change introduced in v5.2.4. Reverting these -changes has improved connection management and enhanced system performance. - -
      -
    • - -
    - -#### Security Fixes - - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security -vulnerabilities: - -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - - - - - - - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - - - -- [Tyk Gateway API]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating -to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.4.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.4.md deleted file mode 100644 index 725c3e322b..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.4.md +++ /dev/null @@ -1,369 +0,0 @@ ---- -title: Tyk Gateway 5.4 Release Notes -date: 2024-03-27T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.4.X series." -tags: ["Tyk Gateway", "Release notes", "v5.4", "5.4.0", "5.4", "changelog"] ---- - - - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.4.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.4.0 Release Notes - -### Release Date 2 July 2024 - -### Breaking Changes - -**Attention: Please read this section carefully** - -We have fixed a bug in the way that Tyk calculates the [key-level rate limit]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}) when multiple policies are applied to the same key. This fix alters the logic used to calculate the effective rate limit and so may lead to a different rate limit being applied to keys generated from your existing policies. See the [change log](#fixed) for details of the change. - -### Dependencies {#dependencies-5.4.0} - - -#### Compatibility Matrix For Tyk Components - -| Gateway Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.4.0 | MDCB v2.6 | MDCB v2.4.2 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v1.5.0 | Helm all versions | -| | EDP v1.9 | EDP all versions | -| | Pump v1.10.0 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -The above table needs reviewing and updating if necessary - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | -| [Go](https://go.dev/dl/) | 1.19 (GQL), 1.21 (GW) | 1.19 (GQL), 1.21 (GW) | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -**The above table needs reviewing and updating if necessary** - -### Deprecations - -There are no deprecations in this release. - - - - -### Upgrade instructions {#upgrade-5.4.0} -If you are upgrading to 5.4.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -Add upgrade steps here if necessary. - -### Release Highlights - -We're thrilled to introduce exciting enhancements in Tyk Gateway 5.4, aimed at improving your experience with Tyk Gateway. For a comprehensive list of changes, please refer to the change log below. - -#### Enhanced Rate Limiting Strategies - -We've introducing a [Rate Limit Smoothing]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) option for the spike arresting Redis Rate Limiter to give the upstream time to scale in response to increased request rates. - -#### Fixed MDCB Issue Relating To Replication Of Custom Keys To Dataplanes - -Resolved an issue encountered in MDCB environments where changes to custom keys made via the Dashboard were not properly replicated to dataplanes. The issue impacted both key data and associated quotas, in the following versions: - -- 5.0.4 to 5.0.12 -- 5.1.1 and 5.1.2 -- 5.2.0 to 5.2.6 -- 5.3.0 to 5.3.2 - -##### Action Required -Customers should clear their edge Redis instances of any potentially affected keys to maintain data consistency and ensure proper synchronization across their environments. Please refer to the item in the [fixed](#fixed) section of the changelog for recommended actions. - -#### Fixed Window Rate Limiter - -Ideal for persistent connections with load-balanced gateways, the [Fixed Window Rate Limiter]({{< ref "/getting-started/key-concepts/rate-limiting#fixed-window-rate-limiter" >}}) algorithm mechanism ensures fair handling of requests by allowing only a predefined number to pass per rate limit window. It uses a simple shared counter in Redis so requests do not need to be evenly balanced across the gateways. - -#### Event handling with Tyk OAS - -We’ve added support for you to [register webhooks]({{< ref "/basic-config-and-security/report-monitor-trigger-events/webhooks" >}}) with your Tyk OAS APIs so that you can handle events triggered by the Gateway, including circuit breaker and quota expiry. You can also assign webhooks to be fired when using the new [smoothing rate limiter]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) to notify your systems of ongoing traffic spikes. - -#### Enhanced Header Handling in GraphQL APIs - -Introduced a features object in API definitions for GQL APIs, including the `use_immutable_headers` attribute. This allows advanced header control, enabling users to add new headers, rewrite existing ones, and selectively remove specific headers. Existing APIs will have this attribute set to `false` by default, ensuring no change in behavior. For new APIs, this attribute is true by default, facilitating smoother migration and maintaining backward compatibility. - -### Downloads -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.4.0) - - ```bash - docker pull tykio/tyk-gateway:v5.4.0 - ``` -- Helm charts - - [tyk-charts v1.5]({{< ref "/product-stack/tyk-charts/release-notes/version-1.5.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.4.0} - - -#### Added - -
      -
    • -
      -Implemented Fixed Window Rate Limiting for load balancers with keep-alives - -Introduced a [Fixed Window Rate Limiting]({{< ref "/getting-started/key-concepts/rate-limiting#fixed-window-rate-limiter" >}}) mechanism to handle rate limiting for load balancers with keep-alives. This algorithm allows the defined number of requests to pass for every rate limit window and blocks any excess requests. It uses a simple shared counter in Redis to count requests. It is suitable for situations where traffic towards Gateways is not balanced fairly. To enable this rate limiter, set `enable_fixed_window_rate_limiter` in the gateway config or set the environment variable `TYK_GW_ENABLEFIXEDWINDOWRATELIMITER=true`. -
      -
    • -
    • -
      -Introduced Rate Limit Smoothing for scaling - -Implemented [Rate Limit Smoothing]({{< ref "/getting-started/key-concepts/rate-limiting#rate-limit-smoothing" >}}) as an extension to the existing Redis Rate Limiter to gradually adjust the rate based on smoothing configuration. Two new Gateway events have been created (`RateLimitSmoothingUp` and `RateLimitSmoothingDown`) which will be triggered as smoothing occurs. These can be used to assist with auto-scaling of upstream capacity during traffic spikes. -
      -
    • -
    • -
      -Introduced ‘use_immutable_headers’ for Advanced Header Control in GraphQL APIs - -We've added the `use_immutable_headers` option to the GraphQL API configuration, offering advanced header transformation capabilities. When enabled, users can add new headers, rewrite existing ones, and selectively remove specific headers, allowing granular control without altering the original request. Existing APIs will default to `false`, maintaining current behavior until ready for upgrade. -
      -
    • -
    • -
      -Enhanced manual schema addition for GQL APIs - -Introduced an option for users to manually provide GQL schemas when creating APIs in Tyk, eliminating the dependency on upstream introspection. This feature enables the creation and editing of GQL APIs in Tyk even when upstream introspection is unavailable, providing flexibility for schema management as upstream configurations evolve over time. -
      -
    • -
    • -
      -Introduced Tyk v3 GraphQL Engine in Gateway - -The new GraphQL engine, version 3-preview, is now available in Tyk Gateway. It can be used for any GQL API by using the following enum in raw API definition: *"version": "3-preview"*. This experimental version offers optimized GQL operation resolution, faster response times, and a more efficient data loader. It is currently not recommended for production use and will be stabilised in future releases, eventually becoming the default for new GQL APIs in Tyk. -
      -
    • -
    • -
      -Introduced features Object in API Definition for GQL APIs - -Enhanced request headers handling in API definitions for GQL APIs by introducing a *features* object. Users can now set the `use_immutable_headers` attribute, which defaults to false for existing APIs, ensuring no change in header behavior. For new APIs, this attribute is `true` by default, facilitating smoother migration and maintaining backwards compatibility. -
      -
    • -
    • -
      -New Tyk OAS features - -We’ve added some more features to the Tyk OAS API, moving closer to full parity with Tyk Classic. In this release we’ve added controls that allow you: to enable or prevent generation of traffic logs at the API-level and to enable or prevent the availability of session context to middleware. We’ve also added the facility to register webhooks that will be fired in response to Gateway events. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Resolved an issue where changes to custom keys were not properly replicated to dataplanes - -Resolved a critical issue affecting MDCB environments, where changes to custom keys made via the dashboard were not properly replicated to dataplanes. This affected both the key data and associated quotas. This issue was present in versions: -- 5.0.4 to 5.0.12 -- 5.1.1 and 5.1.2 -- 5.2.0 to 5.2.6 -- 5.3.0 to 5.3.2 - -**Action Required** - -Customers are advised to clear their edge Redis instances of any keys that might have been affected by this bug to ensure data consistency and proper synchronization across their environments. There are several methods available to address this issue: - -1. **Specific Key Deletion via API**: To remove individual buggy keys, you can use the following API call: - -```bash -curl --location --request DELETE 'http://tyk-gateway:{tyk-hybrid-port}/tyk/keys/my-custom-key' \ --header 'X-Tyk-Authorization: {dashboard-key}' -``` - -Replace `{tyk-hybrid-port}`, `my-custom-key` and `{dashboard-key}` with your specific configuration details. This method is safe and recommended for targeted removals without affecting other keys. - -2. **Bulk Key Deletion Using Redis CLI**: For environments with numerous affected keys, you might consider using the Redis CLI to remove keys en masse: - -```bash -redis-cli --scan --pattern 'apikey-*' | xargs -L 1 redis-cli del -redis-cli --scan --pattern 'quota-*' | xargs -L 1 redis-cli del -``` - -This method can temporarily impact the performance of the Redis server, so it should be executed during a maintenance window or when the impact on production traffic is minimal. - -3. **Complete Redis Database Flush**: If feasible, flushing the entire Redis database offers a clean slate: - -```bash -redis-cli FLUSHALL ASYNC -``` - -**Implications** -Regardless of the chosen method, be aware that quotas will be reset and will need to resynchronize across the system. This may temporarily affect reporting and rate limiting capabilities. -
      -
    • -
    • -
      -Resolved service discovery issue when using Consul - -Addressed an issue with service discovery where an IP returned by Consul wasn't parsed correctly on the Gateway side, leading to unexpected errors when proxying requests to the service. Typically, service discovery returns valid domain names, which did not trigger the issue. -
      -
    • -
    • -
      -Corrected naming for semantic conventions attributes in GQL Spans - -Fixed an issue where GQL Open Telemetry semantic conventions attribute names that lacked the 'graphql' prefix, deviating from the community standard. All attributes now have the correct prefix. -
      -
    • -
    • -
      -Fixed missing GraphQL OTel attributes in spans on request validation failure - -Corrected an issue where GraphQL OTel attributes were missing from spans when request validation failed in cases where `detailed_tracing` was set to `false`. Traces now include GraphQL attributes (operation name, type, and document), improving debugging for users. -
      -
    • -
    • -
      -Resolved Gateway panic with Persist GraphQL Middleware - -Fixed a gateway panic issue observed by users when using the *Persist GQL* middleware without defined arguments. The gateway will no longer throw panics in these cases. -
      -
    • -
    • -
      -Resolved issue with GraphQL APIs handling OPTIONS requests - -Fixed an issue with GraphQL API's Cross-Origin Resource Sharing (CORS) configuration, which previously caused the API to fail in respecting CORS settings. This resulted in an inability to proxy requests to upstream servers and handle OPTIONS/CORS requests correctly. With this fix, users can now seamlessly make requests, including OPTIONS method requests, without encountering the previously reported error. -
      -
    • -
    • -
      -Resolved conflict with multiple APIs sharing listen path on different domains - -Fixed an issue where the Gateway did not respect API domain settings when there was another API with the same listen path but no domain. This could lead to the custom domain API not functioning correctly, depending on the order in which APIs were loaded. APIs with custom domains are now prioritised before those without custom domains to ensure that the custom domain is not ignored. -
      -
    • -
    • -
      -Resolved nested field mapping issue in Universal Data Graph - -Addressed a problem with nested field mapping in UDG for GraphQL (GQL) operations. Previously, querying a single nested field caused an error, while including another *normal* field from the same level allowed the query to succeed. This issue has been fixed to ensure consistent behavior regardless of the query composition. -
      -
    • -
    • -
      -Fixed an error in the calculation of effective rate limit from multiple policies - -Fixed a long-standing bug in the algorithm used to determine the effective rate limit when multiple policies are applied to a key. If more than one policy is applied to a key then Tyk will apply the highest request rate permitted by any of the policies that defines a rate limit. - -Rate limits in Tyk are defined using two elements: `rate`, which is the number of requests and `per`, which is the period over which those requests can be sent. So, if `rate` is 90 and `per` is 30 seconds for a key, Tyk will permit a maximum of 90 requests to be made using the key in a 30 second period, giving an effective maximum of 180 requests per minute (or 3 rps). - -Previously, Tyk would take the highest `rate` and the highest `per` from the policies applied to a key when determining the effective rate limit. So, if policy A had `rate` set to 90 and `per` set to 30 seconds (3rps) while policy B had `rate` set to 100 and `per` set to 10 seconds (10rps) and both were applied to a key, the rate limit configured in the key would be: `rate = 100` and `per = 30` giving a rate of 3.33rps. - -With the fix applied in Tyk 5.4.0, the Gateway will now apply the highest effective rate to the key - so in this example, the key would take the rate limit from policy B: `rate = 100` and `per = 10` (10rps). - -Note that this corrected logic is applied when access keys are presented in API requests. If you are applying multiple policies to keys, there may be a change in the effective rate limit when using Tyk 5.4.0 compared with pre-5.4.0 versions. -
      -
    • -
    - - -#### Security Fixes - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security vulnerabilities: -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - - ---- - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [Tyk Gateway API]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ -Please visit our [Developer Support]({{< ref "/frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.5.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.5.md deleted file mode 100644 index fc20a55d0d..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.5.md +++ /dev/null @@ -1,398 +0,0 @@ ---- -title: Tyk Gateway 5.5 Release Notes -date: 2024-03-27T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.5.X series." -tags: ["Tyk Gateway", "Release notes", "changelog", "v5.5", "5.5", "5.5.0", "5.5.1", "5.5.2"] ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.5.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.5.2 Release Notes - -### Release Date 03 October 2024 - -### Release Highlights -This release replaces Tyk Gateway 5.5.1 which was accidentally released as a non-distroless image. - - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.5.2} - -#### Compatibility Matrix For Tyk Components - -| Gateway Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.2 | MDCB v2.7 | MDCB v2.4.2 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v2.0.0 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | -| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.5.2} -If you are upgrading to 5.5.2, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.2) - - ```bash - docker pull tykio/tyk-gateway:v5.5.2 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.0.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - ---- - -## 5.5.1 Release Notes - -### Release Date 26 September 2024 - -### Release Highlights -This release fixes some issues related to the way that Tyk performs URL path matching, introducing two new Gateway configuration options to control path matching strictness. - -For a comprehensive list of changes, please refer to the detailed [changelog](#Changelog-v5.5.1) below. - -### Breaking Changes - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.5.1} - -#### Compatibility Matrix For Tyk Components - -| Gateway Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.1 | MDCB v2.7 | MDCB v2.4.2 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v2.0.0 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | -| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions {#upgrade-5.5.1} -If you are upgrading to 5.5.1, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.1) - - ```bash - docker pull tykio/tyk-gateway:v5.5.1 - ``` -- Helm charts - - [tyk-charts v2.0.0]({{< ref "product-stack/tyk-charts/release-notes/version-2.0.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.5.1} - -#### Added - -
      -
    • -
      -Implemented Gateway configuration options to set URL path matching strictness - -We have introduced two new options in the `http_server_options` [Gateway configuration]({{< ref "tyk-oss-gateway/configuration#http_server_options" >}}) that will enforce prefix and/or suffix matching when Tyk performs checks on whether middleware or other logic should be applied to a request: - -- `enable_path_prefix_matching` ensures that the start of the request path must match the path defined in the API definition -- `enable_path_suffix_matching` ensures that the end of the request path must match the path defined in the API definition -- combining `enable_path_prefix_matching` and `enable_path_suffix_matching` will ensure an exact (explicit) match is performed - -These configuration options provide control to avoid unintended matching of paths from Tyk's default *wildcard* match. Use of regex special characters when declaring the endpoint path in the API definition will automatically override these settings for that endpoint. - -Tyk recommends that exact matching is employed, but both options default to `false` to avoid introducing a breaking change for existing users. - -The example Gateway configuration file `tyk.conf.example` has been updated to set the recommended *exact matching* with: - - - `http_server_options.enable_path_prefix_matching = true` - - `http_server_options.enable_path_suffix_matching = true` - - `http_server_options.enable_strict_routes = true` -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Incorrectly configured regex in policy affected Path-Based Permissions authorization - -Fixed an issue when using granular [Path-Based Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) in access policies and keys that led to authorization incorrectly being granted to endpoints if an invalid regular expression was configured in the key/policy. Also fixed an issue where path-based parameters were not correctly handled by Path-Based Permissions. Now Tyk's authorization check correctly handles both of these scenarios granting access only to the expected resources. -
      -
    • -
    • -
      -Missing path parameter can direct to the wrong endpoint - -Fixed an issue where a parameterized endpoint URL (e.g. `/user/{id}`) would be invoked if a request is made that omits the parameter. For example, a request to `/user/` will now be interpreted as a request to `/user` and not to `/user/{id}`. -
      -
    • -
    - ---- - -## 5.5.0 Release Notes - -### Release Date 12 August 2024 - -### Release Highlights - -We are thrilled to introduce Tyk Gateway 5.5, bringing advanced rate-limiting capabilities, enhanced certificate authentication, and performance optimizations. For a comprehensive list of changes, please refer to the [changelog]({{< ref "#Changelog-v5.5.0">}}) below. - -#### Per Endpoint Rate Limiting - -Now configure rate limits at the endpoint level for both [Tyk OAS]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas" >}}) and [Tyk Classic APIs]({{< ref "product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic" >}}), providing granular protection for upstream services against overloading and abuse. - -#### Root CA Support for Client Certificates - -Simplify certificate management with support for root Certificate Authority (CA) certificates, enabling clients to authenticate using certificates signed by the [configured root CA]({{< ref "/api-management/authentication-authorization#faq" >}}). - -#### Optimised AST Document Handling - -Experience improved performance with optimised creation and usage of Abstract Syntax Tree (AST) documents in our GQL library, reducing memory usage and enhancing efficiency. - -### Breaking Changes - -Docker images are now based on [distroless](https://github.com/GoogleContainerTools/distroless). No shell is shipped in the image. - -### Dependencies {#dependencies-5.5.0} - - -#### Compatibility Matrix For Tyk Components - -| Gateway Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.5.0 | MDCB v2.7 | MDCB v2.4.2 | -| | Operator v0.18 | Operator v0.17 | -| | Sync v1.5 | Sync v1.4.3 | -| | Helm Chart v1.6 | Helm all versions | -| | EDP v1.10 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | -| [Go](https://go.dev/dl/) | 1.21 | 1.21 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.21 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - - - - -### Upgrade instructions {#upgrade-5.5.0} -If you are upgrading to 5.5.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.5.0) - - ```bash - docker pull tykio/tyk-gateway:v5.5.0 - ``` -- Helm charts - - [tyk-charts v1.6]({{< ref "/product-stack/tyk-charts/release-notes/version-1.6.md" >}}) -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.5.0} - - -#### Added - -
      -
    • -
      -Added root CA support for client certificate authentication - -We've added support for you to register Certificate Authority (CA) certificates in your API definitions when using static mutual TLS (mTLS). Tyk can now authenticate clients presenting certificates signed by the registered root CA, simplifying certificate management for multiple clients sharing a common CA. -
      -
    • -
    • -
      -Optimised creation and usage of AST documents in GQL library - -Optimised the creation and usage of AST documents in our GQL library to reduce significant memory allocations caused by pre-allocations during initial creation. These optimizations free up resources more efficiently, minimising performance penalties with increased requests to the Gateway. -
      -
    • -
    • -
      -Implemented upstream endpoint rate limits - -Introduced new more granular controls for request rate limiting. Rate limits can now be configured at the endpoint level in Tyk OAS and Tyk Classic API definitions. -
      -
    • -
    • -
      -Improved handling of requests to non-existent versions of APIs when using URL path versioning - -When using the URL path to indicate the API version (for example `/v1/my-api`) it is common to strip the version identifier (e.g. `/v1`) from the path before proxying the request to the upstream. If the client doesn't provide any version identifier this could lead to an invalid target URL and failed requests, rather than correctly redirecting to the default version. We have introduced an optional configuration `url_versioning_pattern` where you can specify a regex that Tyk will use to identify if the URL contains a version identifier and avoiding the accidental stripping of valid upstream path. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Fixed an issue where transformation middleware could incorrectly be applied to Tyk OAS API endpoints with nested paths - -Fixed an issue when using Tyk OAS APIs where nested API endpoints, such as '/test' and '/test/abc', might incorrectly apply middleware from the parent path to the nested path. The fix ensures that API endpoint definitions are correctly ordered so that the standard behaviour of Tyk is followed, whereby path matching is performed starting from the longest path, preventing middleware misapplication and ensuring both the HTTP method and URL match accurately. -
      -
    • -
    • -
      -Optimised key creation process to avoid unnecessary Redis `DeleteRawKey` commands - -Previously, key creation or reset led to an exponential number of Redis `DeleteRawKey` commands; this was especially problematic for access lists with over 100 entries. The key creation sequence now runs only once, eliminating redundant deletion of non-existent keys in Redis. This optimization significantly reduces deletion events, enhancing performance and stability for larger access lists. -
      -
    • -
    • -
      -Resolved SSE streaming issue - -Addressed a bug that caused Server Side Event (SSE) streaming responses to be considered for caching, which required buffering the response and prevented SSE from being correctly proxied. -
      -
    • -
    • -
      -Fixed analytics latency reporting for MDCB setups - - Resolved an issue where Host and Latency fields (Total and Upstream) were not correctly reported for Tyk Gateways in MDCB data planes. The fix ensures accurate Host values and Latency measurements are now captured and displayed in the generated traffic logs. -
      -
    • -
    - - -#### Security Fixes - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security vulnerabilities: -- [CVE-2023-39325](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -- [CVE-2023-45283](https://nvd.nist.gov/vuln/detail/CVE-2023-45283) -
      -
    • -
    - - ---- - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [Tyk Gateway API]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "/frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.6.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.6.md deleted file mode 100644 index 893374aa46..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.6.md +++ /dev/null @@ -1,481 +0,0 @@ ---- -title: Tyk Gateway 5.6 Release Notes -date: 2024-10-08T15:51:11Z -description: - "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.6.X series." -tags: ["Tyk Gateway", "Release notes", "v5.6", "5.6.0", "5.6.1", "5.6", "changelog"] ---- - - - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.6.X displayed in a reverse chronological order** - -## Support Lifetime - - - -Our minor releases are supported until our next minor comes out. - ---- - -## 5.6.1 Release Notes - -### Release Date 18 October 2024 - -### Release Highlights - - - -This patch release for Tyk Gateway addresses critical stability issues for users running Tyk Gateway within the data -plane, connecting to the control plane or Tyk Hybrid. Affected users should upgrade immediately to version 5.6.1 to -avoid service interruptions and ensure reliable operations with the control plane or Tyk Hybrid. - -For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.6.1">}}) below. - -### Breaking Changes - - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.6.1} - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | -------------------------------- | ----------------------- | -| 5.6.1 | MDCB v2.7.1 | MDCB v2.4.2 | -| | Operator v1.0.0 | Operator v0.17 | -| | Sync v2.0 | Sync v1.4.3 | -| | Helm Chart v2.1 | Helm all versions | -| | EDP v1.11 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------- | -| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - - - -There are no deprecations in this release. - - - - -### Upgrade instructions {#upgrade-5.6.1} - -If you are upgrading to 5.6.1, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.6.1) - - ```bash - docker pull tykio/tyk-gateway:v5.6.1 - ``` -- Helm charts - - - [tyk-charts v2.1.0]({{}}) - -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.6.1} - - - -#### Fixed - - -
      -
    • -
      -Resolved gateway panic on reconnecting to MDCB control plane or Tyk Cloud - -In version 5.6.0, Tyk Gateway could encounter a panic when attempting to reconnect to the control plane after it was -restarted. This patch version has resolved this issue, ensuring stable connectivity between the gateway and control -plane following reconnections and reducing the need for manual intervention. - -
      -
    • -
    - - - - - -## 5.6.0 Release Notes - -### Release Date 10 October 2024 - -{{< note success >}} **Important Update**

    Date: 12 October 2024
    Topic: Gateway panic when -reconnecting to MDCB control plane or Tyk Cloud
    Workaround: Restart Gateway
    Affected Product: Tyk -Gateway as an Edge Gateway
    Affected versions: v5.6.0, v5.3.6, and v5.0.14
    Issue Description:
    - -

    We have identified an issue affecting Tyk Gateway deployed as a data plane connecting to the Multi-Data Center Bridge (MDCB) control plane or Tyk Cloud. In the above mentioned Gateway versions a panic may occur when gateway reconnect to the control plane after the control plane is restarted. -

    Our engineering team is actively working on a fix, and a patch (versions 5.6.1, 5.3.7, and 5.0.15) will be released soon.
    -Recommendations:
    -

      -
    • For users on versions 5.5.0, 5.3.5, and 5.0.13
      -We advise you to delay upgrading to the affected versions (5.6.0, 5.3.6, or 5.0.14) until the patch is available. - -
    • For users who have already upgraded to 5.6.0, 5.3.6, or 5.0.14 and are experiencing a panic in the gateway:
      -Restarting the gateway process will restore it to a healthy state. If you are operating in a *Kubernetes* environment, Tyk Gateway instance should automatically restart, which ultimately resolves the issue.
      -
    -

    We appreciate your understanding and patience as we work to resolve this. Please stay tuned for the upcoming patch release, which will address this issue. -{{< /note >}} - -### Release Highlights - - - -We are thrilled to announce new updates and improvements in Tyk 5.6.0, bringing more control, flexibility, and -performance. For a comprehensive list of changes, please refer to the detailed -[changelog]({{< ref "#Changelog-v5.6.0">}}) below. - -#### Per endpoint Rate Limiting for clients - -Building on the [per-endpoint upstream rate -limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have -now added [per-endpoint client -rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature allows -for more granular control over client consumption of API resources by associating the rate limit with the access key, -enabling you to manage and optimize API usage more effectively. - -#### Gateway logs in JSON format - -You can now output Tyk Gateway system logs in JSON format. This allows for easier integration with logging systems and -more structured log data. - -#### Go upgrade to 1.22 - -We’ve upgraded the Tyk Gateway to Golang 1.22, bringing improved performance, better security, and enhanced stability to -the core system. - -### Breaking Changes - - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.6.0} - - - -#### Compatibility Matrix For Tyk Components - - - -| Gateway Version | Recommended Releases | Backwards Compatibility | -| --------------- | -------------------------------- | ----------------------- | -| 5.6.0 | MDCB v2.7.1 | MDCB v2.4.2 | -| | Operator v1.0.0 | Operator v0.17 | -| | Sync v2.0 | Sync v1.4.3 | -| | Helm Chart v2.1 | Helm all versions | -| | EDP v1.11 | EDP all versions | -| | Pump v1.11 | Pump all versions | -| | TIB (if using standalone) v1.5.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------------------- | -| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3) | v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the -ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - - - -There are no deprecations in this release. - - - - -### Upgrade instructions {#upgrade-5.6.0} - -If you are upgrading to 5.6.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads - -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.6.0) - - ```bash - docker pull tykio/tyk-gateway:v5.6.0 - ``` -- Helm charts - - - [tyk-charts v2.1.0]({{}}) - -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.6.0} - - - -#### Added - - -

      -
    • -
      -Per endpoint client rate limiting - -Building on the [per-endpoint upstream rate -limits]({{< ref "getting-started/key-concepts/rate-limiting#api-level-rate-limiting" >}}) introduced in Tyk 5.5.0 we have -added [per-endpoint client -rate limits]({{< ref "getting-started/key-concepts/rate-limiting#key-level-rate-limiting" >}}). This new feature -provided users with more precise control over API resource consumption by linking rate limits to access keys, allowing -for better management and optimization of API usage. - -
      -
    • -
    • -
      -New option to generate Gateway system logs in JSON format - -The Tyk Gateway now supports logging in JSON format. To enable this feature, set the environment variable -`TYK_GW_LOGFORMAT` to `json`. If a different value is provided, the logs will default to the standard format. This -enhancement allows for improved log processing and integration with various monitoring tools. - -
      -
    • -
    - -#### Changed - - -
      -
    • -
      -Upgrade to Go 1.22 for Tyk Dashboard - -The Tyk Gateway and Tyk Dashboard have been upgraded from Golang 1.21 to Golang 1.22, bringing enhanced performance, -strengthened security, and access to the latest features available in the new Golang release. - -
      -
    • -
    - -#### Fixed - - -
      -
    • -
      -Data plane gateways sometimes didn't synchronise policies and APIs on start-up - -We have enhanced the initial synchronization of Data Plane gateways with the Control Plane to ensure more reliable -loading of policies and APIs on start-up. A synchronous initialization process has been implemented to avoid sync -failures and reduce the risk of service disruptions caused by failed loads. This update ensures smoother and more -consistent syncing of policies and APIs in distributed deployments. - -
      -
    • -
    • -
      -Quota wasn't respected under extreme load - -We have fixed an issue where the quota limit was not being consistently respected during request spikes, especially in -deployments with multiple gateways. The problem occurred when multiple gateways cached the current and remaining quota -counters at the end of quota periods. To address this, a distributed lock mechanism has been implemented, ensuring -coordinated quota resets and preventing discrepancies across gateways. - -
      -
    • - - -
    • -
      -Rate limits were incorrectly combined when multiple policies were applied to a key - -We have fixed an issue where API-level rate limits set in multiple policies were not correctly applied to the same key. -With this update, when multiple policies configure rate limits for a key, the key will now receive the highest rate -limit from the combined policies, ensuring proper enforcement of limits. - -
      -
    • -
    • -
      -Restored key creation performance to Gateway 4.0.12/4.3.3 levels - -We have addressed a performance regression where key creation for policies with a large number of APIs (100+) became -significantly slower in Tyk 4.0.13/5.0.1. The operation, which previously took around 1.5 seconds, has been taking over -20 seconds since versions 4.0.13/5.0.1. This issue has been resolved by optimizing Redis operations during key creation, -restoring the process to the previous duration, even with a large number of APIs in the policy. - -
      -
    • -
    - -#### Security Fixes - - - -
      -
    • -
      -High priority CVEs fixed - -Fixed the following high priority CVEs identified in the Tyk Gateway, providing increased protection against security -vulnerabilities: - -- [CVE-2024-6104](https://nvd.nist.gov/vuln/detail/CVE-2024-6104) -
      -
    • -
    - - - - - - - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - - - -- [Tyk Gateway API]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "/frequently-asked-questions/faq" >}}) page for further information relating -to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md b/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md deleted file mode 100644 index 481a236734..0000000000 --- a/tyk-docs/content/product-stack/tyk-gateway/release-notes/version-5.7.md +++ /dev/null @@ -1,260 +0,0 @@ ---- -title: Tyk Gateway 5.7 Release Notes -date: 2024-10-08T15:51:11Z -description: "Release notes documenting updates, enhancements, and changes for Tyk Gateway versions within the 5.6.X series." -tags: ["Tyk Gateway", "Release notes", "v5.7", "5.7.0", "5.7", "changelog"] ---- - - - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 5.7.X displayed in a reverse chronological order** - -## Support Lifetime - -Minor releases are supported only until the next minor comes out. - ---- - -## 5.7.0 Release Notes - -### Release Date 03 December 2024 - -### Release Highlights - -We are thrilled to announce new updates and improvements in Tyk 5.7.0, bringing more control, flexibility, and performance. For a comprehensive list of changes, please refer to the detailed [changelog]({{< ref "#Changelog-v5.7.0">}}) below. - -#### Tyk Streams - asynchronous API management with Tyk - -Tyk is now entering the asynchronous API management space with a bang by delivering Tyk Streams to our users! -Many API management solutions fail to fully support event-driven architectures, causing fragmented management, inconsistent security practices, and increased operational complexity. With event-driven architectures on the rise recently, keeping everything under control and enforcing standards at the organizational level has become a challenge. - -**Tyk Streams** is an event streaming solution available within the Tyk API Management Platform, which applies proven API management principles to simplify event and streams handling. -This release brings capabilities to stream data and events using Kafka, Websocket, SSE and HTTP protocols. It also becomes possible to mediate the message format between Avro and JSON on the fly. - -- Merge together various sources of events to present to consumers as a unified stream. -- Apply authentication and authorization to streams of messages, just as you do for your RESTful APIs -- Expose async APIs via Tyk Portal, so that they are easily discoverable - -All of this possible in self-managed and k8s deployments of Tyk! - -### Breaking Changes - - -There are no breaking changes in this release. - -### Dependencies {#dependencies-5.7.0} - - -#### Compatibility Matrix For Tyk Components - -| Gateway Version | Recommended Releases | Backwards Compatibility | -|---- |---- |---- | -| 5.7.0 | MDCB v2.7.2 | MDCB v2.4.2 | -| | Operator v1.1.0 | Operator v0.17 | -| | Sync v2.0.1 | Sync v1.4.3 | -| | Helm Chart v2.2 | Helm all versions | -| | EDP v1.12 | EDP all versions | -| | Pump v1.11.1 | Pump all versions | -| | TIB (if using standalone) v1.6.1 | TIB all versions | - -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ------------------------------------------------------------ | ---------------------- | ---------------------- | -------- | -| [Go](https://go.dev/dl/) | 1.22 | 1.22 | [Go plugins]({{< ref "/plugins/supported-languages/golang" >}}) must be built using Go 1.22 | -| [Redis](https://redis.io/download/) | 6.2.x, 7.x | 6.2.x, 7.x | Used by Tyk Gateway | -| [OpenAPI Specification](https://spec.openapis.org/oas/v3.0.3)| v3.0.x | v3.0.x | Supported by [Tyk OAS]({{< ref "/tyk-apis/tyk-gateway-api/oas/x-tyk-oas-doc" >}}) | - -Given the potential time difference between your upgrade and the release of this version, we recommend users verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). - - - - -### Upgrade instructions {#upgrade-5.7.0} -If you are upgrading to 5.7.0, please follow the detailed [upgrade instructions](#upgrading-tyk). - -### Downloads -- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-gateway/tags?page=&page_size=&ordering=&name=v5.7.0) - - ```bash - docker pull tykio/tyk-gateway:v5.7.0 - ``` -- Helm charts - - [tyk-charts v2.2.0]({{}}) - -- [Source code tarball for OSS projects](https://github.com/TykTechnologies/tyk/releases) - -### Changelog {#Changelog-v5.7.0} - - -#### Added - -
      -
    • -
      -Added Stream Analytics Error Handling - -Added to Streams analytics capability to capture and report common error scenarios, including broker connectivity issues and standard HTTP errors, ensuring comprehensive request tracking for Streams-processed requests. -
      -
    • -
    • -
      -Integrated Streams Validator with Streams API - -Connected the new OAS validator to the /streams endpoint, adding proper error handling and validation responses for invalid stream configurations. -
      -
    • -
    • -
      -Extended Streams Configuration Validation - -Extended the OAS validator to include Streams configuration validation, enforcing allowlisted components and validating nested broker configurations while implementing schema validation for Streams configurations. -
      -
    • -
    • -
      -New Streams Configuration Validator - -Introduced a new validator derived from the existing OAS schema, adapting it for Streams validation with modified requirements for upstreamURL and x-tyk-streaming fields. This validator is now used by both the Dashboard API streams endpoint and streams configuration validator. -
      -
    • -
    • -
      -Added Logging for Streams - -Refined streams logging behavior to match Tyk's logging patterns, reducing unnecessary log output and improving log clarity. -
      -
    • -
    • -
      -Simplified Streams Configuration Support - -Implemented allowlist-based validation for components in streams configurations, replacing the previous blocklist approach. Supported components now include Kafka, WebSocket, SSE, and HTTP for both inputs and outputs (including broker combinations), along with JSON-Avro bidirectional conversion processors, while other components like scanners, caches, and buffers are blocked by default. This validation is enforced consistently across Gateway, Dashboard API, and UI. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Resolved HTTP Input Timeout in Tyk Streams - -When using Tyk Streams and sending input via http, the requests sometimes timed out causing a problem for the consumers. The issue has been fixed and now inputs via http for Tyk Streams work as intended. -
      -
    • -
    • -
      -Improved backwards compatibility when working with Tyk OAS APIs - -Fixed a backwards compatibility issue with Tyk OAS API schema validation. When downgrading from a Tyk version, schema validation could fail if new fields had been added to the Tyk OAS API definition. This change relaxes the strictness of validation to allow additional properties. -
      -
    • -
    • -
      -Fixed Policy Merge Issue with Path-Based Permissions - -Resolved a bug where path-based permissions in policies were not preserved when policies were combined, potentially omitting URL values and incorrectly restricting access. The updated behavior ensures that URL access rights from all applicable policies are merged, regardless of policy order, allowing seamless enforcement of combined permissions. -
      -
    • -
    • -
      -Resolved API Routing Issue with Trailing Slashes and Overlapping Listen Paths - -Fixed a routing issue that caused incorrect API matching when dealing with APIs that lacked a trailing slash, used custom domains, or had similar listen path patterns. Previously, the router prioritized APIs with longer subdomains and shorter listen paths, leading to incorrect matches when listen paths shared prefixes. This fix ensures accurate API matching, even when subdomains and listen paths overlap. -
      -
    • -
    • -
      -Optimized Gateway Handling for Large Payloads - -Fixed an issue that caused increased memory consumption when proxying large response payloads. The Gateway now handles large payloads more efficiently in terms of speed and memory usage. -
      -
    • -
    - - - - - ---- - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### API Documentation - -- [Tyk Gateway API]({{}}) -- [Postman Collection](https://www.postman.com/tyk-technologies/workspace/tyk-public-workspace/overview) - -### FAQ - -Please visit our [Developer Support]({{< ref "/frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/.placeholder b/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.16.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.16.md deleted file mode 100644 index 41bd5be052..0000000000 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.16.md +++ /dev/null @@ -1,136 +0,0 @@ ---- -title: Tyk Operator 0.16 Release Notes -tag: ["Tyk Operator", "Release notes", "v0.16", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 0.16.x series." ---- -**Open Source ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - -**This page contains all release notes for version 0.16 displayed in reverse chronological order** - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 0.16.0 Release Notes - -##### Release date 12 Jan 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade Instructions -While upgrading Tyk Operator release via Helm, please make sure that the latest CRDs are also applied on the cluster, as follows: -```bash -kubectl apply -f https://raw.githubusercontent.com/TykTechnologies/tyk-operator/v0.16.0/helm/crds/crds.yaml -``` - -#### Release Highlights -This release added support for analytics plugin, UDG global header, and detailed tracing setting in ApiDefinition as detailed in the [changelog]({{< ref "#Changelog-v0.16.0">}}) below. - -#### Downloads -- [Docker image to pull](https://hub.docker.com/layers/tykio/tyk-operator/v0.16.0/images/sha256-7c5b526af96ef772e8e53b8817538f41585c4ad641388609b349368219bb3d7d?context=explore) -- [Source code](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.16.0) - -#### Changelog {#Changelog-v0.16.0} - -##### Added - -
      -
    • -
      -Added imagePullSecrets configuration for ServiceAccount in Tyk Operator Helm chart - - Added [imagePullSecrets](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/) configuration for ServiceAccount in Tyk Operator Helm chart. It allows user to pull image from a private registry. -
      -
    • -
    - -
      -
    • -
      -Added tyk to categories field of CRDs - -Added tyk to categories field of CRDs. So, from now on, all CRs related to Tyk Operator is grouped into tyk category and can be displayed via kubectl get tyk. -
      -
    • -
    - -
      -
    • -
      -Added support of analytics plugin in ApiDefinition CRD - -Added to ApiDefinition CRD: support of analytics plugin at [spec.analytics_plugin](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-analytics_plugin). See [Example CRD with Analytics Plugin](https://github.com/TykTechnologies/tyk-operator/tree/master/config/samples/analytics_plugin.yaml) for details. -
      -
    • -
    - -
      -
    • -
      -Added support of UDG Global Header in ApiDefinition CRD - -Added to ApiDefinition CRD: support for UDG Global Header at [spec.graphql.engine.global_headers](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-graphql-engine-global_headers) object in ApiDefinition CRD. This feature is compatible with Tyk 5.2 or above. -
      -
    • -
    - -
      -
    • -
      -Added support of detail tracing in ApiDefinition CRD - -Added to ApiDefinition CRD: support for detail tracing configuration at [spec.detailed_tracing](https://doc.crds.dev/github.com/TykTechnologies/tyk-operator/tyk.tyk.io/ApiDefinition/v1alpha1@v0.16.0#spec-detailed_tracing) field in ApiDefinition CRD. Enable it for the API if you want to get detail span for each middleware involved in request processing. -
      -
    • -
    - - -##### Updated - - -
      -
    • -
      -Updated Go version to 1.21 - -Updated Go version to 1.21 -
      -
    • -
    - -##### Fixed - -
      -
    • -
      -Fixed CVE-2023-39325 (NVD) - -Fixed [CVE-2023-39325 (NVD)](https://nvd.nist.gov/vuln/detail/CVE-2023-39325) -
      -
    • -
    - -
      -
    • -
      -Fixed security policy handling in OSS mode - -Fixed a bug that prevents Tyk Operator to work with SecurityPolicy in OSS Mode. Now, SecurityPolicy controller will not modify spec.MID (_id) field in SecurityPolicy -
      -
    • -
    - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - -## Earlier Versions Release Notes -Release Notes for Tyk Operator v0.15 and earlier can we found in [Tyk Operator GitHub](https://github.com/TykTechnologies/tyk-operator/releases) diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.17.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.17.md deleted file mode 100644 index f3a56b2c01..0000000000 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.17.md +++ /dev/null @@ -1,134 +0,0 @@ ---- -title: Tyk Operator 0.17 Release Notes -tag: ["Tyk Operator", "Release notes", "v0.17", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 0.17.x series." ---- -**Open Source ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - -**This page contains all release notes for version 0.17 displayed in reverse chronological order** - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 0.17.1 Release Notes - -##### Release date 6 May 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade Instructions -Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. - -#### Release Highlights -This release is focused on bug fixes. For details please refer to the [changelog]({{< ref "#Changelog-v0.17.1">}}) below. - -#### Downloads -- [Docker image v0.17](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.17.1) - - ```bash - docker pull tykio/tyk-operator:v0.17.1 - ``` -- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.17.1) - -#### Changelog {#Changelog-v0.17.1} - -##### Fixed - -
      -
    • -
      -Fixed ApiDefinition Custom Resources generated by the Ingress Controller used a wrong certificate - -When using Tyk as an Ingress Controller with TLS enabled, the ApiDefinition Custom Resources generated by the Ingress Controller is missing the OrgID field. As a result, Tyk Gateway used a wrong certificate when serving a request. It is fixed by adding back OrgID field to ApiDefinition CRs created by Ingress Controller. -
      -
    • - -
    • -
      -Added Webhook and RBAC port configurations in Tyk Operator Helm chart - -Users can configure Tyk Operator webhook and RBAC port via helm chart values `.Values.webhookPort` and `.Values.rbac.port` respectively. -
      -
    • - -
    • -
      -Addressed security vulnerabilities CVE-2023-45288 - -Addressed security vulnerabilities [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288) where an attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames. Maintaining HPACK state requires parsing and processing all HEADERS and CONTINUATION frames on a connection. When a request's headers exceed MaxHeaderBytes, no memory is allocated to store the excess headers, but they are still parsed. This permits an attacker to cause an HTTP/2 endpoint to read arbitrary amounts of header data, all associated with a request which is going to be rejected. These headers can include Huffman-encoded data which is significantly more expensive for the receiver to decode than for an attacker to send. The fix sets a limit on the amount of excess header frames we will process before closing a connection. -
      -
    • - -
    • -
      -Addressed security vulnerabilities CVE-2024-24786 - -Addressed security vulnerabilities [CVE-2024-24786](https://nvd.nist.gov/vuln/detail/CVE-2024-24786) where the `protojson.Unmarshal` function can enter an infinite loop when unmarshaling certain forms of invalid JSON. This condition can occur when unmarshaling into a message which contains a `google.protobuf.Any` value, or when the `UnmarshalOptions.DiscardUnknown` option is set. -
      -
    • -
    - - -## 0.17.0 Release Notes - -##### Release date 05 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade Instructions -Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade Instructions. - -#### Release Highlights -This release added support for `GraphQLIntrospectionConfig` in API definition and fixed an issue where the Tyk Operator creates duplicate APIs on Tyk. - -For details please refer to the [changelog]({{< ref "#Changelog-v0.17.0">}}) below. - -#### Downloads -- [Docker image v0.17](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.17.0) - - ```bash - docker pull tykio/tyk-operator:v0.17.0 - ``` -- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.17.0) - -#### Changelog {#Changelog-v0.17.0} - -##### Fixed - -
      -
    • -
      -Fixed creating duplicated API definitions on Tyk - -Fix creating duplicated API definitions on Tyk in case of cluster failures. If network errors happen while updating the API definition, the Tyk Operator retries the reconciliation based on the underlying error type. -
      -
    • -
    - -##### Added - -
      -
    • -
      -Added support of GraphQLIntrospectionConfig in API definition CRD - -Added to ApiDefinition CRD: support of `GraphQLIntrospectionConfig` field at `graphql.introspection.disabled`. This feature will be enabled in future Tyk releases. -
      -
    • -
    - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.18.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.18.md deleted file mode 100644 index 840961a975..0000000000 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-0.18.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -title: Tyk Operator 0.18 Release Notes -tag: ["Tyk Operator", "Release notes", "v0.18", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 0.18.x series." ---- -**Open Source ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - -**This page contains all release notes for version 0.18 displayed in reverse chronological order** - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 0.18.0 Release Notes - -##### Release date 4 Jul 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade Instructions -Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. - -#### Release Highlights -This release added support for Tyk 5.4 API definition. - -For details please refer to the [changelog]({{< ref "#Changelog-v0.18.0">}}) below. - -#### Downloads -- [Docker image v0.18.0](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v0.18.0) - - ```bash - docker pull tykio/tyk-operator:v0.18.0 - ``` -- Source code tarball - [Tyk Operator Repo](https://github.com/TykTechnologies/tyk-operator/releases/tag/v0.18.0) - -#### Changelog {#Changelog-v0.18.0} - -##### Added - -
      -
    • -
      -Added support of Tyk 5.4 API definition CRD - -Added to ApiDefinition [Custom Resource Definition (CRD)](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/): - -- [introspection]({{}}) option to enable/disable GraphQL introspection -- [graphql.proxy.auth_headers]({{}}) -- [graphql.proxy.subscription_type]({{}}) -- [graphql.proxy.request_headers]({{}}) -- graphql.proxy.use_response_extensions -- graphql.proxy.request_headers_rewrite -- graphql.proxy.features - -
      -
    • -
    - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md deleted file mode 100644 index 5e700d9410..0000000000 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/operator-1.1.md +++ /dev/null @@ -1,230 +0,0 @@ ---- -title: Tyk Operator 1.1 Release Notes -tag: ["Tyk Operator", "Release notes", "v1.1", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Operator versions within the 1.1.x series." ---- -**Licensed Protected Product** - -**This page contains all release notes for version 1.1.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.1.0 Release Notes - -### Release Date 09 December 2024 - -### Release Highlights - -##### Support for Tyk Streams API -Tyk Operator v1.1 supports management of Tyk Streams APIs through the new **`TykStreamsApiDefinition`** custom resource. This allows you to have declarative, versioned, and fully automated control to your streaming APIs. - -### Breaking Changes - -This release has no breaking changes. - - - - - - - - - - - - -### Dependencies {#dependencies-1.1} -#### 3rd Party Dependencies & Tools - - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | -| [Kubernetes](https://kubernetes.io) | 1.26.x to 1.30.x | 1.19.x to 1.30.x | | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - - - - -### Upgrade instructions - -Tyk Operator v1.1 introduced new Custom Resource Definitions (CRDs). Before upgrading to Tyk Operator v1.1 with Helm Chart, please run the following commands to install the CRDs: - -```bash -$ kubectl apply -f https://raw.githubusercontent.com/TykTechnologies/tyk-charts/refs/heads/main/tyk-operator-crds/crd-v1.1.0.yaml -``` - - -Go to the [Upgrading Tyk Operator]({{}}) section for detailed upgrade instructions. - - -### Downloads -- [Docker image v1.1.0](https://hub.docker.com/r/tykio/tyk-operator/tags?page=&page_size=&ordering=&name=v1.1.0) - - ```bash - docker pull tykio/tyk-operator:v1.1.0 - ``` -- Helm chart - - tyk-charts v2.2.0 - - -### Changelog {#Changelog-v1.1.0} - - -#### Added - -
      -
    • -
      -TykStreamsApiDefinition: new Custom Resource for Tyk Streams - -The `TykStreamsApiDefinition` custom resource allows you to manage Tyk Streams APIs directly within your Kubernetes environment. This enhancement offers a Kubernetes-native approach to managing Tyk APIs, streamlining operations and ensure single source of truth in Kubernetes. - -[Learn More]({{< ref "api-management/automations#create-a-tykstreamsapidefinition-custom-resource" >}}) -
      -
    • -
    - - - - - - - - - - ---- - - - - - - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - - - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - - \ No newline at end of file diff --git a/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md b/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md deleted file mode 100644 index eccafd6702..0000000000 --- a/tyk-docs/content/product-stack/tyk-operator/release-notes/overview.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "Operator Releases" -date: 2024-06-25 -tags: ["Tyk Operator", "Kubernetes"] -description: "Index to Operator release notes" ---- - -This page provides access to release notes for Tyk Operator. - -* [Operator v1.1]({{}}) -* [Operator v1.0]({{}}) -* [Operator v0.18]({{}}) -* [Operator v0.17]({{}}) -* [Operator v0.16]({{}}) - -Release Notes for Tyk Operator v0.15 and earlier can we found in [Tyk Operator GitHub](https://github.com/TykTechnologies/tyk-operator/releases). diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/.placeholder b/tyk-docs/content/product-stack/tyk-pump/release-notes/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/old-releases/.placeholder b/tyk-docs/content/product-stack/tyk-pump/release-notes/old-releases/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.10.md b/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.10.md deleted file mode 100644 index 0ecaaeb06c..0000000000 --- a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.10.md +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: Tyk Pump v1.10 Release Notes -date: 2024-02-02T26:33:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Pump versions within the 1.10.X series." -tags: ["Tyk Pump", "Release notes", "v1.10", "changelog"] ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 1.9.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.10 Release Notes - -### Release Date 3 July 2024 - -### Breaking Changes -This release has no breaking changes. - -### Dependencies - -#### 3rd Party Dependencies & Tools - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | -| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | -| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions - -For users currently on v1.9.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.9 and proceed directly to this latest release. - -### Release Highlights - -#### FIPS Compliance - -Tyk Pump now offers [FIPS 140-2](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-2.pdf) compliance. For further details please consult [Tyk API Management FIPS support]({{< ref "developer-support/special-releases-and-features/fips-release" >}}) - -#### Security fixes -This release focuses on improving security and compliance, enhancing integration capabilities, and ensuring robust performance in secure environments. - -### Downloads -- [Docker Image v1.10.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.10) -- ```bash - docker pull tykio/tyk-pump-docker-pub:v1.10.0 - ``` -- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.10.0) - -### Changelog {#Changelog-v1.10.0} - -#### Added - -
      -
    • -
      -Added FIPS compliance - -Added [FIPS compliance]({{< ref "developer-support/special-releases-and-features/fips-release" >}}) for Tyk Pump. -
      -
    • -
    - - -#### Fixed - -
      -
    • -
      -Fixed Tyk Pump Splunk Integration using http_proxy and https_proxy Environment Variables - -Resolved an issue where `http_proxy` and `https_proxy` environment variables were not being respected in the Tyk Pump pod for Splunk connections. - -
      -
    • - -
    - -#### Security Fixes - -
      -
    • -
      -Fixed the following CVEs -
        -
      • PRISMA-2021-0108
      • -
      • PRISMA-2023-0056
      • -
      • [CVE-2024-27304](https://nvd.nist.gov/vuln/detail/CVE-2024-27304)
      • -
      • [CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288)
      • -
      -
      -
    • -
    - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md b/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md deleted file mode 100644 index f38aa9ba95..0000000000 --- a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.11.md +++ /dev/null @@ -1,150 +0,0 @@ ---- -title: Tyk Pump v1.11 Release Notes -date: 2024-02-02T26:33:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Pump versions within the 1.11.X series." -tags: ["Tyk Pump", "Release notes", "v1.11", "changelog"] ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 1.11.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 1.11.1 Release Notes - -### Release Date 04 December 2024 - -### Release Highlights - -This patch release focuses on critical dependency updates to address security vulnerabilities and maintain compatibility with the latest tools. Users are encouraged to upgrade to benefit from enhanced security and improved stability. - -### Breaking Changes -This release has no breaking changes. - -### Dependencies - -#### 3rd Party Dependencies & Tools - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | -| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations -There are no deprecations in this release. - -### Upgrade instructions -For users currently on v1.11.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 1.11.0 and proceed directly to this latest patch release. -
    -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Downloads -- [Docker Image v1.11.1](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.11.1) - - ```bash - docker pull tykio/tyk-pump-docker-pub:v1.11.1 - ``` -- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.11.1) - -### Changelog {#Changelog-v1.11.1} - -#### Changed - -
      -
    • -
      -Upgraded Golang to v1.22.7 - -Updated to the [Go v1.22.7](https://go.dev/doc/devel/release#go1.22) to leverage its performance improvements, bug fixes, and security patches. - -
      -
    • -
    - -#### Security Fixes -- Fixed the following CVEs: - - [GHSA-7jwh-3vrq-q3m8](https://github.com/jackc/pgproto3/security/advisories/GHSA-7jwh-3vrq-q3m8) - - [GHSA-mrww-27vc-gghv](https://github.com/advisories/GHSA-mrww-27vc-gghv) - - [GO-2024-2611](https://pkg.go.dev/vuln/GO-2024-2611) - ---- - -## 1.11.0 Release Notes - -### Release Date 13 August 2024 - -### Breaking Changes -This release has no breaking changes. - -### Dependencies - -#### 3rd Party Dependencies & Tools - -With PostgreSQL v11 reaching [EOL](https://www.postgresql.org/support/versioning/) in November 2023, we can no longer guarantee full compatibility with this version of the database. If you are [using PostgreSQL]({{< ref "planning-for-production/database-settings/postgresql" >}}) we recommend that you upgrade to a version that we have tested with, as indicated below. - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | -| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 12.x - 16.x | 12.x - 16.x | Used by Tyk Dashboard | -| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions - -For users currently on v1.10.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.10 and proceed directly to this latest release. - -### Release Highlights - -#### Security fixes -This release focuses on improving security and compliance, enhancing integration capabilities, and ensuring robust performance in secure environments. - -### Downloads -- [Docker Image v1.11.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.11) -- ```bash - docker pull tykio/tyk-pump-docker-pub:v1.11.0 - ``` -- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.11.0) - -### Changelog {#Changelog-v1.11.0} - - -#### Added - -
      -
    • -
      -Add Kinesis backend support - -Tyk Pump now supports Kinesis as a backend to push analytics to a data lake efficiently. - -
      -
    • - -
    - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.9.md b/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.9.md deleted file mode 100644 index 31094b7f96..0000000000 --- a/tyk-docs/content/product-stack/tyk-pump/release-notes/pump-1.9.md +++ /dev/null @@ -1,233 +0,0 @@ ---- -title: Tyk Pump v1.9 Release Notes -date: 2024-02-02T26:33:11Z -description: "Release notes documenting updates, enhancements and changes for Tyk Pump versions within the 1.9.X series." -tags: ["Tyk Pump", "Release notes", "v1.9", "changelog"] ---- - -**Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md)) - -**This page contains all release notes for version 1.9.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. This would be v1.9.1 scheduled in Q2 if this goes ahead as planned. - ---- - -## 1.9 Release Notes - -### Release Date 5 Apr 2024 - -### Breaking Changes - -##### Attention: Please read this section carefully - -MongoDB v4.4 will reach its [end of life support](https://www.mongodb.com/legal/support-policy/lifecycles) at the end of February 2024. In order to support newer versions of MongoDB and align with newer versions of Tyk, we have changed the default MongoDB driver from [mgo](https://github.com/go-mgo/mgo) to [mongo-go](https://github.com/mongodb/mongo-go-driver). The `mongo-go` driver supports MongoDB versions greater or equal to v4. **If you are using a version of MongoDB less than v4, please [follow this guide](https://github.com/TykTechnologies/tyk-pump#driver-type) to update the driver type to `mgo`.** - -Users are strongly advised to follow the recommended [upgrade instructions](#upgrading-tyk) provided by Tyk before applying any updates. - -### Dependencies - -#### 3rd Party Dependencies & Tools - -| Third Party Dependency | Tested Versions | Compatible Versions | Comments | -| --------------------------------------------------------- | ----------------- | ------------------------ | -------------------------- | -| [GoLang](https://go.dev/dl/) | 1.19, 1.20, 1.21 | 1.19, 1.20, 1.21 | All our binaries | -| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, and 7.0 | 4.4.x, 5.x, 6.x, and 7.0 | Used by Tyk Dashboard | -| [PostgreSQL](https://www.postgresql.org/download/) | 11.x - 15.x LTS | 11.x - 15.x | Used by Tyk Dashboard | -| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.x | Used by all Tyk components | - -Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. - -### Deprecations - -There are no deprecations in this release. - -### Upgrade instructions - -For users currently on v1.8.X, we strongly recommend promptly upgrading to the latest release. If you are working with an older version, it is advisable to bypass version 1.8 and proceed directly to this latest release. - -### Release Highlights - -#### Redis 7 and storage library - -Tyk Pump now supports Redis v7, utilizing our [storage library v1.2.0](https://github.com/TykTechnologies/storage). - -#### MongoDB Driver - -As of v1.9, the default MongoDB driver has been changed from `mgo` to `mongo-go`. - -#### AWS Simple Queue Service Support - -Thanks to a community contribution by [masoudhaghbin](https://github.com/masoudhaghbin), Tyk Pump can now pump logs to an AWS SQS instance. - -#### Tyk Graph Pump - -There has been a significant enhancement in Tyk Graph Pump with the removal of the dependency on the `enable_detailed_recording` setting. This change is designed to streamline operations, reduce storage requirements and enhance overall performance in production environments. By decoupling detailed recording from specific configuration options, Tyk Graph Pump now provides greater flexibility and control over data storage. - - -### Downloads -- [Docker Image v1.9.0](https://hub.docker.com/r/tykio/tyk-pump-docker-pub/tags?page=&page_size=&ordering=&name=v1.9.0) -- ```bash - docker pull tykio/tyk-pump-docker-pub:v1.9.0 - ``` -- Source code tarball for OSS - [GH Tyk Pump Repo](https://github.com/TykTechnologies/tyk-pump/releases/tag/v1.9.0) - -### Changelog {#Changelog-v1.9.0} - -#### Added - -
      -
    • -
      -Redis 7 Support - -Tyk Pump now support Redis v7 utilizing our [storage library v1.2.0](https://github.com/TykTechnologies/storage). - -
      -
    • -
    • -
      -Added AWS Simple Queue Service pump support - -Pump can now send logs to an Amazon SQS instance. This was a [community contribution](https://github.com/TykTechnologies/tyk-pump/pull/740) co-authored by [masoudhaghbin](https://github.com/masoudhaghbin). Please follow [this guide](https://github.com/TykTechnologies/tyk-pump#SQS-config) to set up an SQS pump. - -
      - -
    • -
    - -#### Changed - -
      -
    • -
      -Updated Go version to v1.21 - -Tyk Pump now uses Go v1.21 - -
      -
    • - -
    • -
      -Resurface Pump Updated - -The Resurface Pump has been updated with the [following improvements](https://github.com/TykTechnologies/tyk-pump/pull/731). - -- Upgrade `logger-go` dependency to version 3.3.1, which includes improvements in goroutine management, as well as a new `Stop` method for graceful shutdown. -- Add support for async data writing, by adding a bounded channel to buffer data records and process them concurrently in the background. -- Add `Shutdown` method for graceful shutdown of `ResurfacePump` backend. - -Thanks to community member [Ramón Márquez](https://github.com/monrax) for updating this pump. - -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Added backoff retry mechanism for Splunk Pump - -Tyk Pump now has an expontential backoff retry mechanism for sending logs to Splunk. This mechanism mitigates the chance of losing logs if Pump should fail to send logs to Splunk. This fixes a bug where Splunk responses were not being checked correctly and fixes a bug where Pump was not closing connections after receiving responses. - -
      -
    • -
      -Added a field so that GraphQL aggregated analytics will display correctly for SQL databases - -For SQL databases, the GraphQL aggregated analytics record will now have a new `api_value` field so that analytics will be shown in the Dashboard correctly. - -
      -
    • -
    • -
      -Environment variables TYK_PMP_PUMPS_AGGREGATE_* now correctly correspond to definitions in pump.conf - -Fixed a bug where any `TYK_PMP_PUMPS_AGGREGATE_*` environment variables didn't correctly correspond to definitions in the pump.conf file. - -
      -
    • -
      -Added an api_id field so that GraphQL aggregated analytics will display correctly - -For SQL databases, the GraphQL aggregated analytics record will now have a new `api_id` field so that analytics will be shown in the Dashboard correctly. - -
      -
    • - -
    • -
      -Fixed a bug where Tyk Pump could not connect to Redis Sentinel when TLS is enabled - -Fixed a bug causing Tyk Pump not to connect when Redis Sentinel was deployed using TLS. - -
      -
    • -
    - -#### Security Fixes - - - -#### Community Contributions - -Special thanks to the following members of the Tyk community for their contributions to this release: - -
      -
    • -
      -Added Simple Queue Service pump support - -Pump can now [send logs](https://github.com/TykTechnologies/tyk-pump/pull/740) to an Amazon SQS instance. -Thanks to [masoudhaghbin](https://github.com/masoudhaghbin) for creating this pump. Please follow [this guide](https://github.com/asdf) to set up an SQS pump. - -
      - -
    • - -
    • -
      -Resurface Pump Updated - -The Resurface Pump has been updated with the [following improvements](https://github.com/TykTechnologies/tyk-pump/pull/731). - -- Upgrade `logger-go` dependency to version 3.3.1, which includes improvements in goroutine management, as well as a new `Stop` method for graceful shutdown. -- Add support for async data writing, by adding a bounded channel to buffer data records and process them concurrently in the background. -- Add `Shutdown` method for graceful shutdown of `ResurfacePump` backend. - -Thanks to community member [Ramón Márquez](https://github.com/monrax) for updating this pump. - -
      -
    • -
    - ---- - -## Further Information - -### Upgrading Tyk - -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. - -### FAQ - -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. diff --git a/tyk-docs/content/product-stack/tyk-pump/release-notes/release-highlights-and-upgrades/.placeholder b/tyk-docs/content/product-stack/tyk-pump/release-notes/release-highlights-and-upgrades/.placeholder deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tyk-docs/content/product-stack/tyk-streaming/getting-started.md b/tyk-docs/content/product-stack/tyk-streaming/getting-started.md index de84727d23..8a222585a7 100644 --- a/tyk-docs/content/product-stack/tyk-streaming/getting-started.md +++ b/tyk-docs/content/product-stack/tyk-streaming/getting-started.md @@ -12,7 +12,7 @@ Tyk (REST) in real-time. Before you start we have a small request -
    Tyk Streams is currently in the -[Lab Release]({{< ref "developer-support/special-releases-and-features/lab-releases">}}) phase. Your feedback is crucial +[Lab Release]({{< ref "developer-support/release-notes/special-releases#lab-releases">}}) phase. Your feedback is crucial in helping us improve and shape this capability while it’s still in the making. We'd love your input on your experience using Tyk Streams, the documentation, learning about your use case, areas for improvement and any other relevant information you can share with us. @@ -156,7 +156,7 @@ If you encounter issues, here are a few things to check: - Verify the API definition is properly configured in the Tyk Dashboard - Check the Tyk Gateway logs for any error messages. Most of the time it'll be syntax errors in the stream configuration. In such case, you might see 404 since the API definition has not been created in Tyk -Since *Tyk Streams* is currently released as a [Lab Release]({{< ref "developer-support/special-releases-and-features/lab-releases" >}}), +Since *Tyk Streams* is currently released as a [Lab Release]({{< ref "developer-support/release-notes/special-releases#lab-releases" >}}), if a crash or an issue is encountered then Tyk Gateway can be restarted and the logs can be inspected as follows: ```bash diff --git a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.4.md b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.4.md deleted file mode 100644 index 57ae5ea948..0000000000 --- a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.4.md +++ /dev/null @@ -1,126 +0,0 @@ ---- -title: Tyk Sync 1.4 Release Notes -tag: ["Tyk Sync", "Release notes", "v1.4", "1.4.0", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Sync versions within the 1.4.X series." ---- -**Open Source ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** - -**This page contains all release notes for version 1.4 displayed in reverse chronological order** - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 1.4.3 Release Notes - -##### Release date 5 Apr 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 1.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, **you should skip 1.4.0** and upgrade directly to this release. - -#### Release Highlights -This release works with Tyk Dashboard and Tyk Gateway v5.3.0. As such it supports all Tyk API definitions (Tyk OAS APIs and Tyk Classic APIs) for [Tyk Gateway v5.3.0]({{< ref "product-stack/tyk-gateway/release-notes/version-5.3.md#compatibility-matrix-for-tyk-components" >}}) and [Tyk Dashboard]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.3.md#compatibility-matrix-for-tyk-components" >}}) - -For Tyk Gateway v5.3.1+ make sure to use the latest Tyk Sync available and also check Tyk Gateway release notes in the section "Compatibility Matrix For Tyk Components" for further instructions. - -Please refer to the [changelog]({{< ref "#Changelog-v1.4.3">}}) below for detailed explanation. - -#### Downloads -- [Docker image v1.4.3](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.4.3) - - ```bash - docker pull tykio/tyk-sync:v1.4.3 - ``` -- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.4.3) - -#### Changelog {#Changelog-v1.4.3} - -##### Updated - -
      -
    • -
      -API definitions supported up to Tyk Gateway v5.3.0 - -Tyk Sync supports both Tyk OAS APIs and Tyk Classic APIs when working with Tyk Dashboard. However, to use Tyk Sync to migrate Tyk OAS APIs you would need to set a special config field in Tyk Dashboard and an argument for Tyk Sync. This is a temporary measure provided for early adopters and will be **deprecated** later when Tyk Sync is updated in a future release to bring you the full Tyk OAS API experience as soon as possible. - -Recommended usage: -Tyk Dashboard setting: [allow-unsafe-oas]({{}}) -Tyk Sync: use the [--allow-unsafe-oas]({{}}) when invoking the CLI - -###### API Category is not yet supported -API Categories are a new capability with v5.3.0 of Tyk Dashboard. API Categories are currently not supported in Tyk Sync for Tyk OAS APIs. This means that Tyk Sync will not be able to save the category definition set for the Tyk OAS API. Until we update Tyk Sync you would need to manually recreate the categories in the new environment. -
      -
    • -
    - -
      -
    • -
      -Tyk Sync updated to use [Golang 1.21](https://tip.golang.org/doc/go1.21) -Tyk Sync is using Golang 1.21 Programming Language starting with the 1.4.3 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. -
      -
    • -
    - -##### Security - -The following CVEs have been resolved in this release: - -- [CVE-2023-48795](https://nvd.nist.gov/vuln/detail/CVE-2023-48795) -- [CVE-2023-49569](https://nvd.nist.gov/vuln/detail/CVE-2023-49569) -- [GHSA-9763-4f94-gfch](https://github.com/advisories/GHSA-9763-4f94-gfch) - ---- - -## 1.4.2 Release Notes - -##### Release date 07 Dec 2023 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -If you are using a 1.4.x version, we advise you to upgrade ASAP to this latest release. If you are on an older version, **you should skip 1.4.0** and upgrade directly to this release. - -#### Release Highlights -This release enhances compatibility as detailed in the [changelog]({{< ref "#Changelog-v1.4.2">}}) below. - -#### Downloads -- [Docker image v1.4.2](https://hub.docker.com/layers/tykio/tyk-sync/v1.4.2/images/sha256-3a6473aedeb4963bc19b218b52c4649fffc6ad46113799e9c1055004d5dc754a?context=explore) - - ```bash - docker pull tykio/tyk-sync:v1.4.2 - ``` -- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.4.2) - -#### Changelog {#Changelog-v1.4.2} - -##### Updated - -
      -
    • -
      -API definitions supported up to Tyk Gateway v5.2.3 - -Tyk Sync supports Tyk API definitions up to Tyk Gateway v5.2.3. Please use this version with Tyk Gateway v5.2.0+. -
      -
    • -
    - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - -## Earlier Versions Release Notes -Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) diff --git a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.5.md b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.5.md deleted file mode 100644 index f6609443c9..0000000000 --- a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-1.5.md +++ /dev/null @@ -1,178 +0,0 @@ ---- -title: Tyk Sync 1.5 Release Notes -tag: ["Tyk Sync", "Release notes", "v1.5", "1.5.0", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Sync versions within the 1.5.X series." ---- -**This page contains all release notes for version 1.5 displayed in reverse chronological order** - -## Support Lifetime -Our minor releases are supported until our next minor comes out. - -## 1.5.1 Release Notes - -##### Release date 13 August 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations -There are no deprecations in this release. - -#### Upgrade instructions -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -#### Downloads -- [Docker image v1.5.1](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.5.1) - - ```bash - docker pull tykio/tyk-sync:v1.5.1 - ``` - -#### Changelog {#Changelog-v1.5.1} - -##### Fixed - -
      -
    • -
      -Fixed problem in synchronizing APIs with duplicate slugs - -In previous versions, the `sync` command in Tyk Sync checked for duplicate slugs among APIs. As slugs are now deprecated and APIs will have identical slugs by default starting from Tyk v5.3, this check became problematic. To resolve this, the checks for duplicate slugs have been removed in this version, ensuring compatibility with both Tyk Cloud and Tyk v5.3+. -
      -
    • - -
    - -##### Changed - -
      -
    • -
      -API definitions supported up to Tyk Gateway v5.5.0 - -Tyk Sync 1.5.1 supports API definitions up to Tyk Gateway v5.5.0. This update ensures that Tyk Sync can manage API definitions compatible with Tyk Gateway v5.5.0. -
      -
    • -
    - -## 1.5.0 Release Notes - -##### Release date 4 July 2024 - -#### Breaking Changes -This release has no breaking changes. - -#### Deprecations - -##### Removed --allow-unsafe-oas flag - -With native support of Tyk OAS APIs in Sync v1.5, we have removed the `--allow-unsafe-oas` flag from all commands as this flag is no longer required. Users can manage OAS APIs with Tyk Gateway and Dashboard (v5.3.2+) without specifying this flag or setting configurations in the Dashboard. The synchronisation of OAS API Definitions with the Dashboard is now safer and more straightforward. - - -##### Future deprecations -As part of our ongoing efforts to streamline and improve Tyk Sync, we plan to deprecate the following options in future releases: - -- `--apis` for the `tyk-sync sync` command. -- `--policies` for the `tyk-sync sync` command. - -We recommend users update their workflows to use the `publish` and `update` commands for managing individual API and Policy IDs. To continue using the `sync` command, ensure all required resources are listed in the `.tyk.json` index file. This file will serve as the source of truth for API configuration states, and Tyk Sync will create or update all specified resources while removing any others from the Gateway or Dashboard. - -#### Upgrade instructions -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -#### Release Highlights -##### Full support for OAS APIs and API templates -Tyk Sync 1.5 now fully supports Tyk OpenAPI Specification (OAS) APIs and API Templates. This release is compatible with Tyk Gateway or Dashboard version 5.4.0 and above, enabling seamless management of OAS APIs and API templates, and also supports all Tyk API definitions (Tyk OAS APIs and Tyk Classic APIs) for Tyk Gateway and Tyk Dashboard v5.4.0. - -For Tyk Gateway v5.4.1+ make sure to use the latest Tyk Sync available and also check Tyk Gateway release notes in the section "Compatibility Matrix For Tyk Components" for further instructions. - -Please refer to the [changelog]({{< ref "#Changelog-v1.5.0">}}) below for detailed explanation. - -#### Downloads -- [Docker image v1.5.0](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v1.5.0) - - ```bash - docker pull tykio/tyk-sync:v1.5.0 - ``` -- [Source code](https://github.com/TykTechnologies/tyk-sync/releases/tag/v1.5.0) - -#### Changelog {#Changelog-v1.5.0} - -##### Added - -
      -
    • -
      -Support for OAS APIs - -Added native support for OAS APIs. Tyk Sync 1.5 now fully supports OpenAPI Specification (OAS) APIs and API Templates. This release is compatible with Tyk Gateway or Dashboard version 5.3.2 and above, enabling seamless management of OAS APIs and API templates. The `--allow-unsafe-oas` flag is not required anymore for managing OAS APIs. -
      -
    • - -
    • -
      -Support for API Templates - -Added support for API templates in `dump`, `sync`, `update`, and `publish` commands. Tyk Sync now supports managing API template resources in Tyk dashboard. Users can use these commands to manage API templates effectively. -
      -
    • - -
    • -
      -Support for API Categories of OAS APIs - -Added support for API categories in OAS APIs. Users can now include API Category in the API Definition file. Tyk Sync will update the categories of the API accordingly. It improved organization and categorization of APIs, making management more intuitive. -
      -
    • -
    - -##### Updated - -
      -
    • -
      -API definitions supported up to Tyk Gateway v5.4.0 - -Tyk Sync 1.5 supports API definitions up to Tyk Gateway v5.4.0. This update ensures that Tyk Sync can manage API definitions compatible with Tyk Gateway v5.4.0. -
      -
    • - -
    • -
      -Removed --allow-unsafe-oas flag - -With native support of Tyk OAS APIs in Sync v1.5, we have removed the `--allow-unsafe-oas` flag from all commands as this flag is no longer required. Users can manage OAS APIs with Tyk Gateway and Dashboard (v5.3.2+) without specifying this flag or setting configurations in the Dashboard. The synchronisation of OAS API Definitions with the Dashboard is now safer and more straightforward. -
      -
    • -
    - -##### Fixed - -
      -
    • -
      -Improved CI/CD integration by returning non-zero exit codes on failure - -Previously, users had to parse `stdout` to detect failures, making it difficult to integrate with CI/CD tools. This fix ensures that failure cases return non-zero exit codes, allowing CI/CD pipeline tools to automatically detect and flag errors. This change will streamline CI/CD workflows and improved error detection and handling. -
      -
    • - -
    • -
      -Fixed endpoint issue in update command - -Fixed an issue with the `update` command where extra slashes in the endpoint caused PUT requests to be misinterpreted as GET requests. Due to extra slashes at the end of the endpoint, PUT calls were being converted to GET calls, resulting in a 200 OK response without actual updates. This issue occurred when the gateway URL was provided instead of the dashboard URL for `sync` and `update` commands. The fix now ensured accurate updates and improved reliability of the `update` command. -
      -
    • -
    - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - -## Earlier Versions Release Notes -Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) diff --git a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md b/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md deleted file mode 100644 index 8be22ab2f9..0000000000 --- a/tyk-docs/content/product-stack/tyk-sync/release-notes/sync-2.0.md +++ /dev/null @@ -1,149 +0,0 @@ ---- -title: Tyk Sync 2.0 Release Notes -tag: ["Tyk Sync", "Release notes", "v2.0", "2.0.0", "2.0.1", "changelog" ] -description: "Release notes documenting updates, enhancements, fixes and changes for Tyk Sync versions within the 2.0.X series." ---- -**Licensed Protected Product** - -**This page contains all release notes for version 2.0.X displayed in a reverse chronological order** - -## Support Lifetime - -Our minor releases are supported until our next minor comes out. - ---- - -## 2.0.1 Release Notes - -### Release Date 05 December 2024 - -### Release Highlights - -Tyk Sync 2.0.1 has been updated to support API configurations from Tyk 5.7.0. - -Please refer to the [changelog]({{< ref "#Changelog-v2.0.1">}}) below for detailed explanation. - -### Breaking Changes - -This release has no breaking changes. - -### Deprecations -There are no deprecations in this release. - -### Upgrade instructions -For users currently on v2.0.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 2.0.0 and proceed directly to this latest patch release. -
    -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Downloads -- [Docker image v2.0.1](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v2.0.1) - - ```bash - docker pull tykio/tyk-sync:v2.0.1 - ``` - -### Changelog {#Changelog-v2.0.1} - -#### Changed - -
      -
    • -
      -API definitions and policies supported up to Tyk Gateway v5.7.0 - -Tyk Sync 2.0.1 supports API definitions and policies up to Tyk Gateway v5.7.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.7.0. -
      -
    • -
    - -#### Fixed - -
      -
    • -
      -Improved Error Handling for Invalid MongoDB Object IDs in Tyk Sync - -Addressed an issue where Tyk Sync did not properly validate MongoDB Object IDs during API synchronization. Previously, invalid IDs would result in silent failures, causing APIs to remain unpublished without error logs, creating confusion for users. Tyk Sync now logs meaningful error messages and exits with an error if invalid IDs are detected. This fix enhances the reliability and transparency of the synchronization process, ensuring consistent behavior with the Tyk Dashboard API. -
      -
    • -
    - ---- - -## 2.0.0 Release Notes - -From Tyk Sync v2.0, Tyk Sync will be closed source and we will only support use of Tyk Sync with licensed Tyk Dashboard. - -### Release Date 10 Oct 2024 - -### Release Highlights - -Tyk Sync 2.0 has been updated to support API configurations from Tyk 5.6.0. - -Please refer to the [changelog]({{< ref "#Changelog-v2.0.0">}}) below for detailed explanation. - -### Breaking Changes - -This release has no breaking changes. - -### Deprecations - -#### Deprecation of `--gateway` Flag - -As of Tyk Sync v2.0, support for the **Open Source Tyk Gateway** has been removed. Tyk Sync v2.0 is now compatible exclusively with licensed Tyk Dashboard. This change means that Tyk Sync can no longer be used with the Open Source (OSS) version of the Tyk Gateway. - -The `--gateway` flag, previously used to sync with the OSS Tyk Gateway, is **deprecated** and will be fully **removed in a future release**. Users should prepare to transition their Tyk Sync workflows to licensed Tyk Dashboard environments to ensure continued functionality. - - -#### Future deprecations -As part of our ongoing efforts to streamline and improve Tyk Sync, we plan to deprecate the following options in future releases: - -- `--apis` for the `tyk-sync sync` command. -- `--policies` for the `tyk-sync sync` command. - -We recommend users update their workflows to use the `publish` and `update` commands for managing individual API and Policy IDs. To continue using the `sync` command, ensure all required resources are listed in the `.tyk.json` index file. This file will serve as the source of truth for API configuration states, and Tyk Sync will create or update all specified resources while removing any others from Tyk Dashboard. - -### Upgrade instructions -Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. - -### Downloads -- [Docker image v2.0.0](https://hub.docker.com/r/tykio/tyk-sync/tags?page=&page_size=&ordering=-name&name=v2.0.0) - - ```bash - docker pull tykio/tyk-sync:v2.0.0 - ``` - -### Changelog {#Changelog-v2.0.0} - -#### Updated - -
      -
    • -
      -API definitions and policies supported up to Tyk Gateway v5.6.0 - -Tyk Sync 2.0.0 supports API definitions and policies up to Tyk Gateway v5.6.0. This update ensures that Tyk Sync can manage API definitions and policies compatible with Tyk Gateway v5.6.0. -
      -
    • - -
    • -
      -Deprecated --gateway flag - -As of Tyk Sync v2.0, support for the **Open Source Tyk Gateway** has been removed. Tyk Sync v2.0 is now compatible exclusively with licensed Tyk Dashboard. This change means that Tyk Sync can no longer be used with the Open Source (OSS) version of the Tyk Gateway. - -The `--gateway` flag, previously used to sync with the OSS Tyk Gateway, is **deprecated** and will be fully **removed in a future release**. Users should prepare to transition their Tyk Sync workflows to licensed Tyk Dashboard environments to ensure continued functionality. -
      -
    • -
    - -## Further Information - -### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance with respect to the upgrade strategy. - -### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. - -## Earlier Versions Release Notes -Release Notes for Tyk Sync v1.4.1 and earlier can we found in [Tyk Sync GitHub](https://github.com/TykTechnologies/tyk-sync/releases) diff --git a/tyk-docs/content/release-notes/mdcb-2.0.md b/tyk-docs/content/release-notes/mdcb-2.0.md deleted file mode 100644 index c4a89b80cb..0000000000 --- a/tyk-docs/content/release-notes/mdcb-2.0.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: MDCB v2.0 -menu: - main: - parent: "Release Notes" -weight: 255 -aliases: - - "/release-notes/mdcb/mdcb" - - /release-notes/mdcb/ ---- -## 2.0.5 -Release date: 2023-01-31 - -### Added -- Added a new configuration option (`group_key_ttl`) that specifies the group key TTL in seconds. This key is used to prevent a group of gateways from re-syncing when is not required. On login (GroupLogin call), if the key doesn't exist then the sync process is triggered. If the key exists then the TTL just gets renewed. In case the cluster of gateways is down, the key will expire and get removed and if they connect again a sync process will be triggered. Default value: 180 seconds. Min value: 30 seconds. - -### Fixed -- Fixed an issue where gateways in the data plane couldn't re-sync with MDCB (in the control plane) after their Redis (in the data plane) has been reset. The only way was to change the `group_id`. The fix means that MDCB can overcome this situation independently and there's no need for the users to do anything (changing `group_id` or any other curing action). Check `group_key_ttl` for [more details](#added) - -## 2.0.4 -Release date: 2022-12-06 - -### Added -- Changes in the API definition introduced in Tyk Gateway 4.3 -- Update to Go 1.16 -- Update the embedded Pump to the latest (v1.7.0) - -### Fixed -- Fixed a minor security issue when logging Mongo URL - -## 2.0.3 -Release date: 2022-08-12 - -### Fixed -- Fixed a bug when using MDCB with Tyk Gateway versions prior to 4.1 where an error could be reported when querying an API from a worker gateway. -- Fixed an incompatibility with MDCB logging format changes -- Fixed an issue where, with the MDCB Synchroniser disabled, all API resources were still pushed out to workers upon creation in the controller; the behavior should be as it was pre-synchroniser. - -## 2.0.2 -Release date: 2022-08-12 - -### Fixed -- Fixed a bug when using MDCB with Tyk Gateway versions prior to 4.1 where an error could be reported when querying an API from a worker gateway. - -## 2.0.1 -Release date: 2022-07-20 - -### Added -- Updated MDCB to support Tyk Gateway v4.1 -- Added a new configuration option (`omit_analytics_index_creation`) that supresses the creation of indexes in Mongo pumps (to match Pump 1.6) -- Added the option to configure MDCB certificates using environment variables. - -### Fixed -- Fixed a bug when using MDCB to transfer analytics to MongoDB, where the indexes Tyk created in the MongoDB did not correctly include a time stamp. - -### Changed -- Updated the pump embedded in MDCB to the latest version (Pump v1.6) - - -## 2.0.0 -Release date: 2022-05-17 - -### Added - -#### SQL support -Since Tyk v4.0, the dashboard supports SQL engine natively. This means that Tyk has support for an SQL relational database to be used instead of the default MongoDB and lets users decide which DB type is the best for their usage. MDCB 2.0 introduces support for SQL to the multi data center bridge, enabling MDCB orchestrated deployments using SQL databases. -MDCB now uses embedded Tyk Mongo and SQL pumps to write analytics. - -### Fixed -- Fixed a security risk where API keys could be logged in plain text in MDCB logs. - -### Changed -- Improved the formatting of debug logs to align with the rest of the Tyk product suite. -- Hide innocent and unhelpful error messages related to the RPC connection that were spamming the logs - diff --git a/tyk-docs/content/release-notes/mdcb-2.1.md b/tyk-docs/content/release-notes/mdcb-2.1.md deleted file mode 100644 index eb4ba36ec5..0000000000 --- a/tyk-docs/content/release-notes/mdcb-2.1.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: MDCB v2.1 -menu: - main: - parent: "Release Notes" -weight: 254 ---- - -## 2.1.1 -Release date: 2023-03-29 - -### Fixed -- Updated API Definition to support 5.0.0 Gateways. -- Fixed one critical CVE issue with go.uuid package. - - -## 2.1.0 -Release date: 2023-02-20 - -### Added -- Added a new configuration option [enable_ownership]({{< ref "tyk-multi-data-centre/mdcb-configuration-options#enable_ownership" >}}) that allows MDCB filter APIs by API Ownership. -- MDCB works without group id. This means that when an Edge Gateway doesn’t have a group, it will defaults to the `ungrouped` group. This has some fallbacks, as we can’t use the synchroniser for the ungrouped gateways. - - -### Fixed -- Updated API Definition to support 4.3.3 Gateways. diff --git a/tyk-docs/content/release-notes/mdcb-2.2.md b/tyk-docs/content/release-notes/mdcb-2.2.md deleted file mode 100644 index fad2fa5134..0000000000 --- a/tyk-docs/content/release-notes/mdcb-2.2.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: MDCB v2.2 -menu: - main: - parent: "Release Notes" -weight: 253 ---- - -## 2.2.0 -Release date: 2023-05-26 - -MDCB 2.2.0 brings support for using the official [MongoDB go driver](https://www.mongodb.com/docs/drivers/go/current/?_ga=2.196564399.289488302.1688466439-526957880.1688466345#mongodb-go-driver), as well as some performance fixes. - -From MDCB 2.2.0, we added support for MongoDB 5.0.x and 6.0.x. To enable this, you have to set the new *MDCB* config option driver to `mongo-go`. - -The driver setting defines the driver type to use for MongoDB. It can be one of the following values: -* [mgo](https://github.com/go-mgo/mgo) (default): Uses the `mgo` driver which is the existing one Tyk has been using till now. This driver supports *MongoDB* versions up to v4 (lower or equal to v4, <=v4). You can get more information about this driver [here](https://github.com/go-mgo/mgo). This driver will stay the default till the next release, to allow users more time for migration. After that, the default driver will be `mongo-go`. -* [mongo-go](https://github.com/mongodb/mongo-go-driver): Uses the official *MongoDB driver*. This driver supports MongoDB v4 or newer (greater or equal to v4, >=v4). - -Tyk 5.0.2 and Tyk Pump 1.8.0 also support the new driver option. - -We have also worked on performance improvement and fixes like preventing successive frequent reloads, handling storage errors gracefully, retry connection to storage during startup. If ownership is enabled, gateways will also load APIs that are not associated with any user or group. - -### Added -- Support for `mongo-go` driver option -- Support for the `+srv` connection string with `mongo-go` driver option -- Support for SCRAM-SHA-256 with “mongo-go” driver option -- Performance Enhancement: MDCB enqueue APIs and Policies for reload to reduce multiple reloads -### Fixed -- MDCB handles errors from storage gracefully and prevents sending an empty list of APIs to gateways which would cause an outage -- MDCB will retry the connection to storage to prevent startup failure -### Updated -- If both mongo_url and connection_type + connection_string are set, Mongo will be loaded by default. -- When ownership is enabled, gateways should only load APIs that are associated with the user or group. Additionally, APIs with no association with any users or groups are also loaded. diff --git a/tyk-docs/content/release-notes/mdcb-2.3.md b/tyk-docs/content/release-notes/mdcb-2.3.md deleted file mode 100644 index 5eeffd51bb..0000000000 --- a/tyk-docs/content/release-notes/mdcb-2.3.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: MDCB v2.3 -menu: - main: - parent: "Release Notes" -weight: 252 ---- - -## 2.3.1 - -Release date: 2023-08-31 - -### Fixed - -- In MDCB 2.3, the embedded OAS API Definition introduced in 5.1 is not backward compatible. It causes Gateway panic when MDCB is connecting to Tyk 5.0.x or earlier releases. In this fix, MDCB will transform the old API Definition to new format to avoid panic. -- Users should use URL-encoded values in username and password of a MongoDB connection string if it contains following characters - "?", "@". The same connection string should always be accepted by both mgo and mongo-go drivers. (Note: Same fix for Dashboard will be available in upcoming release Tyk Dashboard v5.0.6 and v5.2.0) - - -## 2.3.0 - -Release date: 2023-06-28 - -MDCB 2.3.0 is an update for compatibility for synchronisation with Tyk v5.1 API Definitions. - -### Updated - -- Update MDCB to Go 1.19 -- Update for compatibility with API definitions for Tyk v5.1 diff --git a/tyk-docs/content/release-notes/pump-1.8.md b/tyk-docs/content/release-notes/pump-1.8.md deleted file mode 100644 index f63a3ef17a..0000000000 --- a/tyk-docs/content/release-notes/pump-1.8.md +++ /dev/null @@ -1,88 +0,0 @@ ---- -title: Pump v1.8 -menu: - main: - parent: "Release Notes" -weight: 300 ---- -## 1.8.3 - -### Changelog - -#### Fixed -- Corrected configuration for _pumps.kafka.meta.timeout_ to be interpreted as the number of seconds (_Type: int_) instead of a duration requiring a unit (_Type: Duration_). -- Fixed an issue where _Graph SQL Pump_ couldn't restart correctly when analytics storage table name was changed in Pump config. Some relations were not torn down and migrated correctly. - -## 1.8.2 - -### Changelog - -#### Fixed -- Resolved performance issue where _SQL Aggregate_ analytics failed to load on the _Dashboard_ during heavy traffic by introducing a new index on the _sql_aggregate_ Pump called _idx_dimension_. -- Fixed _Prometheus Pump_ crashes on non UTF-8 URLs by updating to _prometheus-client_ v1.16. -- Fixed _MongoDB_ connection string issues related to certain characters ("?" and "@"), recommending URL-encoded values in usernames and passwords. This ensures compatibility with both _mgo_ and _mongo-go_ drivers. -- Fixed security vulnerabilities: _CVE-2022-36640_, _CVE-2022-21698_, _GO-2022-0322_ and _GHSA-cg3q-j54f-5p7p_. - -#### Added -- Add `track_all_paths` configuration for _Prometheus Pump_. If enabled, all APIs will have path in the `tyk_http_status_per_path` metric. Otherwise, only endpoint that have "track" plugin set with have path shown in the metric. Endpoints without “track” plugin set will have “unknown” path shown in the metric. - -#### Updated -- Improved security by obfuscating _Mongo Pump_ credentials in log outputs. - -## 1.8.1 - -{{< note >}}### Notes on MongoDB v5 and v6 compatibility - -For MongoDB v5 and v6 users, please [set mongo driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) to `mongo-go`. - -From pump v1.8.1, the default MongoDB driver it uses is [mgo](https://github.com/go-mgo/mgo). This is to align with the default MongoDB driver of other Tyk components. This driver supports MongoDB versions up to v4. If you are using a later version of MongoDB v5 or MongoDB v6, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) to [mongo-go](https://github.com/mongodb/mongo-go-driver). -{{< /note >}} - -### Changelog - -#### Fixed -- GraphQL analytics records were being excluded from the _tyk_analytics_ collection for Mongo Pump. This has been fixed so that GraphQL analytic records are now included as expected. -- Fixed MongoDB connection issue when using a password with URL escape characters (with mongo-go driver) -- Fixed an issue in Prometheus pump when filtering fields , e.g. _API Name_, that contain `--` in their value. For example, `test--name`. Prometheus Pump filtered the field as two separate instances, e.g. `test` & `name`, instead of the expected `test--name`. -- When [`omit_configfile`]({{< ref "tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables.md#omit_config_file" >}}) is set to `true`, Pump will not try to load the config file and spit out error logs - -#### Updated -- Updated the default Hybrid Pump RPC pool size from 20 to 5 connections in order to reduce default CPU and memory footprint. See [Pump configurations]({{< ref "tyk-pump/tyk-pump-configuration/tyk-pump-environment-variables.md#pumpshybridmetarpcpoolsize" >}}) -- Import and use latest [storage library v1.0.5](https://github.com/TykTechnologies/storage/releases/tag/v1.0.5) -- Updated default MongoDB driver to `mgo`. [Follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type) -- Pump name is now case-insensitive. It will override two or more pumps with the same name but in different cases (e.g. _Mongo_ / _mongo_) - - -## 1.8 -Release date: 2023-05-04 - -### Major features -Pump 1.8 introduces two new pumps: The GraphQL SQL Aggregate Pump - which allows you to transfer GraphQL transaction logs to SQL; and Resurface Pump - which allows you to transfer data to [Resurface.io](http://resurface.io/) for context based security analysis. - -We have changed the default MongoDB driver from [mgo](https://github.com/go-mgo/mgo) to [mongo-go](https://github.com/mongodb/mongo-go-driver). The new driver supports MongoDB versions greater or equal to v4. If you are using older version of MongoDB v3.x, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type). - -We have also added a config option that allow you to decode the raw requests and responses for all pumps so you don't need to worry about processing them in your data pipeline. For demo mode, there is now an option to generate future data for your convenience. - -In this release, we are using a new Tyk storage library to connect to Mongo DB. This would allow us to switch to use the official Mongo Driver very easily in the future. - -{{< note >}} -### Notes on MongoDB v3.x compatibility - -In 1.8.0, the default MongoDB driver it use is [mongo-go](https://github.com/mongodb/mongo-go-driver). This driver supports MongoDB versions greater or equal to v4. If you are using older version of MongoDB v3.x, please [follow this guide to update the driver type](https://github.com/TykTechnologies/tyk-pump#driver-type). -{{< /note >}} - -### Changelog - -#### Added -- Added GraphQL SQL Aggregate Pump. -- Added Resurface Pump - Resurface can provide context-based security analysis for attack and failure triage, root cause, threat and risk identification based on detailed API logs sent from Tyk Pump. -- Add config option raw_request_decoded and raw_response_decoded for decoding from base64 the raw requests/responses fields before writing to Pump. This is useful if you want to search for specific values in the raw request/response. Both are disabled by default. This setting is not available for Mongo and SQL pumps, since the dashboard will decode the raw request/response. -- Add the ability to generate future data in demo mode using --demo-future-data flag. -- Remove critical CVE go.uuid vulnerability -- Use the latest Tyk storage library to connect to Mongo -- Hybrid Pump refactoring - we now have better RPC connection control, testability, and documentation - -#### Fixed -- Std pump does not log accurate time when set to json format -- GraphPump doesn’t include names of queries/mutation and subscriptions called -- Mongo Pump’s connection hangs forever if misconfigured diff --git a/tyk-docs/content/shared/mongodb-versions-include.md b/tyk-docs/content/shared/mongodb-versions-include.md index 9ef72cc076..a6beb43a88 100644 --- a/tyk-docs/content/shared/mongodb-versions-include.md +++ b/tyk-docs/content/shared/mongodb-versions-include.md @@ -13,7 +13,7 @@ Note: `mongo-go` driver has been available since Tyk 5.0.2 and is the default fr Prior to Tyk 5.0.2, Tyk used the `mgo` driver which supported MongoDB 3.x to 4.4.x, but we no longer test MongoDB versions prior to 5.0 since they are EOL.
    -We can not guarantee full compatibility with these versions of MongoDB for Tyk and recommend upgrading to a supported MongoDB version. In particular, when using Tyk OAS APIs with [Tyk 5.3.0]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.3.md#TykOAS-v5.3.0" >}}) onwards, the minimum supported version of MongoDB is 5.0. +We can not guarantee full compatibility with these versions of MongoDB for Tyk and recommend upgrading to a supported MongoDB version. In particular, when using Tyk OAS APIs with [Tyk 5.3.0]({{< ref "developer-support/release-notes/dashboard#TykOAS-v5.3.0" >}}) onwards, the minimum supported version of MongoDB is 5.0. {{< /note >}} You can also use the following as a drop-in replacement for MongoDB: diff --git a/tyk-docs/content/tyk-cloud/getting-started-tyk-cloud/first-api.md b/tyk-docs/content/tyk-cloud/getting-started-tyk-cloud/first-api.md index f9eaf4fd14..f8807de977 100644 --- a/tyk-docs/content/tyk-cloud/getting-started-tyk-cloud/first-api.md +++ b/tyk-docs/content/tyk-cloud/getting-started-tyk-cloud/first-api.md @@ -23,7 +23,7 @@ In Tyk Gateway release 5.3.0, Tyk OAS APIs gained feature maturity. Tyk Dashboar It is not possible to rollback to previous versions of Tyk components with Tyk OAS APIs created in 5.3.0. -For further details, please refer to the [release notes]({{< ref "product-stack/tyk-gateway/release-notes/version-5.3.md" >}}) for Tyk Gateway v5.3.0. +For further details, please refer to the [release notes]({{< ref "developer-support/release-notes/gateway" >}}) for Tyk Gateway v5.3.0. {{< /warning >}} ## Steps to add an API in Tyk Cloud diff --git a/tyk-docs/content/tyk-cloud/securing-your-apis.md b/tyk-docs/content/tyk-cloud/securing-your-apis.md index 16a57a3525..4464478a04 100644 --- a/tyk-docs/content/tyk-cloud/securing-your-apis.md +++ b/tyk-docs/content/tyk-cloud/securing-your-apis.md @@ -27,7 +27,7 @@ Here are the most popular ways to secure your APIs. ## 2. Request Signing -Tyk can [sign the request with HMAC or RSA]({{< ref "product-stack/tyk-gateway/release-notes/archived-releases/version-2.9.md#hmac-request-signing" >}}), before sending it to the API target. This is an implementation of an [RFC Signing HTTP Messages(draft 10)](https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures-10). This RFC was designed to provide authenticity of the digital signature of the client. In our flow, the Tyk Cloud Data Planes, as the client, using a certificate private key, will add a header signature to the request. The API, using a pre-agreed public key (based on a meaningful keyId identifier) will verify the authenticity of the request coming from your Tyk Cloud Data Plane. +Tyk can [sign the request with HMAC or RSA]({{< ref "developer-support/release-notes/archived#hmac-request-signing" >}}), before sending it to the API target. This is an implementation of an [RFC Signing HTTP Messages(draft 10)](https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures-10). This RFC was designed to provide authenticity of the digital signature of the client. In our flow, the Tyk Cloud Data Planes, as the client, using a certificate private key, will add a header signature to the request. The API, using a pre-agreed public key (based on a meaningful keyId identifier) will verify the authenticity of the request coming from your Tyk Cloud Data Plane. A limitation is that the APIs or LB need to implement this signature verification and be able to update the certificates as mentioned in [Mutual TLS or Client authorization](#1-mutual-tls-or-client-authorization). ## 3. IP Whitelisting diff --git a/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys.md b/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys.md index 5ab1545042..9e4acc1725 100644 --- a/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys.md +++ b/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/configuring-custom-rate-limit-keys.md @@ -21,10 +21,10 @@ If you are interested in getting access contact us at [support@tyk.io](}}). This guide explains how to configure custom rate limit keys. +To enable this, Tyk introduced support for custom rate limit keys in [Tyk 5.3.0]({{< ref "developer-support/release-notes/dashboard#530-release-notes" >}}). This guide explains how to configure custom rate limit keys. ## Prerequisites for getting started -This capability works with [Tyk 5.3.0]({{< ref "product-stack/tyk-dashboard/release-notes/version-5.3.md" >}}) or higher. +This capability works with [Tyk 5.3.0]({{< ref "developer-support/release-notes/dashboard#530-release-notes" >}}) or higher. ## Configuring custom rate limit keys for policies in Tyk Dashboard Custom rate limit keys are applied at a policy level. When a custom rate limit key is specified, quota, rate limit and throttling will be calculated against the specified value and not against a credential ID. diff --git a/tyk-docs/content/upgrading-tyk.md b/tyk-docs/content/upgrading-tyk.md index f2be048ef2..1ccefd58e3 100644 --- a/tyk-docs/content/upgrading-tyk.md +++ b/tyk-docs/content/upgrading-tyk.md @@ -21,7 +21,7 @@ Our upgrade process adheres to the following standards: - **Breaking changes:** Breaking changes are rare and will be explicitly stated in the release notes. - **Configuration files:** Upgrades do not overwrite your configuration files. However, it’s good practice to routinely back up these files (using git or another tool) before upgrading, so any customizations are saved. - **Migration scripts:** Migration scripts for your APIs, policies, or other assets are generally not required unless specified in the release notes. -- **Long Term Support:** Refer to our [versioning and long-term support policies]({{< ref "developer-support/special-releases-and-features/long-term-support-releases" >}}) for details on major and minor releases, patches, and support dates. +- **Long Term Support:** Refer to our [versioning and long-term support policies]({{< ref "developer-support/release-notes/special-releases#long-term-support-releases" >}}) for details on major and minor releases, patches, and support dates. - **Preparations:** Review the [preparation guidelines]({{< ref "developer-support/upgrading-tyk/preparations/upgrade-guidelines" >}}) before starting the upgrade. - **Release notes:** Always check the "Upgrade Instructions" section in the relevant release notes. - **Backups:** Follow our [comprehensive backup guide]({{< ref "frequently-asked-questions/how-to-backup-tyk" >}}) before starting the upgrade. diff --git a/tyk-docs/data/alias.json b/tyk-docs/data/alias.json index 6f49a3c13c..6356146223 100644 --- a/tyk-docs/data/alias.json +++ b/tyk-docs/data/alias.json @@ -106,5 +106,101 @@ "tyk-stack/tyk-operator/publish-an-api": "#publish-your-api-to-dev-portal", "tyk-stack/tyk-operator/secure-an-api": "#secure-your-oas-api", "tyk-stack/tyk-operator/tyk-operator-reconciliation": "#reconciliation", - "tyk-sync": "#synchronize-tyk-environment-with-github-repository" + "tyk-sync": "#synchronize-tyk-environment-with-github-repository", + "product-stack/tyk-dashboard/release-notes/overview": "#", + "product-stack/tyk-dashboard/release-notes/version-3.0": "#300-release-notes", + "product-stack/tyk-dashboard/release-notes/version-3.1": "#310-release-notes", + "product-stack/tyk-dashboard/release-notes/version-3.2": "#320-release-notes", + "product-stack/tyk-dashboard/release-notes/version-4.0": "#400-release-notes", + "product-stack/tyk-dashboard/release-notes/version-4.1": "#410-release-notes", + "product-stack/tyk-dashboard/release-notes/version-4.2": "#420-release-notes", + "product-stack/tyk-dashboard/release-notes/version-4.3": "#430-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.0": "#500-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.1": "#510-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.2": "#520-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.3": "#530-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.4": "#540-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.5": "#550-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.6": "#560-release-notes", + "product-stack/tyk-dashboard/release-notes/version-5.7": "#570-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2": "#upgrading-to-v23-from-v22", + "product-stack/tyk-gateway/release-notes/overview": "#", + "product-stack/tyk-gateway/release-notes/version-3.0": "#310-release-notes", + "product-stack/tyk-gateway/release-notes/version-3.1": "#310-release-notes", + "product-stack/tyk-gateway/release-notes/version-3.2": "#320-release-notes", + "product-stack/tyk-gateway/release-notes/version-4.0": "#400-release-notes", + "product-stack/tyk-gateway/release-notes/version-4.1": "#410-release-notes", + "product-stack/tyk-gateway/release-notes/version-4.2": "#420-release-notes", + "product-stack/tyk-gateway/release-notes/version-4.3": "#430-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.0": "#500-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.1": "#510-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.2": "#520-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.3": "#530-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.4": "#540-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.5": "#550-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.6": "#560-release-notes", + "product-stack/tyk-gateway/release-notes/version-5.7": "#570-release-notes", + "product-stack/tyk-charts/release-notes/version-1.3": "#130-release-notes", + "product-stack/tyk-charts/release-notes/version-1.4": "#140-release-notes", + "product-stack/tyk-charts/release-notes/version-1.5": "#150-release-notes", + "product-stack/tyk-charts/release-notes/version-1.6": "#160-release-notes", + "product-stack/tyk-charts/release-notes/version-2.0": "#200-release-notes", + "product-stack/tyk-charts/release-notes/version-2.1": "#210-release-notes", + "product-stack/tyk-charts/release-notes/version-2.2": "#220-release-notes", + "product-stack/tyk-enterprise-mdcb/release-notes/version-2.4": "#240-release-notes", + "product-stack/tyk-enterprise-mdcb/release-notes/version-2.5": "#250-release-notes", + "product-stack/tyk-enterprise-mdcb/release-notes/version-2.6": "#260-release-notes", + "product-stack/tyk-enterprise-mdcb/release-notes/version-2.7": "#270-release-notes", + "product-stack/tyk-operator/release-notes/operator-0.16": "#0160-release-notes", + "product-stack/tyk-operator/release-notes/operator-0.17": "#0170-release-notes", + "product-stack/tyk-operator/release-notes/operator-0.18": "#0180-release-notes", + "product-stack/tyk-operator/release-notes/operator-1.0": "#100-release-notes", + "product-stack/tyk-operator/release-notes/operator-1.1": "#110-release-notes", + "product-stack/tyk-operator/release-notes/overview": "#", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0": "#110-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0": "#1100-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0": "#1110-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0": "#1120-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0": "#120-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0": "#130-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0": "#140-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0": "#150-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0": "#160-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0": "#170-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0": "#180-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1": "#181-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2": "#182-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3": "#183-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4": "#184-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5": "#185-release-notes", + "product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0": "#190-release-notes", + "product-stack/tyk-pump/release-notes/pump-1.10": "#110-release-notes", + "product-stack/tyk-pump/release-notes/pump-1.11": "#111-release-notes", + "product-stack/tyk-pump/release-notes/pump-1.9": "#190-release-notes", + "product-stack/tyk-sync/release-notes/sync-1.4": "#140-release-notes", + "product-stack/tyk-sync/release-notes/sync-1.5": "#150-release-notes", + "product-stack/tyk-sync/release-notes/sync-2.0": "#200-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4": "#240-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5": "#250-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6": "#260-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7": "#270-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8": "#280-release-notes", + "product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9": "#290-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.4": "#240-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.5": "#250-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.6": "#260-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.7": "#270-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.8": "#280-release-notes", + "product-stack/tyk-gateway/release-notes/archived-releases/version-2.9": "#290-release-notes", + "product-stack/tyk-identity-broker/release-notes/tib-v1.6": "#161-release-notes", + "release-notes/mdcb-2.0": "#200-release-notes", + "release-notes/mdcb-2.1": "#210-release-notes", + "release-notes/mdcb-2.2": "#220-release-notes", + "release-notes/mdcb-2.3": "#230-release-notes", + "release-notes/pump-1.8": "#180-release-notes", + "developer-support/special-releases-and-features/early-access-features": "#early-access-features", + "developer-support/special-releases-and-features/fips-release": "#fips-releases", + "developer-support/special-releases-and-features/lab-releases": "#lab-releases", + "developer-support/special-releases-and-features/long-term-support-releases": "#long-term-support-releases", + "developer-support/tyk-release-summary/overview": "#" } \ No newline at end of file diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 1f1edb92d1..eb64155b23 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -2383,116 +2383,6 @@ menu: path: /error-response-codes category: Page show: True - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Changelog" - category: Page - show: False - - title: "Overview" - path: /product-stack/tyk-gateway/release-notes/overview - category: page - show: True - - title: "Tyk Gateway v5.7" - path: /product-stack/tyk-gateway/release-notes/version-5.7 - category: Page - show: True - - title: "Tyk Gateway v5.6" - path: /product-stack/tyk-gateway/release-notes/version-5.6 - category: Page - show: True - - title: "Tyk Gateway v5.5" - path: /product-stack/tyk-gateway/release-notes/version-5.5 - category: Page - show: True - - title: "Tyk Gateway v5.4" - path: /product-stack/tyk-gateway/release-notes/version-5.4 - category: Page - show: True - - title: "Tyk Gateway v5.3 LTS" - path: /product-stack/tyk-gateway/release-notes/version-5.3 - category: Page - show: True - - title: "Tyk Gateway v5.2" - path: /product-stack/tyk-gateway/release-notes/version-5.2 - category: Page - show: True - - title: "Tyk Gateway v5.1" - category: Page - path: /product-stack/tyk-gateway/release-notes/version-5.1 - show: True - - title: "Tyk Gateway v5.0" - path: /product-stack/tyk-gateway/release-notes/version-5.0 - category: Page - show: True - - title: "Tyk Gateway v4.3" - path: /product-stack/tyk-gateway/release-notes/version-4.3 - category: Page - show: True - - title: "Tyk Gateway v4.2" - path: /product-stack/tyk-gateway/release-notes/version-4.2 - category: Page - show: True - - title: "Tyk Gateway v4.1" - path: /product-stack/tyk-gateway/release-notes/version-4.1 - category: Page - show: True - - title: "Tyk Gateway v4.0" - path: /product-stack/tyk-gateway/release-notes/version-4.0 - category: Page - show: True - - title: "Tyk Gateway v3.2" - path: /product-stack/tyk-gateway/release-notes/version-3.2 - category: Page - show: True - - title: "Tyk Gateway v3.1" - path: /product-stack/tyk-gateway/release-notes/version-3.1 - category: Page - show: True - - title: "Tyk Gateway v3.0" - path: /product-stack/tyk-gateway/release-notes/version-3.0 - category: Page - show: True - - title: "Archived releases" - category: Directory - show: True - menu: - - title: "Tyk Gateway v2.9" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.9 - category: Page - show: True - - title: "Tyk Gateway v2.8" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.8 - category: Page - show: True - - title: "Tyk Gateway v2.7" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.7 - category: Page - show: True - - title: "Tyk Gateway v2.6" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.6 - category: Page - show: True - - title: "Tyk Gateway v2.5" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.5 - category: Page - show: True - - title: "Tyk Gateway v2.4" - path: /product-stack/tyk-gateway/release-notes/archived-releases/version-2.4 - category: Page - show: True - - title: "Upgrading to v2.3 from v2.2" - path: /product-stack/tyk-gateway/release-notes/archived-releases/upgrading-v2-3-v2-2 - category: Page - show: True - - title: "Release highlights and upgrades" - category: Directory - show: False - menu: - - title: "[version]" - category: Page - show: False - title: "Tyk Dashboard" category: Directory show: True @@ -2861,109 +2751,6 @@ menu: path: /tyk-stack/dependencies/mongodb/x509-client-auth category: Page show: True - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Overview" - category: Page - path: /product-stack/tyk-dashboard/release-notes/overview - show: True - - title: "Tyk Dashboard v5.7" - path: /product-stack/tyk-dashboard/release-notes/version-5.7 - category: Page - show: True - - title: "Tyk Dashboard v5.6" - path: /product-stack/tyk-dashboard/release-notes/version-5.6 - category: Page - show: True - - title: "Tyk Dashboard v5.5" - path: /product-stack/tyk-dashboard/release-notes/version-5.5 - category: Page - show: True - - title: "Tyk Dashboard v5.4" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-5.4 - show: True - - title: "Tyk Dashboard v5.3 LTS" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-5.3 - show: True - - title: "Tyk Dashboard v5.2" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-5.2 - show: True - - title: "Tyk Dashboard v5.1" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-5.1 - show: True - - title: "Tyk Dashboard v5.0" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-5.0 - show: True - - title: "Tyk Dashboard v4.3" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-4.3 - show: True - - title: "Tyk Dashboard v4.2" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-4.2 - show: True - - title: "Tyk Dashboard v4.1" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-4.1 - show: True - - title: "Tyk Dashboard v4.0" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-4.0 - show: True - - title: "Tyk Dashboard v3.2" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-3.2 - show: True - - title: "Tyk Dashboard v3.1" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-3.1 - show: True - - title: "Tyk Dashboard v3.0" - category: Page - path: /product-stack/tyk-dashboard/release-notes/version-3.0 - show: True - - title: "Changelog" - category: Page - show: False - - title: "Archived releases" - category: Directory - show: True - menu: - - title: "Tyk Dashboard v2.9" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.9" - category: Page - show: true - - title: "Tyk Dashboard v2.8" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.8" - category: Page - show: true - - title: "Tyk Dashboard v2.7" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.7" - category: Page - show: true - - title: "Tyk Dashboard v2.6" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.6" - category: Page - show: true - - title: "Tyk Dashboard v2.5" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.5" - category: Page - show: true - - title: "Tyk Dashboard v2.4" - path: "/product-stack/tyk-dashboard/release-notes/archived-releases/version-2.4" - category: Page - show: true - - title: "Release highlights and upgrades" - category: Directory - show: False - menu: - title: "Tyk Classic Developer Portal" category: Directory show: True @@ -3144,10 +2931,6 @@ menu: path: /troubleshooting/tyk-dashboard/receive-csrf-error-developer-portal category: Page show: True - - title: "Release notes" - category: Directory - show: False - menu: - title: "Universal Data Graph (UDG)" category: Directory show: True @@ -3220,10 +3003,6 @@ menu: category: Directory show: False menu: - - title: "Technical release notes" - category: Directory - show: False - menu: - title: "Tyk Enterprise Developer Portal" category: Directory show: True @@ -3472,78 +3251,6 @@ menu: path: /product-stack/tyk-enterprise-developer-portal/deploy/configuration category: Page show: True - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Version 1.12.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.12.0 - category: Page - show: True - - title: "Version 1.11.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.11.0 - category: Page - show: True - - title: "Version 1.10.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.10.0 - category: Page - show: True - - title: "Version 1.9.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.9.0 - category: Page - show: True - - title: "Version 1.8.5" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.5 - category: Page - show: True - - title: "Version 1.8.4" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.4 - category: Page - show: True - - title: "Version 1.8.3" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.3 - category: Page - show: True - - title: "Version 1.8.2" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.2 - category: Page - show: True - - title: "Version 1.8.1" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.1 - category: Page - show: True - - title: "Version 1.8.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.8.0 - category: Page - show: True - - title: "Version 1.7.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.7.0 - category: Page - show: True - - title: "Version 1.6.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.6.0 - category: Page - show: True - - title: "Version 1.5.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.5.0 - category: Page - show: True - - title: "Version 1.4.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.4.0 - category: Page - show: True - - title: "Version 1.3.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.3.0 - category: Page - show: True - - title: "Version 1.2.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.2.0 - category: Page - show: True - - title: "Version 1.1.0" - path: /product-stack/tyk-enterprise-developer-portal/release-notes/portal-1.1.0 - category: Page - show: True - title: "API documentation" category: Directory show: True @@ -3620,42 +3327,6 @@ menu: category: Directory show: False menu: - - title: "Release notes" - category: Directory - show: True - menu: - - title: "MDCB v2.7" - path: /product-stack/tyk-enterprise-mdcb/release-notes/version-2.7 - category: Page - show: True - - title: "MDCB v2.6" - path: /product-stack/tyk-enterprise-mdcb/release-notes/version-2.6 - category: Page - show: True - - title: "MDCB v2.5" - path: /product-stack/tyk-enterprise-mdcb/release-notes/version-2.5 - category: Page - show: True - - title: "MDCB v2.4" - path: /product-stack/tyk-enterprise-mdcb/release-notes/version-2.4 - category: Page - show: True - - title: "MDCB v2.3" - path: /release-notes/mdcb-2.3 - category: Page - show: True - - title: "MDCB v2.2" - path: /release-notes/mdcb-2.2 - category: Page - show: True - - title: "MDCB v2.1" - path: /release-notes/mdcb-2.1 - category: Page - show: True - - title: "MDCB v2.0" - path: /release-notes/mdcb-2.0 - category: Page - show: True - title: "Tyk Pump (Open Source)" category: Directory show: True @@ -3776,45 +3447,10 @@ menu: path: /tyk-stack/tyk-pump/tyk-pump-configuration/graceful-shutdowm category: Page show: True - - title: "Release notes" - category: Directory - show: False - menu: - - title: "Changelog" - category: Page - show: False - - title: "Old releases" - category: Directory - show: False - menu: - - title: "Release highlights and upgrades" - category: Directory - show: False - menu: - title: "Supported Backends" path: /tyk-stack/tyk-pump/other-data-stores category: Page show: True - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Pump v1.11" - path: /product-stack/tyk-pump/release-notes/pump-1.11 - category: Page - show: True - - title: "Pump v1.10" - path: /product-stack/tyk-pump/release-notes/pump-1.10 - category: Page - show: True - - title: "Pump v1.9" - path: /product-stack/tyk-pump/release-notes/pump-1.9 - category: Page - show: True - - title: "Pump v1.8" - path: /release-notes/pump-1.8 - category: Page - show: True - title: "Tyk Operator" category: Directory show: True @@ -3831,34 +3467,6 @@ menu: path: /product-stack/tyk-operator/advanced-configurations/custom-plugins category: Page show: True - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Overview" - path: /product-stack/tyk-operator/release-notes/overview - category: Page - show: True - - title: "Tyk Operator v1.1" - path: /product-stack/tyk-operator/release-notes/operator-1.1 - category: Page - show: True - - title: "Tyk Operator v1.0" - path: /product-stack/tyk-operator/release-notes/operator-1.0 - category: Page - show: True - - title: "Tyk Operator v0.18" - path: /product-stack/tyk-operator/release-notes/operator-0.18 - category: Page - show: True - - title: "Tyk Operator v0.17" - path: /product-stack/tyk-operator/release-notes/operator-0.17 - category: Page - show: True - - title: "Tyk Operator v0.16" - path: /product-stack/tyk-operator/release-notes/operator-0.16 - category: Page - show: True - title: "Tyk Streams" category: Directory show: True @@ -4017,24 +3625,8 @@ menu: show: True - title: "Tyk Sync" category: Directory - show: True + show: False menu: - - title: "Release notes" - category: Directory - show: True - menu: - - title: "Tyk Sync v2.0" - path: /product-stack/tyk-sync/release-notes/sync-2.0 - category: Page - show: True - - title: "Tyk Sync v1.5" - path: /product-stack/tyk-sync/release-notes/sync-1.5 - category: Page - show: True - - title: "Tyk Sync v1.4" - path: /product-stack/tyk-sync/release-notes/sync-1.4 - category: Page - show: True - title: "Tyk Identity Broker (Open Source)" category: Directory show: True @@ -4071,14 +3663,6 @@ menu: path: /tyk-configuration-reference/tyk-identity-broker-configuration category: Page show: True - - title: "Release Notes" - category: Directory - show: True - menu: - - title: "Tyk Identity Broker 1.6" - path: /product-stack/tyk-identity-broker/release-notes/tib-v1.6 - category: Page - show: True - title: "Tyk Helm Charts (Open Source)" category: Directory show: True @@ -4103,38 +3687,6 @@ menu: path: /product-stack/tyk-charts/tyk-oss-chart category: Page show: True - - title: "Release Notes" - category: Directory - show: True - menu: - - title: "Tyk Charts 2.2" - path: /product-stack/tyk-charts/release-notes/version-2.2 - category: Page - show: True - - title: "Tyk Charts 2.1" - path: /product-stack/tyk-charts/release-notes/version-2.1 - category: Page - show: True - - title: "Tyk Charts 2.0" - path: /product-stack/tyk-charts/release-notes/version-2.0 - category: Page - show: True - - title: "Tyk Charts 1.6" - path: /product-stack/tyk-charts/release-notes/version-1.6 - category: Page - show: True - - title: "Tyk Charts 1.5" - path: /product-stack/tyk-charts/release-notes/version-1.5 - category: Page - show: True - - title: "Tyk Charts 1.4" - path: /product-stack/tyk-charts/release-notes/version-1.4 - category: Page - show: True - - title: "Tyk Charts 1.3" - path: /product-stack/tyk-charts/release-notes/version-1.3 - category: Page - show: True - title: "Developer Support" path: /frequently-asked-questions/faq category: Label @@ -4180,26 +3732,6 @@ menu: category: Directory show: False menu: - - title: "Special Releases and Features" - category: Directory - show: True - menu: - - title: "Long Term Support Releases" - path: /developer-support/special-releases-and-features/long-term-support-releases - category: Page - show: True - - title: "Lab Releases" - path: /developer-support/special-releases-and-features/lab-releases - category: Page - show: True - - title: "Early Access Features" - path: /developer-support/special-releases-and-features/early-access-features - category: Page - show: True - - title: "FIPS Releases" - path: /developer-support/special-releases-and-features/fips-release - category: Page - show: True - title: "Frequently Asked Questions" category: Directory show: True @@ -4326,14 +3858,58 @@ menu: category: Directory show: True menu: + - title: "Latest Tyk Releases" + path: /developer-support/release-notes/overview + category: Page + show: True + - title: "Gateway" + path: /developer-support/release-notes/gateway + category: Page + show: True + - title: "Dashboard" + path: /developer-support/release-notes/dashboard + category: Page + show: True + - title: "Pump" + path: /developer-support/release-notes/pump + category: Page + show: True + - title: "Sync" + path: /developer-support/release-notes/sync + category: Page + show: True + - title: "Multi Data Center Bridge" + path: /developer-support/release-notes/mdcb + category: Page + show: True + - title: "Enterprise Developer Portal" + path: /developer-support/release-notes/portal + category: Page + show: True + - title: "Tyk Operator" + path: /developer-support/release-notes/operator + category: Page + show: True + - title: "Tyk Chart" + path: /developer-support/release-notes/helm-chart + category: Page + show: True + - title: "Tyk Identity Broker" + path: /developer-support/release-notes/tib + category: Page + show: True - title: "Tyk Cloud" path: /developer-support/release-notes/cloud category: Page show: True - - title: "Latest Tyk Releases" - path: /developer-support/tyk-release-summary/overview - category: Page - show: True + - title: "Archived Releases" + path: /developer-support/release-notes/archived + category: Page + show: True + - title: "Special Releases" + path: /developer-support/release-notes/special-releases + category: Page + show: True - title: "Documentation Projects" category: Directory show: True From d154911f8176ded9ac7c0d05b09d05c4265c9084 Mon Sep 17 00:00:00 2001 From: andyo-tyk <99968932+andyo-tyk@users.noreply.github.com> Date: Thu, 12 Dec 2024 07:39:46 +0000 Subject: [PATCH 33/39] [DX-1778] Improve documentation of Tyk as authorization server (#5798) --- .../advanced-configuration/integrate/sso.md | 2 +- .../transform-traffic/endpoint-designer.md | 2 +- .../content/api-management/automations.md | 22 +- ...horization.md => client-authentication.md} | 3591 +++++++++-------- .../api-management/security-best-practices.md | 16 +- .../api-management/upstream-authentication.md | 15 +- .../control-limit-traffic/rate-limiting.md | 4 +- .../ext-oauth-middleware.md | 4 +- .../release-notes/archived.md | 10 +- .../release-notes/dashboard.md | 10 +- .../release-notes/gateway.md | 10 +- .../how-to-connect-to-documentdb.md | 3 +- .../getting-started/configure-first-api.md | 2 +- .../key-concepts/authentication.md | 12 +- .../key-concepts/oas-versioning.md | 2 +- .../key-concepts/versioning.md | 2 +- tyk-docs/content/graphql/creating-gql-api.md | 4 +- tyk-docs/content/key-concepts/grpc-proxy.md | 6 +- tyk-docs/content/plan-your-api-integration.md | 2 +- tyk-docs/content/planning-for-production.md | 2 +- tyk-docs/content/plugins.md | 2 +- .../rich-plugins-data-structures.md | 4 +- .../api-versioning/api-versioning.md | 2 +- .../content/shared/api-def-authentication.md | 4 +- tyk-docs/content/shared/api-def-version.md | 2 +- tyk-docs/content/shared/create-api-include.md | 4 +- tyk-docs/content/shared/mdcb-config.md | 2 +- .../tyk-dashboard-api/oauth-key-management.md | 74 +- .../api-definition-objects/jwt.md | 4 +- tyk-docs/content/tyk-components.md | 2 +- .../tyk-portal-classic/gluu-dcr.md | 2 +- .../tyk-portal-classic/keycloak-dcr.md | 2 +- .../portal-oauth-clients.md | 4 +- .../api-access/dynamic-client-registration.md | 2 +- tyk-docs/data/alias.json | 34 +- tyk-docs/data/menu.yaml | 1602 ++++---- 36 files changed, 2792 insertions(+), 2675 deletions(-) rename tyk-docs/content/api-management/{authentication-authorization.md => client-authentication.md} (67%) diff --git a/tyk-docs/content/advanced-configuration/integrate/sso.md b/tyk-docs/content/advanced-configuration/integrate/sso.md index de31c0eba9..221badaec5 100644 --- a/tyk-docs/content/advanced-configuration/integrate/sso.md +++ b/tyk-docs/content/advanced-configuration/integrate/sso.md @@ -13,7 +13,7 @@ weight: 0 ### SSO - The generic use case SSO gives users the ability to log in to multiple applications without the need to enter their password more than once. -[OIDC]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}) or SAML enables an application to verify the identity of users from an organization without the need to self store and manage them, and without doing the identification process and exposing their passwords to that application. Their lists of users and passwords are kept safe in one single place, in the IDP that the organization has chosen to use. The Authorization server of the IdP identify the users for a pre-registered and approved application (`client` in OAuth and OIDC terminology). +OpenID Connect and SAML enable an application to verify the identity of users from an organization without the need to self store and manage them, and without doing the identification process and exposing their passwords to that application. Their lists of users and passwords are kept safe in one single place, in the IDP that the organization has chosen to use. The Authorization server of the IdP identify the users for a pre-registered and approved application (`client` in OAuth and OIDC terminology). ### SSO in Tyk diff --git a/tyk-docs/content/advanced-configuration/transform-traffic/endpoint-designer.md b/tyk-docs/content/advanced-configuration/transform-traffic/endpoint-designer.md index 479cf756b3..f0a926c7d2 100644 --- a/tyk-docs/content/advanced-configuration/transform-traffic/endpoint-designer.md +++ b/tyk-docs/content/advanced-configuration/transform-traffic/endpoint-designer.md @@ -25,7 +25,7 @@ The **Core Settings** tab provides access to configure basic settings for the AP - [Service Discovery]({{< ref "planning-for-production/ensure-high-availability/service-discovery" >}}) - [API Ownership]({{< ref "product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership" >}}) - [API level rate limiting]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting#configuring-the-rate-limiter-at-the-api-level" >}}) -- [Authentication]({{< ref "/api-management/authentication-authorization" >}}) +- [Authentication]({{< ref "/api-management/client-authentication" >}}) ## Versions diff --git a/tyk-docs/content/api-management/automations.md b/tyk-docs/content/api-management/automations.md index 1db795c8b4..93524d0e4d 100644 --- a/tyk-docs/content/api-management/automations.md +++ b/tyk-docs/content/api-management/automations.md @@ -291,10 +291,10 @@ To address this challenge, Tyk Operator allows you to directly reference certifi | Certificate Type | Supported in ApiDefinition | Supported in TykOasApiDefinition | Supported in TykStreamsApiDefinition | |------------------|-------------|---------|---------| -| Client certifates | ✅ [Client mTLS]({{}}) | ✅ [Client mTLS]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | +| Client certifates | ✅ [Client mTLS]({{}}) | ✅ [Client mTLS]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | | Custom domain certificates | ✅ [TLS and SSL]({{}}) | ✅ [TLS and SSL]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | | Public keys pinning | ✅ [Certificate pinning]({{}}) | ✅ [Certificate pinning]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | -| Upstream mTLS | ✅ [Upstream mTLS via Operator]({{}}) | ✅ [Upstream mTLS via Operator]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | +| Upstream mTLS | ✅ [Upstream mTLS via Operator]({{}}) | ✅ [Upstream mTLS via Operator]({{}}) | Certificate ID can be set in the API Definition but configuring certificates from Secrets in CRD is not supported. | ### Install and Configure Tyk Operator @@ -823,7 +823,7 @@ In this example, we added the following sections to configure key authentication - `security`: Applies the authentication globally to all endpoints. - `x-tyk-api-gateway.server.authentication`: Tyk-specific extension to enable the authentication scheme. -You can configure your API for any Tyk supported authentication method by following [Authentication with Tyk OAS]({{}}) documentation. +You can configure your API for any Tyk supported authentication method by following [Authentication with Tyk OAS]({{< ref "getting-started/key-concepts/authentication">}}) documentation. Save your updated API definition in the same file, `oas-api-definition.json`. @@ -1213,7 +1213,7 @@ Client to Gateway Authentication in Tyk ensures secure communication between cli ##### Keyless (Open) -This configuration allows [keyless (open)]({{}}) access to the API without any authentication. +This configuration allows [keyless (open)]({{< ref "api-management/client-authentication#open-no-authentication">}}) access to the API without any authentication. ```yaml {hl_lines=["7-7"],linenos=false} apiVersion: tyk.tyk.io/v1alpha1 @@ -1233,7 +1233,7 @@ spec: ##### Auth Token (Bearer Token) -This setup requires a [bearer token]({{}}) for access. +This setup requires a [bearer token]({{< ref "api-management/client-authentication#use-auth-tokens">}}) for access. In the below example, the authentication token is set by default to the `Authorization` header of the request. You can customize this behavior by configuring the following fields: @@ -1242,7 +1242,7 @@ In the below example, the authentication token is set by default to the `Authori - `use_param`: Set to true to allow the token to be passed as a query parameter. - `param_name`: Specify the parameter name if use_param is enabled. - `use_certificate`: Enable client certificate. This allows you to create dynamic keys based on certificates. -- `validate_signature`: Enable [signature validation]({{}}). +- `validate_signature`: Enable [signature validation]({{< ref "api-management/client-authentication#auth-token-signature-validation">}}). ```yaml {hl_lines=["13-35"],linenos=false} apiVersion: tyk.tyk.io/v1alpha1 @@ -1284,11 +1284,11 @@ spec: ##### JWT -This configuration uses [JWT tokens]({{}}) for authentication. +This configuration uses [JWT tokens]({{< ref "api-management/client-authentication#use-json-web-tokens-jwt">}}) for authentication. Users can configure JWT authentication by defining the following fields: -- `jwt_signing_method`: Specify the method used to sign the JWT. Refer to [JWT Signing Method]({{}}) for supported methods. +- `jwt_signing_method`: Specify the method used to sign the JWT. Refer to [JWT Signing Method]({{< ref "api-management/client-authentication#set-up-jwt-signing-method">}}) for supported methods. - `jwt_source`: Specify the public key used for verifying the JWT. - `jwt_identity_base_field`: Define the identity source, typically set to `sub` (subject), which uniquely identifies the user or entity. - `jwt_policy_field_name`: Specify the claim within the JWT payload that indicates the policy ID to apply. @@ -1375,7 +1375,7 @@ curl http://localhost:8080/httpbin-jwt1/get -H 'Authorization: Bearer eyJhbGciOi ##### Basic Authentication -This configuration uses [Basic Authentication]({{}}), requiring a username and password for access. +This configuration uses [Basic Authentication]({{< ref "api-management/client-authentication#use-basic-authentication">}}), requiring a username and password for access. ```yaml {hl_lines=["13-13"],linenos=false} apiVersion: tyk.tyk.io/v1alpha1 @@ -1460,9 +1460,9 @@ spec: ##### Multiple (Chained) Auth -This setup allows for [multiple authentication]({{}}) methods to be chained together, requiring clients to pass through each specified authentication provider. +This setup allows for [multiple authentication]({{< ref "api-management/client-authentication#combine-authentication-methods">}}) methods to be chained together, requiring clients to pass through each specified authentication provider. -To enable multiple (chained) auth, you should set `base_identity_provided_by` field to one of the supported chained enums. Consult [Enable Multi (Chained) Authentication in your API Definition]({{}}) for the supported auths. +To enable multiple (chained) auth, you should set `base_identity_provided_by` field to one of the supported chained enums. Consult [Enable Multi (Chained) Authentication in your API Definition]({{< ref "api-management/client-authentication#enable-multi-chained-authentication-in-your-api-definition">}}) for the supported auths. In this example, we are creating an API definition with basic authentication and mTLS with basic authentication as base identity for `httpbin-multiple-authentications`. diff --git a/tyk-docs/content/api-management/authentication-authorization.md b/tyk-docs/content/api-management/client-authentication.md similarity index 67% rename from tyk-docs/content/api-management/authentication-authorization.md rename to tyk-docs/content/api-management/client-authentication.md index 0f5f45f019..d7fe46ec07 100644 --- a/tyk-docs/content/api-management/authentication-authorization.md +++ b/tyk-docs/content/api-management/client-authentication.md @@ -1,7 +1,7 @@ --- -title: Authentication and Authorization -description: Learn how to apply security options to lock down your APIs with Tyk. Here you will find everything there is to know about Authentication and Authorization in Tyk. -tags: ["Authentication", "Authorization", "Tyk Authentication", "Tyk Authorization", "Secure APIs"] +title: Client Authentication and Authorization +description: Learn how to apply the most appropriate authentication method to secure access your APIs with Tyk. Here you will find everything there is to know about authenticating and authorizing API clients with Tyk. +tags: ["Authentication", "Authorization", "Tyk Authentication", "Tyk Authorization", "Secure APIs", "client"] aliases: - /advanced-configuration/integrate/api-auth-mode/json-web-tokens - /advanced-configuration/integrate/api-auth-mode/oidc-auth0-example @@ -52,369 +52,332 @@ aliases: - /basic-config-and-security/security/your-apis/oauth2.0/revoke-oauth-tokens - /security/tls-and-ssl/mutual-tls - /security/your-apis/oauth-2-0 + - /api-management/client-authentication.md + - /api-management/authentication-authorization + --- + ## Introduction -In API management, authentication and authorization are responsible for controlling access to your APIs and protecting sensitive data. Each serves a distinct purpose: -* **Authentication**: Confirms the identity of the user or system making the API request. This step validates "who" is attempting to access the API, commonly through methods like tokens, passwords, or certificates. +Tyk Gateway sits between your clients and your services, securely routing requests and responses. For each API proxy that you expose on Tyk, you can configure a range of different methods that clients must use to identify (authenticate) themselves to Tyk Gateway when making a request to access the API. + +*Authentication* and *Authorization* are the processes that you use to control access to your APIs and protect your upstream services. Each serves a distinct purpose: + +* **Authentication** (or **AuthN**) is the process of confirming the identity of the user or system making the API request. This step validates "who" is attempting to access the API, commonly using credentials such as tokens, passwords, or certificates. -* **Authorization**: Determines if the authenticated user or system has the right permissions to perform the requested action. This step defines "what" they are allowed to do based on assigned roles, scopes, or policies. +* **Authorization** (or **AuthZ**) is the process that determines if the user or system has the right permissions to perform the requested action. This step defines "what" they are allowed to do based on assigned roles, scopes, or policies. -Together, these processes allow API providers to control access, safeguard data integrity, and meet security and compliance standards, making them vital for any API management strategy. +Whilst AuthN and AuthZ are separate actions with different standards, they are often considered together under the topic of *Securing the API*. Together, these processes allow API providers to control access, safeguard data integrity, and meet security and compliance standards, making them vital for any API management strategy. --- -Tyk offers various authentication and authorization methods to secure your APIs. This page provides an overview of the industry-standard options available, helping you choose what works best for you. +## How does Tyk Implement Authentication and Authorization? + +The API request processing flow within Tyk Gateway consists of a [chain of middleware]({{< ref "concepts/middleware-execution-order" >}}) that perform different checks and transformations on the request (headers, parameters and payload). Several dedicated **authentication middleware** are provided and there is also support for user-provided **custom authentication plugins**. Multiple authentication middleware can be chained together if required by the API's access security needs. *Note that it is not possible to set the order of chained auth methods.* + +The middleware to be used is selected and configured using the API definition: +- when using Tyk OAS APIs, the OpenAPI description can contain a list of `securitySchemes` which define the authentication methods to be used for the API; the detailed configuration of the Tyk authentication middleware is set in the in the `server.authentication` section of the `x-tyk-api-gateway` extension +- when using Tyk Classic APIs, each authentication middleware has its own section within the API definition + +For all authentication methods, Tyk provides an option to strip the authorization metadata (e.g. the `Authorization` header) from the request before proxying it to the upstream. This avoids the risk of accidentally exposing sensitive data to the upstream or conflicting with upstream authentication. + +## What does Tyk Support? -Use Ctrl+F or the sidebar to find specific topics, like “JWT” for JSON Web Tokens or “mTLS” for mutual TLS. +Tyk includes support for various industry-standard methods to secure your APIs. This page provides an overview of the options available, helping you to choose and implement what works best for you. -You can also use the links below to jump directly to sections on Tyk-supported methods for securing your APIs. +Use Ctrl+F or the sidebar to find specific topics, for example “JWT” for JSON Web Tokens or “mTLS” for mutual TLS. + +You can also use the links below to jump directly to the appropriate sections to learn how to secure your APIs using Tyk. {{< grid >}} +{{< badge title="OAuth 2.0" href="api-management/client-authentication/#use-tyk-as-an-oauth-20-authorization-server" >}} +Delegate authentication using one of the most widely used open standard protocols +{{< /badge >}} + +{{< badge title="JWT" href="api-management/client-authentication/#use-json-web-tokens-jwt" >}} +Securely transmit information between parties. +{{< /badge >}} -{{< badge title="OAuth 2.0" href="api-management/authentication-authorization/#set-up-oauth-20-authorization" >}} -Delegate authentication using a widely adopted framework. +{{< badge title="Basic Auth" href="api-management/client-authentication/#use-basic-authentication" >}} +Secure APIs with username and password credentials. {{< /badge >}} -{{< badge title="Bearer Tokens" href="api-management/authentication-authorization/#use-bearer-tokens" >}} +{{< badge title="Auth Tokens" href="api-management/client-authentication/#use-auth-tokens" >}} Implement token-based authentication for API access. {{< /badge >}} -{{< badge title="External OAuth" href="api-management/authentication-authorization/#integrate-external-oauth-middleware" >}} -Integrate with external providers for centralized authentication. +{{< badge title="mTLS" href="api-management/client-authentication/#use-mutual-tls" >}} +Establish secure channels with two-way certificate verification. {{< /badge >}} -{{< badge title="HMAC" href="api-management/authentication-authorization/#sign-requests-with-hmac" >}} +{{< badge title="HMAC" href="api-management/client-authentication/#sign-requests-with-hmac" >}} Verify message integrity using shared secret keys. {{< /badge >}} -{{< badge title="JWT" href="api-management/authentication-authorization/#use-json-web-tokens-jwt" >}} -Securely transmit information between parties. + -{{< badge title="mTLS" href="api-management/authentication-authorization/#enable-mutual-tls" >}} -Establish secure channels with two-way certificate verification. +{{< badge title="Custom Authentication" href="api-management/client-authentication/#custom-authentication" >}} +Create custom plugins to implement specific authentication requirements. {{< /badge >}} -{{< badge title="Open Access" href="api-management/authentication-authorization/#use-open-keyless-authentication" >}} +{{< badge title="Open Access" href="api-management/client-authentication/#open-no-authentication" >}} Allow unrestricted access for public APIs. {{< /badge >}} +{{< /grid >}} -{{< badge title="Basic Auth" href="api-management/authentication-authorization/#use-basic-authentication" >}} -Secure APIs with username and password credentials. -{{< /badge >}} - +--- +## Use Tyk as an OAuth 2.0 Authorization Server -{{< /grid >}} +Tyk can act as a OAuth 2.0 *authorization server*, performing token generation and management for *clients* accessing APIs deployed on Tyk. There are many great resources on the Internet that will help you to understand the OAuth 2.0 Authorization Framework, which we won't attempt to duplicate here. We have provided a basic introduction to the [concepts and terminology](#oauth-20-core-concepts) before we dive into the details of using Tyk as your *auth server*. -## Set Up OAuth 2.0 Authorization +Tyk offers some great features when used as the *authorization server* including: -OAuth 2.0 is an authorization protocol that enables applications to request limited access to resources on behalf of a user, without needing the user’s password. This approach is common for allowing apps to share data across platforms securely—for example, letting a calendar app access your contacts so you can share schedules between coworkers and friends- making it easier to find an open slot in your day. +- **Fine-Grained Access Control:** Manage access using Tyk's built-in access controls, including versioning and named API IDs +- **Usage Analytics:** Leverage Tyk's analytics capabilities to monitor OAuth 2.0 usage effectively, grouping data by Client Id +- **Multi-API Access**: Enable access to multiple APIs using a single OAuth token; configure one API for OAuth 2.0 token issuance and the other APIs with the [Auth Token](#use-auth-tokens) method, linking them through a common policy -In API management, OAuth 2.0 offers flexible ways to handle access requests depending on the scenario, such as user login or server-to-server interactions. This section will guide you through setting up OAuth 2.0 with Tyk, either by integrating it with your current setup or by using Tyk as the OAuth provider to simplify token management. +*Tyk as OAuth authorization server* supports the following *grant types*: -To implement OAuth 2.0 in Tyk, you have two main options: +- [Authorization Code Grant](#using-the-authorization-code-grant): the *client* is redirected to an *identity server* where the *user* must approve access before an *access token* will be issued +- [Client Credentials Grant](#using-the-client-credentials-grant): used for machine-to-machine access, authentication is performed using only the *client Id* and *client secret* +- [Resource Owner Password Grant](#using-the-resource-owner-password-grant) (a.k.a. Password Grant): only for use where the *client* is highly trusted, as the *client* must provide the *Resource Owner*'s own credentials during authentication -### Integrating OAuth 2.0 -#### Option 1: Integrate Existing OAuth 2.0 Flow +{{< note success >}} +**Note** -1. **Manage Tokens Within Your Application:** Utilize your existing OAuth 2.0 implementation or a preferred library to generate and manage tokens. -2. **Create Sessions in Tyk:** Once your API issues a token, create corresponding key sessions within Tyk using the Gateway REST API. -3. **Configure API Access in Tyk:** - * Set "Auth Token" as your API's authentication mode within Tyk. - * Configure the "Authorization" header. - * Consider adding OAuth-specific endpoints (`/access`, `/authorize`) to your API's `ignored_paths` list for direct access if required. +**Tyk does not recommend the use of Resource Owner Password Grant**. This method is considered unsafe and is prohibited in the [OAuth 2.0 Security Best Practice](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics-13#section-3.4") but is supported for use with legacy clients. +{{< /note >}} -#### Option 2: Using Tyk as The OAuth 2.0 Provider +To make use of this, you'll need to: -1. **Simplify Authorization with Tyk:** Designate Tyk as your OAuth 2.0 provider, streamlining token generation and management. -2. **Seamless Application Integration:** Integrate your application with Tyk's API and notification endpoints for streamlined OAuth 2.0 functionality. +- understand how to integrate your *client* (and, for Authorization Code grant, your *identity server*) according to the OAuth grant type +- [register a client app](#client-app-registration) for each client that needs to access the API +- [configure your API proxy](#configuring-your-api-proxy) to use the *Tyk OAuth 2.0* authentication method + +### OAuth 2.0 Core Concepts -### Understanding the OAuth 2.0 Flow within Tyk +**OAuth 2.0** (Open Authorization 2.0) is a widely adopted authorization protocol that allows third-party applications to access user resources securely, without needing to expose sensitive credentials such as user passwords. It is an industry-standard framework that enables a delegated approach to securing access to APIs and services. The [IETF OAuth 2.0 specification](https://datatracker.ietf.org/doc/html/rfc6749) outlines the standard for OAuth 2.0. -1. **Register a Client ID in Tyk**: - - Start by registering a new OAuth client on the Tyk dashboard. This generates a **Client ID** and **Client Secret** for your app, which you’ll use for secure access requests. +> "The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf." — [RFC 6749](https://datatracker.ietf.org/doc/html/rfc6749) -2. **Request Authorization for the Client**: - - Your app directs the user to Tyk’s authorization URL (`/oauth/authorize/`) with the Client ID, prompting Tyk to check that the request follows OAuth standards and that the Client ID is active and valid. +OAuth 2.0 provides a mechanism for **client applications** to request limited access to resources hosted by a **resource server**, on behalf of a **resource owner** (typically a user), without exposing the resource owner's credentials. This allows secure sharing of data between applications—for example, allowing a calendar app to access a user's contacts to automatically find available time slots for meetings. -3. **Redirect to User Login and Authorization**: - - If the authorization request is valid, Tyk redirects the user to your app’s **Login and Authorization page**. Here, the user logs in, approves access, and grants permissions to the app, similar to a standard OAuth consent flow. +OAuth 2.0 has many variations and flows suited for different use cases, this section will provide an overview of the core principles, terminology, and key concepts, specifically focusing on how you can implement OAuth 2.0 with Tyk. -4. **Authorize the Client in Tyk**: - - After the user approves, your app calls Tyk’s Authorization API (`/authorize-client/`), sending the Client ID and user permissions. Tyk then generates an **Authorization Code** for your app. +#### Terminology -5. **Redirect the User Back to Your App**: - - Tyk redirects the user to your app’s specified **redirect URL**, including the newly generated authorization code. +- **Protected Resource**: The service or data that is protected by OAuth (e.g. an API endpoint) and requires authorization to access. +- **Resource Owner**: The **user** or system that owns the *Protected Resource* and has the ability to grant or deny access to it. +- **Client**: The application or system that seeks access to the *Protected Resource*. It acts on behalf of the *Resource Owner*. +- **Access Token**: A short-lived piece of data that grants the *Client* access to the *Protected Resource*. The token proves that the *Client* has been authorized by the *Resource Owner*. +- **Authorization Server**: The server that issues *Access Tokens* to the *Client* after validating the *Client*'s identity and obtaining consent from the *Resource Owner*. +- **Client Application**: The application that requests authorization from the *Authorization Server*. This application must first be registered with the *Authorization Server* to obtain credentials (*Client Id* and *Client Secret*). +- **Resource Server**: The server that hosts the *Protected Resource*. It receives access requests from *Clients*, which must include a valid *Access Token*. +- **Identity Server**: A server that authenticates the *Resource Owner*, offering the facility to log in and authorize *Client* access to *Protected Resources*. +- **Scope**: Defines the specific permissions or access levels being requested by the *Client* (e.g. read, write, delete). +- **Grant Type**: The method by which the *Client* obtains an *Access Token*, based on the OAuth flow being used (e.g. Authorization Code, Client Credentials, Resource Owner Password Credentials). -6. **Exchange Authorization Code for an Access Token**: - - Your app now exchanges the authorization code for an access token by calling Tyk’s token endpoint (`/oauth/token`). This token lets the app access the user’s data per the permissions granted. +#### Access Tokens -7. **Optional: Receive Notifications via Webhook**: - - If needed, set up a webhook endpoint in your app to receive notifications from Tyk whenever a new access token is issued. This helps your app keep track of the user’s access status in real time. +In OAuth 2.0, **access tokens** are used to represent the authorization granted to the *client* by the *resource owner*. These tokens are typically small, opaque data objects that are passed along with each API request to authenticate the *client*. While the OAuth 2.0 specification does not mandate a specific format, **JSON Web Tokens (JWTs)** are commonly used as they can encode metadata, such as the *user*'s identity, permissions, and token expiry time. -This seems like a complicated process and very verbose - however in actuality, the integration piece is very small. As an API owner, the only steps that require active integration are: +Tokens usually come with an expiration date to limit the time they are valid and minimize the risk of abuse. *Access tokens* can often be refreshed via a **refresh token** if they expire, allowing for long-lived access without requiring the *user* (*resource owner*) to reauthorize the *application* (*client*). -- **Step 1**: Registering a Client ID (done in Tyk dashboard) -- **Step 3**: Creating a login and authorization page for users to approve app access -- **Step 7**: Setting up a webhook to track access tokens (optional) +#### Client Application +For a *client* to request an *Access Token* from the *Authorization Server*, it must first authenticate itself. This ensures that the *Resource Owner* can confidently delegate access to the requested resources. -#### Enabling OAuth 2.0 via the Dashboard +To do this, the *client* is registered with the *Authorization Server* as a **Client Application**, which requires the following elements: -1. **Select OAuth 2.0 for Your API**: On the Tyk Dashboard, Navigate to APIs, select the API you want to affect and select "edit". Enable +- **Client Id**: A unique, public identifier for the *client application* (e.g., a username or application name). +- **Client Secret**: A confidential string (like a password) that is shared between the *client* and the *Authorization Server*. The *client secret* is never exposed to the *Resource Owner*. +- **Redirect URI**: The URL to which the *client* will be redirected after the authorization process is complete (either granted or denied). - {{< img src="/img/dashboard/system-management/oauth-auth-mode-new.png" alt="Set Authentication Mode" >}} +The *client* sends the *client Id* and *client secret* during the authorization request to prove its identity and authenticate its request for an *access token*. Depending on the OAuth *grant type* being used (e.g. Authorization Code Flow, Client Credentials Flow), the *Authorization Server* will authenticate the *client* and, if successful, issue an *Access Token*. -2. **Configure Grant Type Settings**: Define allowed access and authorize types aligned with your chosen OAuth 2.0 grant type (e.g., Authorization Code). -3. **Set Redirection URLs**: For grant types involving redirects, provide the OAuth login redirect URL and the OAuth notification URL. -4. **Create an Access Policy**: Establish a policy that explicitly grants access to this API. -5. **Register a New OAuth Client**: Go to the "OAuth Clients" section for your API and add a new client. - * Specify a valid redirect URI. - * Associate the client with the access policy you created. - {{< img src="/img/api-management/security/create-oauth-from-api-list.png" alt="OAuth Clients" >}} - {{< img src="/img/api-management/security/fill-out-client-details-oauth.png" alt="Add New OAuth Client" >}} +### Manage Client Access Policies + +The *access tokens* issued to clients by *Tyk Authorization Server* are the same as other [session objects]({{< ref "getting-started/key-concepts/what-is-a-session-object" >}}) and can be associated with [access security policies]({{< ref "getting-started/key-concepts/what-is-a-security-policy" >}}) at the point of creation. These allow the application of quotas, rate limits and access rights in the normal manner. -6. **Access Client Credentials**: After client creation, view the generated Client ID and Secret. +Security policies can be assigned to *client apps* and will be applied to all access tokens issued for that *client app*. - {{< img src="/img/api-management/security/client-secret-oauth.png" alt="View Client ID and Secret" >}} -#### Enabling OAuth 2.0 via an API Definition +### Client App Registration -For programmatic control, configure OAuth 2.0 directly within your API's JSON definition: +For all grant types, the first common step is the registration of the *client* with Tyk Dashboard by creation of a *Client App*. This will allocate a *client Id* and *client secret* that must be provided in future authentication requests by the *client*. -```yaml -{ - "name": "OAuth Test API", - // ... other API settings - "use_oauth2": true, - "oauth_meta": { - "allowed_access_types": ["authorization_code", "refresh_token"], - "allowed_authorize_types": ["code", "token"], - "auth_login_redirect": "http://yourapp.com/login" - }, - "notifications": { - "shared_secret": "your-shared-secret", - "oauth_on_keychange_url": "http://yourapp.com/oauth_notifications" - } - // ... other API settings -} -``` +#### Using the Tyk Dashboard UI -- **`name`**: Specifies the name of the API, in this case, "OAuth Test API." -- **`use_oauth2`**: Enables OAuth 2.0 authentication for this API (`true` indicates OAuth 2.0 is used). -- **`oauth_meta`**: Contains OAuth 2.0-specific configuration options: - - **`allowed_access_types`**: Defines which OAuth 2.0 access types are allowed, such as `authorization_code` and `refresh_token`. - - **`allowed_authorize_types`**: Defines which OAuth 2.0 authorization methods are permitted, like `code` (authorization code) and `token` (implicit flow). - - **`auth_login_redirect`**: Specifies the URL to which users are redirected after successful login, typically the login page of your application. -- **`notifications`**: Manages notifications for OAuth events: - - **`shared_secret`**: A secret key shared between Tyk and your app, used to secure notifications. - - **`oauth_on_keychange_url`**: The URL to which Tyk sends a notification when an OAuth key changes (e.g., token revocation or regeneration). +1. *Client apps* are registered per-API, so the first step is to [configure Tyk OAuth 2.0](#configuring-your-api-proxy) as the security method to be used for the API. With this done, you can navigate to the OAuth Client management screen for the API from the **Actions** menu on the **Created APIs** screen: +{{< img src="/img/api-management/security/create-oauth-from-api-list.png" alt="Accessing the list of OAuth Clients for an API" >}} +2. You will now be prompted to register a *client app* that will be granted access to the API configuring: -### Manage Quotas and Limits +- redirect URI +- [optional] [security policies](#manage-client-access-policies) to be applied to access tokens generated for the client +- [optional] [metadata]({{< ref "getting-started/key-concepts/session-meta-data" >}}) to be added to the access tokens -Utilize Tyk's `/tyk/oauth/authorize-client/` endpoint with the `key_rules` parameter to define key rules for tokens generated during the OAuth flow. These rules encompass rate limits, quotas, expiry times, and access rights: +{{< img src="/img/api-management/security/fill-out-client-details-oauth.png" alt="Add New OAuth Client" >}} -```yaml -{ - "allowance": 1000, - "rate": 1000, - "per": 60, - "expires": -1, - "quota_max": -1, - "quota_renews": 1406121006, - "quota_remaining": 0, - "quota_renewal_rate": 60, - "access_rights": { - "APIID1": { - "api_name": "HMAC API", - "api_id": "APIID1", - "versions": [ - "Default" - ] - } - }, - "org_id": "1", - "oauth_client_id": "client-id-here", - "hmac_enabled": false, - "hmac_string": "" -} -``` -{{< note success >}} -**Note** -Instead of passing a `key_rules` parameter when authorizing a client, Tyk can now have an API policy that manages access rules bound to the Client ID doing the accessing, if a bound policy ID is used when generating the OAuth client, when a token is generated for the client then Tyk will generate a token based on the policy data. This is especially useful in generative contexts such as the `client_credentials` grant. -{{< /note >}} +**Note**: when using *Authorization Code grant* the *redirect uri* configured for the *client app* must be the same as that configured in the API definition. -### Configure Notifications +Select the **Create** button to register the *client app*. -To receive notifications about token changes (e.g., new tokens, refresh tokens) configure the `notifications` section in your API definition: +3. In the OAuth Client management screen, you will see a list of *client apps* registered with the API (as identified by their *client Id*). By clicking on the list item, or from the **Actions** menu's **Edit** option you will be taken to the *Edit Client app* screen, where you can see the *client secret* and make any modifications you need. There is also the option to [revoke tokens](#revoking-access-tokens) that have been issued for this *client app*. -* `oauth_on_keychange_url`: Set the URL where Tyk will send notifications. -* `shared_secret`: Use this secret for secure communication between Tyk and your application; the secret is sent as a header (`X-Tyk-Shared-Secret`) with every notification. +{{< img src="/img/api-management/security/client-secret-oauth.png" alt="View client Id and client secret" >}} -Example notification: +#### Using the Tyk Dashboard API -```yaml -{ - "auth_code": "", - "new_oauth_token": "", - "refresh_token": "", - "old_refresh_token": "", - "notification_type": "" -} -``` +The Tyk Dashboard API contains several endpoints that are provided to manage *client apps*. *Client apps* are registered per-API, so each takes as an input the *API Id* for the API: -{{< note success >}} -**Note** +| Action | Endpoint | Reference | +| --- | --- | --- | +| Register a new client app | `POST /api/apis/oauth/{{api-id}}` | [link]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#create-a-new-oauth20-client" >}}) | +| Get a list of registered client apps | `GET /api/apis/oauth/{{api-id}}` | [link]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#list-oauth-clients" >}}) | +| Get the details of a client app | `GET /api/apis/oauth/{{api-id}}/{{client_id}}` | [link]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#get-an-oauth20-client" >}}) | +| Delete a client app | `DELETE /api/apis/oauth/{{api-id}}/{{client_id}}` | [link]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#delete-oauth-client" >}}) | -* **Fine-Grained Access Control:** Manage access using Tyk's built-in access controls, including versioning and named API IDs, going beyond Client ID-based control. -* **Usage Analytics:** Leverage Tyk's analytics capabilities to monitor OAuth 2.0 usage effectively, grouping data by Client ID. -* **Multi-API Access**: Enable access to multiple APIs using a single OAuth token. Configure one API for OAuth 2.0 token issuance and the other APIs with the "Auth Token" method, linking them through a common policy. -{{< /note >}} +### Using the Authorization Code Grant -### Supported Grant Types +When using Tyk as the Authorization Server with the Authorization Code grant, the following steps are followed after [registering the Client App](#client-app-registration): -Tyk offers extensive support for various OAuth 2.0 grant types, catering to diverse use cases: +{{< img src="/img/diagrams/diagram_docs_authorization-code-grant-type@2x.png" alt="Authorization grant type flow" >}} -* Authorization Code -* Refresh Token -* Username and Password -* Client Credentials -* Authorization Token Flow (Ideal for server-side web applications) +**Explanatory notes:** +(1) *client* makes a request to the [authorization endpoint](#authorization-request) on the *Auth Server* -#### Use Authorization Code Grant +(2) The *Auth Server* notes the request parameters and returns `HTTP 307 Temporary Redirect`, redirecting the user to an *Identity Server* -The Authorization Code Grant Type is a widely used OAuth 2.0 flow for web applications. It allows client applications to access user resources securely. +(5) the *user* must log in on the *Identity Server* and authorize the *client* -This process requires three steps: +(6) when the *user* successfully authenticates and authorizes the request, the *Identity Server* must request an [Authorization Code](#authorization-code-request) from the *Auth Server* -* Redirect to a login page -* Request an authorization code -* Exchange the code for a token +(8) The *Identity Server* provides the *Authorization Code* to the *client* -The below image shows the request/response interactions between Client, Gateway, identity server, and notification server. +(9) The *client* exchanges the *Authorization Code* for an [Access Token](#exchange-the-authorization-code-for-an-access-token) from the *Auth Server* -{{< img src="/img/diagrams/diagram_docs_authorization-code-grant-type@2x.png" alt="Authorization grant type flow" >}} +(10) The *client* uses the *Access Token* to authenticate with the protected API using the [Auth Token](#use-auth-tokens) method -##### Redirect the User to a Login Page +#### Integration with Identity Server -First, the client application must redirect the user to the authorization server's login page. This is where the user will authenticate and authorize the client. +Whilst Tyk can provide the *authorization server* functionality, issuing and managing access and authorization tokens, the *identity server* functions (authenticating users (resource owners) and allowing them to authorize client access) must be performed by a separate Identity Provider (IdP). + +The identity server will need access to the Tyk Dashboard API to [obtain an Authorization Code]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#oauth20-authorization-code" >}}). + +#### Authorization Request + +The authorization endpoint for an API proxy on Tyk is a special endpoint automatically added to the proxy definition, accessible from `POST //oauth/authorize` + +The following parameters are required in a request to this endpoint: + +| Parameter | Value | +| --------------- | -------------------------- | +| `response_type` | `code` | +| `client_id` | client Id | +| `redirect_uri` | Redirect URI (URL encoded) | + +For example: ```bash -curl -X POST \ - https://tyk.cloud.tyk.io/oauth-api/oauth/authorize/ \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'response_type=code&client_id=ed59158fa2344e94b3e6278e8ab85142&redirect_uri=http%3A%2F%2Fexample.com%2Fclient-redirect-uri' +curl -X POST https://tyk.cloud.tyk.io/my-api/oauth/authorize/ \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "response_type=code&client_id=my-client-id&redirect_uri=http%3A%2F%2Fidentityserver.com%2Fclient-redirect-uri" ``` -**Request:** +This command, issued by the *client* is the first step of requesting access to the `/my-api` proxy deployed on a Tyk Gateway at `https://tyk.cloud.tyk.io`. -| Parameter | Value | -| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| **Method** | `POST` | -| **URL** | Uses the special OAuth endpoint `/oauth/authorize` appended to the API URI, e.g., `https:////oauth/authorize`. | -| **Content-Type** | `application/x-www-form-urlencoded` | +If the *client Id* (`my-client-id`) is valid, the response will be `HTTP 307 Temporary Redirect` with the redirect URI (`http://identityserver.com/client-redirect-uri`) in the `location` header. -**Data:** +#### Authorization Code Request -| Parameter | Value | -| --------------- | ----------------------------------------------------------------------------------- | -| `response_type` | `code` | -| `client_id` | The OAuth client ID, e.g., `ed59158fa2344e94b3e6278e8ab85142`. | -| `redirect_uri` | The OAuth client redirect URI, e.g., `http://example.com/client-redirect-uri`, URL encoded as `http%3A%2F%2Fexample.com%2Fclient-redirect-uri`. | +The *Identity Server* requests an *Authorization Code* from the *Authentication Server*. Tyk's *authorization code* endpoint is hosted in the [Tyk Dashboard API]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#oauth20-authorization-code" >}}), accessible from `POST /api/apis/{api_id}/authorize-client`. The same `redirect_uri` as provided in the original request must be provided alongside the `client_id` as a security feature to verify the client identity. -**Response:** +This endpoint is protected using the Dashboard API secret assigned to the *Identity Server*, which must be provided in the `Authorization` header. -This request generates a `307 Temporary Redirect` to the OAuth client redirect URI. The user is redirected to authenticate and authorize the client, and the data forwarded will be used to request an authorization code. +The following parameters are required in a `POST` request to this endpoint: -##### Request an Authorization Code +| Parameter | Value | +| --------------- | -------------------------- | +| `response_type` | `code` | +| `client_id` | client Id | +| `redirect_uri` | Redirect URI (URL encoded) | -After the user authorizes the request, the authorization server provides an authorization code. The client application needs to request this code from the authorization server. +For example: ```bash curl -X POST \ - https://admin.cloud.tyk.io/api/apis/oauth/25b854d3fdc84703679f49ea33981aa9/authorize-client/ \ - -H 'Authorization: 70c3d834d46a4d6076e1585b0ef2e93e' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'response_type=code&client_id=ed59158fa2344e94b3e6278e8ab85142&redirect_uri=http%3A%2F%2Fexample.com%2Fclient-redirect-uri' + https://admin.cloud.tyk.io/api/apis/oauth/{my-api-id}/authorize-client/ \ + -H "Authorization: " \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "response_type=code&client_id=my-client-id&redirect_uri=http%3A%2F%2Fidentityserver.com%2Fclient-redirect-uri" ``` -**Request:** - -| Parameter | Value | -| --------------- | ---------------------------------------------------------------------------------------------------- | -| **Method** | `POST` | -| **URL** | Uses the Dashboard API client authorization endpoint `/authorize-client/`. | -| **Authorization** | The Dashboard user credentials, e.g., `70c3d834d46a4d6076e1585b0ef2e93e`. | -| **Content-Type** | `application/x-www-form-urlencoded` | - -**Data:** - -| Parameter | Value | -| --------------- | ----------------------------------------------------------------------------------- | -| `response_type` | `code` | -| `client_id` | The OAuth client ID, e.g., `ed59158fa2344e94b3e6278e8ab85142`. | -| `redirect_uri` | The OAuth client redirect URI, e.g., `http://example.com/client-redirect-uri`, URL encoded as `http%3A%2F%2Fexample.com%2Fclient-redirect-uri`. | +This command, issued by the *identity server* requests an *authorization code* from the Tyk Dashboard at `https://admin.cloud.tyk.io` to access the proxy with API Id `my-api-id`. -**Response:** +If the *client Id* (`my-client-id`) is valid and `redirect_uri` matches the one provided in the initial request, an *authorization code* will be provided in the response payload, for example: -The response provides the authorization code as `code` and the redirect URL as `redirect_to`. The client application will use this information to obtain an access token. - -```yaml +```json { "code": "EaG1MK7LS8GbbwCAUwDo6Q", "redirect_to": "http://example.com/client-redirect-uri?code=EaG1MK7LS8GbbwCAUwDo6Q" } ``` -##### Exchange the Authorization Code for an Access Token +#### Exchange the Authorization Code for an Access Token -Once the client application has the authorization code, it can exchange this code for an access token, which is used to access the API. +Once the *client* has the *authorization code*, it can exchange this for an *access token*, which is used to access the protected API. The token exchange endpoint for an API proxy on Tyk is a special endpoint automatically added to the proxy definition, accessible from `POST //oauth/token`. -```bash -curl -X POST \ - https://tyk.cloud.tyk.io/oauth-api/oauth/token/ \ - -H 'Authorization: Basic ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'grant_type=authorization_code&client_id=ed59158fa2344e94b3e6278e8ab85142&code=EaG1MK7LS8GbbwCAUwDo6Q&redirect_uri=http%3A%2F%2Fexample.com%2Fclient-redirect-uri' -``` +This endpoint is protected using [Basic Authentication](#use-basic-authentication)) where the username is the *client Id* and the password is the *client secret*. -**Request:** +The following parameters are required in the request: + +| Parameter | Value | +| --------------- | -------------------------- | +| `grant_type` | `authorization_code` | +| `client_id` | client Id | +| `code` | Authorization Code | +| `redirect_uri` | Redirect URI (URL encoded) | -| Parameter | Value | -| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -| **Method** | `POST` | -| **URL** | Uses the special OAuth endpoint `/oauth/token` appended to the API URI, e.g., `https:////oauth/token`. | -| **Authorization** | Basic authorization, using the client ID and client secret of the OAuth client base64 encoded with a colon separator. | -| **Content-Type** | `application/x-www-form-urlencoded` | +For example: -**Data:** +```bash +curl -X POST \ + https://tyk.cloud.tyk.io/my-api/oauth/token/ \ + -H "Authorization: Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ=" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "grant_type=authorization_code&client_id=my-client-id&code=EaG1MK7LS8GbbwCAUwDo6Q&redirect_uri=http%3A%2F%2Fidentityserver.com%2Fclient-redirect-uri" +``` -| Parameter | Value | -| --------------- | ----------------------------------------------------------------------------------------------------- | -| `grant_type` | `authorization_code` | -| `client_id` | The OAuth client ID, e.g., `ed59158fa2344e94b3e6278e8ab85142`. | -| `code` | The authorization code (`code`) provided in the response to the previous request, e.g., `EaG1MK7LS8GbbwCAUwDo6Q`. | -| `redirect_uri` | The OAuth client redirect URI, e.g., `http://example.com/client-redirect-uri`, URL encoded as `http%3A%2F%2Fexample.com%2Fclient-redirect-uri`. | +This command, issued by the *client* is the final step to obtain an access token for the `/my-api` proxy deployed on a Tyk Gateway at `https://tyk.cloud.tyk.io`. The basic auth key is the base64 encoded representation of `my-client-id:my-client-secret` The `client_id` and `redirect_uri` match those provided in the initial [authorization request](#authorization-request). The `code` is the *authorization code* provided to the *identity server* in the [authorization code request](#authorization-code-request). -**Response:** +The response payload contains: +- `access_token`: the token which can be used by the *client* to access the protected API +- `expires_in`: the expiration date/time of the access token +- `token_type`: set to `bearer` indicating that the access token should be provided in an [Auth Token](#use-auth-tokens) request to the protected API +- `refresh_token`: [optional] a special token that can be used in the [Refresh Token](#using-refresh-tokens) flow -The response provides the token as `access_token` in the returned JSON, which can then be used to access the API: +For example: -```yaml +```json { "access_token": "580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573", "expires_in": 3600, @@ -423,1742 +386,1262 @@ The response provides the token as `access_token` in the returned JSON, which ca } ``` -**Notification:** -This grant will generate a notification sent from the Gateway to the OAuth Notifications URL, containing the OAuth Notifications Shared Secret as a header for verification purposes. -```yaml -{ - "auth_code": "EaG1MK7LS8GbbwCAUwDo6Q", - "new_oauth_token": "580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573", - "refresh_token": "NWQzNGVhMTItMDE4Ny00MDFkLTljOWItNGE4NzI1ZGI1NGU2", - "old_refresh_token": "", - "notification_type": "new" -} -``` +### Using the Client Credentials Grant +When using Tyk as the *authorization server* with the Client Credentials grant, the *client* accesses resources on behalf of itself rather than on behalf of a *user*, so there is no user login/authorization step (as seen with [Authorization Code grant](#using-the-authorization-code-grant)). This flow is ideal for server-to-server interactions. +After [registering the Client App](#client-app-registration), the *client* simply requests an access token directly from the authorization server: -#### Use Username and Password Grant +{{< img src="/img/diagrams/diagram_docs_client-credentials-grant-type@2x.png" alt="Client Credentials grant type flow" >}} +#### Access Token Request -The Username and Password grant type uses a basic authentication key to generate a token. When you create the basic authentication key in the Dashboard, this stores the `username` and `password` used in the API token request. +The *client* obtains an access token for an API proxy on Tyk from a special endpoint automatically added to the proxy definition, accessible from `POST //oauth/token`. -{{< img src="/img/diagrams/diagram_docs_username-_-password-grant-type@2x.png" alt="Username and password grant sequence" >}} +This endpoint is protected using Basic Authentication where the username is the client Id and the password is the client secret. +The following parameters are required in the request: -##### Token Request +| Parameter | Value | +| --------------- | -------------------------- | +| `grant_type` | `client_credentials` | +| `client_id` | client Id | +| `secret` | client secret | -This request provides the client id and basic user credentials in exchange for an API token. +For example: -```shell +```bash curl -X POST \ - https://tyk.cloud.tyk.io/oauth-api/oauth/token/ \ - -H 'Authorization: Basic ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'grant_type=password&client_id=ed59158fa2344e94b3e6278e8ab85142&username=oauthapiusername&password=oauthapipassword' + https://tyk.cloud.tyk.io/my-api/oauth/token/ \ + -H "Authorization: Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ=" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "grant_type=client_credentials&client_id=my-client-id&client_secret=my-client-secret" ``` -| Request | Value | -| ------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| Method | `POST` | -| URL | Uses the special OAuth endpoint `/oauth/token` appended to the API URI e.g. `https:////oauth/token`. | - -| Header | Value | -| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Authorization` | `Basic` authorization, using the `client id` and `client secret` of the OAuth client base64 encoded with colon separator. E.g. `:`, in this case `ed59158fa2344e94b3e6278e8ab85142:MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1`, which base64 encoded is `ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x`. | -| `Content-Type` | `application/x-www-form-urlencoded` | - -| Data | Value | -| ------------ | --------------------------------------------------------------------- | -| `grant_type` | `password` | -| `client_id` | The OAuth client id, in this case `ed59158fa2344e94b3e6278e8ab85142`. | -| `username` | The basic username, in this case `oauthapiusername`. | -| `password` | The basic password, in this case `oauthapipassword`. | +This command, issued by the *client* will obtain an access token for the `/my-api` proxy deployed on a Tyk Gateway at `https://tyk.cloud.tyk.io`. The basic auth key is the base64 encoded representation of `my-client-id:my-client-secret` The `client_id` and `client_secret` match those allocated by Tyk (the auth server) for the *client app*. -##### Response +The response payload contains: +- `access_token`: the token which can be used by the *client* to access the protected API +- `expires_in`: the expiration date/time of the access token +- `token_type`: set to `bearer` indicating that the access token should be provided in an [Auth Token](#use-auth-tokens) request to the protected API -Response provides the token as `access_token` in the returned JSON which can then be used to access the API: +For example: ```json { - "access_token": "580defdbe1d21e0001c67e5ce3ea17db02be4c62ba15089bbcfd1f80", + "access_token": "580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573", "expires_in": 3600, - "refresh_token": "YjdhOWFmZTAtNmExZi00ZTVlLWIwZTUtOGFhNmIwMWI3MzJj", "token_type": "bearer" } ``` +{{< note success >}} +**Note** + +Note that Client Credentials grant does not produce a *refresh token*. +{{< /note >}} -#### Use Refresh Token Grant -The Refresh Token Grant Type is used to obtain a new access token when the current access token has expired or is about to expire. This allows clients to maintain a valid access token without requiring the user to re-authenticate. +### Using the Resource Owner Password Grant +When using Tyk as the *authorization server* with the Resource Owner Password grant, the *client* provides the *user's* credentials when requesting an access token. There is no user login/authorization step (as seen with [Authorization Code grant](#using-the-authorization-code-grant)). **This flow is not recommended and is provided only for integration with legacy clients.** -This process involves two steps: -* Obtain a Refresh Token during the initial authorization. -* Use the Refresh Token to request a new Access Token. +After [registering the Client App](#client-app-registration), the *client* simply requests an access token directly from the authorization server: -{{< img src="/img/diagrams/diagram_docs_refresh-token-grant-type@2x.png" alt="Refresh Token grant type flow" >}} +{{< img src="/img/diagrams/diagram_docs_username-_-password-grant-type@2x.png" alt="Username and password grant sequence" >}} -{{< note success >}} -**Note** +#### Access Token Request -Refresh tokens are single use only so cannot be reused, and when they are used they also invalidate the token they are associated with. -{{< /note >}} +The *client* obtains an access token for an API proxy on Tyk from a special endpoint automatically added to the proxy definition, accessible from `POST //oauth/token`. -##### Request new token +This endpoint is protected using [Basic Authentication](#use-basic-authentication) where the username is the client Id and the password is the client secret. -```shell -curl -X POST \ - https://tyk.cloud.tyk.io/oauth-api/oauth/token/ \ - -H 'Authorization: Basic ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'grant_type=refresh_token&client_id=ed59158fa2344e94b3e6278e8ab85142&client_secret=MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1&refresh_token=YjdhOWFmZTAtNmExZi00ZTVlLWIwZTUtOGFhNmIwMWI3MzJj' -``` +The following parameters are required in the request: -| Request | Value | -| ------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| Method | `POST` | -| URL | Uses the special OAuth endpoint `/oauth/token` appended to the API URI e.g. `https:////oauth/token`. | +| Parameter | Value | +| --------------- | ------------------------------------------------------ | +| `grant_type` | `password` | +| `client_id` | client Id | +| `username` | resource owner's username (`resource-owner-username`) | +| `password` | resource owner's password (`resource-owner-password`) | + +For example: -| Header | Value | -| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Authorization` | `Basic` authorization, using the `client id` and `client secret` of the OAuth client base64 encoded with colon separator. E.g. `:`, in this case `ed59158fa2344e94b3e6278e8ab85142:MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1`, which base64 encoded is `ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x`. | -| `Content-Type` | `application/x-www-form-urlencoded` | +```bash +curl -X POST \ + https://tyk.cloud.tyk.io/my-api/oauth/token/ \ + -H "Authorization: Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ=" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "grant_type=password&client_id=my-client-id&username=resource-owner-username&password=resource-owner-password" +``` -| Data | Value | -| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `grant_type` | `refresh_token` | -| `client_id` | The OAuth client id, in this case `ed59158fa2344e94b3e6278e8ab85142`. | -| `client_secret` | The OAuth client secret, in this case `MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1`. | -| `refresh_token` | The refresh token (`refresh_token`) provided in response to the original token request, in this case `YjdhOWFmZTAtNmExZi00ZTVlLWIwZTUtOGFhNmIwMWI3MzJj`. | +This command, issued by the *client* will obtain an access token for the `/my-api` proxy deployed on a Tyk Gateway at `https://tyk.cloud.tyk.io`. The basic auth key is the base64 encoded representation of `my-client-id:my-client-secret` The `client_id` and `client_secret` match those allocated by Tyk (the auth server) for the *client app*. -##### Response +The response payload contains: +- `access_token`: the token which can be used by the *client* to access the protected API +- `expires_in`: the expiration date/time of the access token +- `token_type`: set to `bearer` indicating that the access token should be provided in an [Auth Token](#use-auth-tokens) request to the protected API +- `refresh_token`: [optional] a special token that can be used in the [Refresh Token](#using-refresh-tokens) flow -Response provides a new token as `access_token` and a new refresh token as `refresh_token` in the returned JSON: +For example: ```json { "access_token": "580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573", "expires_in": 3600, - "refresh_token": "NWQzNGVhMTItMDE4Ny00MDFkLTljOWItNGE4NzI1ZGI1NGU2", + "refresh_token": "YjdhOWFmZTAtNmExZi00ZTVlLWIwZTUtOGFhNmIwMWI3MzJj", "token_type": "bearer" } ``` -#### Use Client Credentials Grant +### Configuring your API Proxy -The Client Credentials Grant Type is used when the client application needs to access resources on behalf of itself rather than on behalf of a user. This flow is ideal for server-to-server interactions. +As explained [previously](#how-does-tyk-implement-authentication-and-authorization), the AuthN/Z methods to be used to secure an API proxy are configured in the API definition. This permits granular application of the most appropriate method to each API deployed on Tyk Gateway. -The process is only a single step: +When using Tyk as the Authorization Server, the API configuration can be applied using the Tyk Dashboard's API Designer UI, or by direct modification of the API definition. We will provide examples here when using Tyk OAS APIs. If you are using Tyk Classic APIs, the process is very similar, though there are differences in the location and specific labelling of options. -* Request an Access Token +#### Using the Tyk API Designer -{{< img src="/img/diagrams/diagram_docs_client-credentials-grant-type@2x.png" alt="Client Credentials grant type flow" >}} +1. Client Authentication is configured on the **Settings** screen within the Tyk OAS API Designer, within the **Server** section. Ensure that you are in **Edit** mode, click on the button to **Enable** *Authentication* and then select **Tyk OAuth 2.0** from the drop down options: -##### Token Request +{{< img src="/img/dashboard/system-management/oauth-auth-mode-new.png" alt="Set Authentication Mode" >}} -This request provides the client credentials in exchange for an API token. +2. Select the OAuth Grant Type that you wish to use for the API, if appropriate you can also select the *Refresh Token* grant so that the Auth Server (Tyk) will generate both access and refresh tokens. -```shell -curl -X POST \ - https://tyk.cloud.tyk.io/oauth-api/oauth/token/ \ - -H 'Authorization: Basic ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'grant_type=client_credentials&client_id=ed59158fa2344e94b3e6278e8ab85142&client_secret=MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1' -``` +3. Provide the requested configuration options depending on the selected Grant Type. Note that for *Authorization Code Grant*, **Redirect URL** should be the login page for your Identity Server and must be matched by the `redirect_uri` provided in the *client app* (and in the client's authentication request). The [Notifications](#oauth-token-notifications) configuration can be provided for *Authorization Code* and *Password* grants. -| Request | Value | -| ------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| Method | `POST` | -| URL | Uses the special OAuth endpoint `/oauth/token` appended to the API URI e.g. `https:////oauth/token`. | +4. Select **Save API** to apply the new settings. -| Header | Value | -| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Authorization` | `Basic` authorization, using the `client id` and `client secret` of the OAuth client base64 encoded with colon separator. E.g. `:`, in this case `ed59158fa2344e94b3e6278e8ab85142:MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1`, which base64 encoded is `ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x`. | -| `Content-Type` | `application/x-www-form-urlencoded` | +#### Using the Tyk OAS API Definition -| Data | Value | -| --------------- | ----------------------------------------------------------------------------------------- | -| `grant_type` | `client_credentials` | -| `client_id` | The OAuth client id, in this case `ed59158fa2344e94b3e6278e8ab85142`. | -| `client_secret` | The OAuth client secret, in this case `MGQ3NzE2MGQtYTUyZC00ZTVlLWJjMTItMjE2MTM1MmE3N2M1`. | +The OpenAPI description can contain a list of `securitySchemes` which define the authentication methods available to be used for the API. This is described in detail [here](https://swagger.io/docs/specification/v3_0/authentication/oauth2/). Note that Tyk implements Relative Endpoint URLs, as described in that link, for the `authorizationUrl`, `tokenUrl` and `refreshUrl`. Remember to declare which of the defined `securitySchemes` and scopes are to be used by configuring the `security` fields in the OpenAPI description, note that Tyk only supports API level configuration of `security` not at the operation level. -##### Response +The Tyk specific configuration must be provided in the Tyk extension (`x-tyk-api-gateway`) within the Tyk OAS API definition by adding the `authentication` section within the `server` section. -Response provides the token as `access_token` in the returned JSON which can then be used to access the API: +Set `server.authentication.enabled` to `true` to enable client authentication and add the `securitySchemes/oauth` section within `server.authentication`. -```json +This has the following parameters: +- `enabled` set this to `true` to enable client OAuth authentication +- `allowedAuthorizeTypes` depending on the OAuth grant types to be supported: `code` or `token` +- `authLoginRedirect` is the redirect URL to the *Identity Server* login page +- `header`, `query` or `cookie` should be configured to indicate where the access token will be provided (once the client has successfully gained authorization to access the resource) +- `refreshToken` set to `true` if Tyk should generate *refresh tokens* + +For example: + +```json {hl_lines=["7-11", "14-24", "35-55"],linenos=true, linenostart=1} { - "access_token": "580defdbe1d21e0001c67e5c40e93eac3d23494697470b90d7c81593", - "expires_in": 3600, - "token_type": "bearer" + "info": { + "title": "My OAuth API", + "version": "1.0.0" + }, + "openapi": "3.0.3", + "security": [ + { + "oauth": [] + } + ], + "paths": {}, + "components": { + "securitySchemes": { + "oauth": { + "type": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "/oauth/authorize", + "scopes": {}, + "tokenUrl": "/oauth/token" + } + } + } + } + }, + "x-tyk-api-gateway": { + "info": { + "name": "My OAuth API", + "state": { + "active": true, + } + }, + "server": { + "authentication": { + "enabled": true, + "securitySchemes": { + "oauth": { + "enabled": true, + "allowedAuthorizeTypes": [ + "code" + ], + "authLoginRedirect": "http:///client-redirect-uri", + "header": { + "enabled": true, + "name": "Authorization" + }, + "notifications": { + "onKeyChangeUrl": "http://notifyme.com", + "sharedSecret": "oauth-shared-secret" + }, + "refreshToken": true + } + } + }, + "listenPath": { + "strip": true, + "value": "/my-oauth-api/" + } + }, + "upstream": { + "url": "http://httpbin.org/" + } + } } ``` -{{< note success >}} -**Note** - -It does not provide a refresh token. -{{< /note >}} - +In this example: -#### Use Bearer Tokens -##### What is a bearer token ? +- Client authentication has been enabled (line 44) +- The OpenAPI description declares the `oauth` security scheme that expects **Authorization Code** flow. Note that the `authorization URL` and `token URL` are declared relative to the API proxy listen path +- Authorization requests (made to `POST /my-oauth-api/oauth/authorize`) will be redirected to `http:///client-redirect-uri` where the *Resource Owner* should be prompted to authorize the request +- [Notifications](#oauth-token-notifications) of token issuance will be sent to `http://notifyme.com` with the `X-Tyk-Shared-Secret` header set to `oauth-shared-secret` -> Any party in possession of a bearer token (a "bearer") can use it to get access to the associated resources (without demonstrating possession of a cryptographic key). To prevent misuse, bearer tokens need to be protected from disclosure in storage and in transport. +The *auth server* (Tyk) will issue an *access token* and *refresh token* in exchange for a valid *authorization code*. Once the client has a valid access token, it will be expected in the `Authorization` header of the request. -Tyk provides bearer token access as one of the most convenient building blocks for managing security to your API. In a Tyk setup, this is called "Access Tokens" and is the default mode of any API Definition created for Tyk. +The configuration above is a complete and valid Tyk OAS API Definition that you can import into Tyk and, with correctly configured and integrated *identity server* can be used to try out OAuth Client Authentication using Tyk as the Authorization Server. -Bearer tokens are added to a request as a header or as a query parameter. If added as a header, they may be preceded by the word "Bearer" to indicate their type, though this is optional. -Traditionally these tokens are used as part of the `Authorization` header. +### Managing OAuth Tokens -##### Enable bearer tokens in your API Definition with the Dashboard +#### Using Refresh Tokens -To enable the use of a bearer token in your API: +The Refresh Token flow is used to obtain a new *access token* when the current token has expired or is about to expire. This allows clients to maintain a valid *access token* without requiring the user to go through the authentication and authorization process again. -1. Select your API from the **System Management > APIs** menu -2. Scroll to the **Authentication** options -3. Select **Authentication Token** from the drop-down list -4. Select **Strip Authorization Data** to strip any authorization data from your API requests -5. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value -6. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. -7. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. -8. You can select to use a **client certificate**. This allows you to create dynamic keys based on certificates. +*Refresh tokens* are single use and, when used, automatically invalidate the access token with which they were issued. This prevents accidental duplication of access tokens granting authorized access to a resource (API). -{{< img src="/img/api-management/security/client-mtls-api-setup.png" alt="Target Details: Auth Token" >}} +A *refresh token* can be issued by the *auth server* alongside the *access token* at the last stage of the OAuth flow for: +- Authentication Code grant +- Resource Owner Password grant -##### Enable bearer tokens in your API Definition with file-based +You configure whether Tyk should issue a refresh token within the [API proxy definition](#configuring-your-api-proxy). -Tyk will by default use the bearer token method to protect your API unless it is told otherwise. +##### Refreshing an Access Token -These tokens can be set as a *header, url parameter, or cookie name of a request*. A request for a resource at the API endpoint of `/api/widgets/12345` that uses access tokens will require the addition of a header field, traditionally this is the `Authorization` header. +If you have correctly configured your API, then Tyk will provide a *refresh token* with the *access token*. The *client* can subsequently exchange the *refresh token* for a new *access token* without having to re-authenticate, with another call to the `POST //oauth/token` endpoint as follows: -The name of the key can be defined as part of the API definition under the `auth` section of an API Definition file: +{{< img src="/img/diagrams/diagram_docs_refresh-token-grant-type@2x.png" alt="Refresh Token flow" >}} -```{.copyWrapper} -"auth": { - "auth_header_name": "authorization", - "use_param": false, - "param_name": "", - "use_cookie": false, - "cookie_name": "" -}, -``` +This endpoint is protected using Basic Authentication where the username is the *client Id* and the password is the *client secret*. -To use URL query parameters instead of a header, set the `auth.use_param` setting in your API definition to `true`. +The following data is required in the request payload: -{{< note success >}} -**Note** +| Parameter | Value | +| --------------- | --------------------------------------------------------- | +| `grant_type` | `refresh_token` | +| `client_id` | client Id | +| `client_secret` | client secret | +| `refresh_token` | The refresh token provided with the original access token | -Unlike headers, URL query parameters are *case sensitive*. -{{< /note >}} +For example: +```bash +curl -X POST \ + https://tyk.cloud.tyk.io/my-api/oauth/token/ \ + -H "Authorization: Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ=" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "grant_type=refresh_token&client_id=my-client-id&client_secret=my-client-secret&refresh_token=YjdhOWFmZTAtNmExZi00ZTVlLWIwZTUtOGFhNmIwMWI3MzJj" +``` -To use a cookie name instead of a header or request parameter, set the `use_cookie` parameter to `true`. Cookie names are also case sensitive. +This command, issued by the *client* will obtain a new access token for the `/my-api` proxy deployed on a Tyk Gateway at `https://tyk.cloud.tyk.io`. The basic auth key is the base64 encoded representation of `my-client-id:my-client-secret` The `client_id` and `client_secret` match those allocated by Tyk (the auth server) for the *client app*. The `refresh_token` is a valid *refresh token* previously issued to the *client*. -**Signature validation** +The response payload contains: +- `access_token`: a new *access token* which can be used by the *client* to access the protected API +- `expires_in`: the expiration date/time of the access token +- `token_type`: set to `bearer` indicating that the access token should be provided in an [Auth Token](#use-auth-tokens) request to the protected API +- `refresh_token`: a new *refresh token* that can be used later to refresh the new *access token* -If you are migrating from platforms like Mashery, which use request signing, you can enable signature validation like this: +For example: -```{.copyWrapper} -... -"auth": { - "validate_signature": true, - "signature": { - "algorithm": "MasherySHA256", - "header": "X-Signature", - "secret": "secret", - "allowed_clock_skew": 2 - } +```json +{ + "access_token": "580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573", + "expires_in": 3600, + "refresh_token": "NWQzNGVhMTItMDE4Ny00MDFkLTljOWItNGE4NzI1ZGI1NGU2", + "token_type": "bearer" } -... ``` -`validate_signature`: boolean value to tell Tyk whether to enable signature validation or not - -`signature.algorithm`: the algorithm you wish to validate the signature against. Currently supported - - `MasherySHA256` - - `MasheryMD5` - - `signature.header`: header key of attempted signature - - `signature.secret`: the shared secret which was used to sign the request - - Can hold a dynamic value, by referencing `$tyk_meta` or `$tyk_context` variables. - - Example: `"secret": "$tyk_meta.individual_secret"`. Which effectively means that you have created/imported the api key into Tyk, and have stored the shared secret in the field `individual_secret` of the session token's meta-data. - -`signature.allowed_clock_skew`: allowed deviation in seconds between UNIX timestamp of Tyk & UNIX timestamp used to generate the signed request - -**Custom tokens** - -It is possible to provide Tyk with your own custom tokens, this can be achieved using the Tyk Gateway REST API. This is very useful if you have your own identity provider and don't want Tyk to create and manage tokens for you, and instead just mirror those tokens within Tyk to off-load access control, quotas and rate limiting from your own application. - -##### Enabling bearer tokens with Tyk Operator -Please consult the Tyk Operator supporting documentation for an example of how to [enable a bearer token]({{< ref "api-management/automations#auth-token-bearer-token" >}}) with Tyk Operator. +#### Revoking Access Tokens -### Revoke OAuth Tokens +OAuth access tokens have built in expiry, but if you need to [revoke](https://tools.ietf.org/html/rfc7009) a client's access to the API before this time, then you can use the option on the [OAuth Client management screen](#using-the-tyk-dashboard-ui) screen in Tyk Dashboard UI or the Tyk Dashboard API to do so. -This feature gives you (both developers and Dashboard users) the ability to revoke OAuth tokens. You can revoke specific tokens by providing the token and token hint (`access_token` or `refresh_token`) or you can revoke all OAuth Client tokens. +Using the **Tyk Dashboard API** you can revoke specific tokens (both access and refresh) or all tokens issued for a specific *client app* as follows: -You can revoke OAuth tokens via the following methods: -* From a Gateway API endpoint (in compliance with https://tools.ietf.org/html/rfc7009). See the OAuth section of our [Swagger doc]({{< ref "tyk-gateway-api" >}}) for the Gateway REST API for details. -* Via a Dashboard API calls - [Revoke a token]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#revoke-a-single-oauth-client-token" >}}) and [revoke all tokens]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#revoke-all-oauth-client-tokens" >}}) -* Via a Portal Developer API call - [Revoke a token]({{< ref "tyk-apis/tyk-portal-api/portal-developers#revoke-a-single-oauth-client-token" >}}) and [revoke all tokens]({{< ref "tyk-apis/tyk-portal-api/portal-developers#revoke-all-oauth-client-tokens" >}}) -* Via the Developer menu from the Tyk Dashboard +- [retrieve a list of all tokens for a client app]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#retrieve-all-current-tokens-for-specified-oauth20-client" >}}) +- [revoke a single token]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#revoke-a-single-oauth-client-token" >}}) +- [revoke all tokens for a client app]({{< ref "tyk-apis/tyk-dashboard-api/oauth-key-management#revoke-all-oauth-client-tokens" >}}) -Here's an example of how to revoke a token via the Tyk Dashboard API +These endpoints are protected using the Dashboard API secret assigned to the user managing the tokens, which must be provided in the `Authorization` header. -#### Submit a Request to Revoke the Token - -The client or server sends a request to the authorization server’s revocation endpoint to invalidate the token. +In this example, we issue a request to the `/revoke` endpoint of the *auth server* via the Tyk Dashboard API to invalidate a specific *access token*: ```bash curl -X POST \ - https://auth-server.com/oauth2/revoke \ - -H 'Authorization: Basic ZWQ1OTE1OGZhMjM0NGU5NGIzZTYyNzhlOGFiODUxNDI6TUdRM056RTJNR1F0WVRVeVpDMDBaVFZsTFdKak1USXRNakUyTVRNMU1tRTNOMk0x' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - -d 'token=ACCESS_TOKEN&token_type_hint=access_token&client_id=CLIENT_ID&client_secret=CLIENT_SECRET' + https://admin.cloud.tyk.io/api/apis/oauth/{CLIENT_ID}/revoke/ \ + -H "Authorization: " \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d "token=580defdbe1d21e0001c67e5c2a0a6c98ba8b4a059dc5825388501573&token_type_hint=access_token&client_id=my-client-id&client_secret=my-client-secret" ``` -**Request:** +Note that the `token_type_hint` must be set to `access_token` or `refresh_token` to match the type of `token` to be revoked. -| Parameter | Value | -| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -| **Method** | `POST` | -| **URL** | The revocation endpoint of the authorization server. | -| **Authorization** | Basic authorization, using the client ID and client secret of the OAuth client base64 encoded with colon separator. | -| **Content-Type** | `application/x-www-form-urlencoded` | -**Data:** +#### OAuth Token Notifications -| Parameter | Value | -| ----------------- | ------------------------------------------ | -| `token` | The access token to revoke, e.g., `ACCESS_TOKEN`. | -| `token_type_hint` | The type of token being revoked, typically `access_token`. | -| `client_id` | The OAuth client ID, e.g., `CLIENT_ID`. | -| `client_secret` | The client secret, e.g., `CLIENT_SECRET`. | +When operating as an OAuth authorization server, Tyk can generate an event whenever it issues an *access token*. You can configure a dedicated webhook that will be triggered to notify the Resource Owner service of the occurrence of the event. +OAuth token notifications can only be configured when using **Authorization Code** or **Resource Owner Password Credentials** grants, not when using *Client Credentials* grant because this flow is primarily used for server-to-server communication, where the client acts on its own behalf without user-specific authorization changes. -## Other Authentication Methods +You can configure the URL that the webhook will issue a `POST` request and a "shared secret" value that will be provided in a header (`X-Tyk-Shared-Secret`) used to secure the communication to the target application. The OAuth token notification webhook does not support any other authentication method. -### Use Basic Authentication +The body of the webhook request will have this content: -Basic Authentication is a straightforward method where the user's credentials (username and password) are sent in an HTTP header encoded in Base64. +```json +{ + "auth_code": "", + "new_oauth_token": "", + "refresh_token": "", + "old_refresh_token": "", + "notification_type": "" +} +``` -#### How does Basic Authentication work? +where +- `auth_code` is the Authorization Code that has been issued +- `new_oauth_token` is the Access Token that has been issued +- `refresh_token` is the Refresh Token that has been issued +- `old_refresh_token` is the Refresh Token that has been consumed when refreshing an access token +- `notification_type` will indicate the cause of the event: + - `new`: a new access token has been issued + - `refresh`: a token has been refreshed and a new refresh token has been issued -An API request made using Basic Authentication will have an `Authorization` header that contains the API key. +##### Configuring Notifications in the Tyk API Designer -The value of the `Authorization` header will be in the form: +Client Authentication is configured on the **Settings** screen within the Tyk OAS API Designer, within the **Server** section. Ensuring that you are in **Edit** mode, go to the *Authentication* section where you should have selected **Tyk OAuth 2.0** from the drop down options. -``` -Basic base64Encode(username:password) -``` +Here you will see the *Notifications* section where you can configure: -A real request could look something like: +- Notifications URL +- Notifications Shared Secret -``` -GET /api/widgets/12345 HTTP/1.1 -Host: localhost:8080 -Authorization: Basic am9obkBzbWl0aC5jb206MTIzNDU2Nw== -Cache-Control: no-cache -``` +Remember to select **Save API** to apply these settings to your API. -In this example the username is `john@smith.com` and the password is `1234567` (see [base64encode.org](https://www.base64encode.org)) +##### Configuring Notifications in the Tyk OAS API Definition -##### The problem with Basic Authentication +The example given [above](#using-the-tyk-oas-api-definition) includes the configuration necessary to issue notifications for token issuance (see lines 48-51 in the example). -With Basic Authentication, the authentication credentials are transferred from client to server (in our case, the Tyk Gateway) as encoded plain text. This is not a particularly secure way to transfer the credentials as it is highly susceptible to intercept; as the security of user authentication is usually of critical importance to API owners, Tyk recommends that Basic Authentication should only ever be used in conjunction with a TLS such as SSL. -##### Protect your API with Basic Authentication -Authentication type is configured within your API Definition; this can be done via the [Tyk Dashboard](#enable-basic-authentication-using-the-tyk-dashboard) or directly within the [API Definition file](#enable-basic-authentication-in-your-file-based-api-definition). -#### Enable Basic Auth -##### Enable Basic Authentication using the Tyk Dashboard -1. Select your API from the **API Management > APIs** menu -2. Scroll to the **Authentication** options -3. Select **Basic Authentication** from the drop-down list -4. Select **Strip Authorization Data** to strip any authorization data from your API requests. -5. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value -6. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. -7. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. +## Use JSON Web Tokens (JWT) -{{< img src="/img/api-management/security/basic-auth-api-setup.png" alt="Target Details: Basic Auth" >}} +JSON Web Tokens (JWT) are a compact, URL-safe means of representing claims to be transferred between two parties. They are commonly used in API authentication and authorization. -##### Enable Basic Authentication in your file-based API Definition +### Protecting an API with JWT -To enable Basic Authentication, the API Definition file needs to be set up to allow basic authentication rather than expecting a standard access token; this is achieved by setting `use_basic_auth` to true: +To protect an API with JWT, we need to execute the following steps: +* Set Authentication Mode +* Set the JWT Signing Method +* Set the Identity Source and Policy Field Name +* Set a Default Policy +* Generate a JWT -```{.copyWrapper} -{ - "name": "Tyk Test API", - ... - "use_basic_auth": true, - ... -} -``` -As you can see in the above example, enabling Basic Authentication is as simple as setting a flag for the feature in your API Definition object. Since Basic Authentication is a standard, Tyk will always look for the credentials as part of the `Authorization` header. +#### Set Authentication Mode -##### Enable basic authentication using Tyk Operator +1. Select JSON Web Tokens as the Authentication mode +2. [Set the cryptographic signing method](#set-up-jwt-signing-method) to `HMAC (shared)` and the public secret as `tyk123` +3. Set the Identity Source and Policy Field Name -Please consult the Tyk Operator supporting documentation for an example of how to [enable basic authentication]({{< ref "api-management/automations#basic-authentication" >}}) with Tyk Operator. +{{< img src="/img/api-management/security/jwt-hmac.png" alt="Target Details: JSON Web Token" >}} -#### Create a Basic Authentication user +#### Set a Default Policy -When using Basic Authentication, the API key used to access the API is not generated by the Tyk system, instead you need to create at least one Basic Authentication user in the Tyk Gateway. Tyk will compare the Basic Authentication key provided in the request against the list of users you have created. +If Tyk cannot find a `pol` claim, it will apply this Default Policy. Select a policy that gives access to this API we are protecting, or [go create one first]({{< ref "getting-started/create-security-policy" >}}) if it doesn't exist. -##### Using Tyk Dashboard +Make sure to save the changes to the API Definition. -You can use the Tyk Dashboard to register a Basic Authentication key that can then be used to access your API. +#### Generate a JWT -When you select the API, you can see that Basic Authentication settings are automatically displayed in the Authentication tab: +Let's generate a JWT so we can test our new protected API. -{{< img src="/img/api-management/security/basic-auth-api-setup.png" alt="Basic Auth tab" >}} +Head on over to [https://jwt.io/](https://jwt.io/). Sign the default JWT with our HMAC Shared Secret `tyk123` in the VERIFY SIGNATURE section. Your screen should look similar to this: -Then add a username & password and save! +{{< img src="/img/dashboard/system-management/jwt_jwtio_example.png" alt="Auth Configuration" >}} -Now you can curl the API in two different ways: +Copy the Encoded JWT and let's make a cURL against the Tyk API Definition: ``` -$ curl http://localhost:8080/basicauth/get \ - --header "Authorization: Basic $(echo -n 'myusername:mypassword' | base64)" -<200 response> - -$ curl http://myusername:mypassword@localhost:8080/basicauth/get -<200 response from upstream> +$ curl http://localhost:8080/my-jwt-api/get \ +--header "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.7u0ls1snw4tPEzd0JTFaf19oXoOvQYtowiHEAZnan74" ``` -We have full tutorials to guide you to [create an API Key]({{< ref "getting-started/create-api-key" >}}) via the Dashboard. -##### Using the Tyk Gateway API +### Use the JWT -This command creates a new basic authentication user in the Tyk Gateway with the user name `testuser` and password `mickey-mouse` by sending a `POST` command to the `/tyk/keys/` endpoint of Tyk Gateway API: +The client includes the JWT in the Authorization header when making requests to the API. -```{.copyWrapper} -curl -X POST -H "x-tyk-authorization: 352d20fe67be67f6340b4c0605b044c3" \ - -s \ - -H "Content-Type: application/json" \ - -X POST \ - -d '{ - "allowance": 1000, - "rate": 1000, - "per": 1, - "expires": -1, - "quota_max": -1, - "org_id": "53ac07777cbb8c2d53000002", - "quota_renews": 1449051461, - "quota_remaining": -1, - "quota_renewal_rate": 60, - "access_rights": { - "{API-ID}": { - "api_id": "{API-ID}", - "api_name": "{API-NAME}", - "versions": ["Default"] - } - }, - "meta_data": {}, - "basic_auth_data": { - "password": "mickey-mouse" - } - }' http://{your-tyk-gateway-host}:{port}/tyk/keys/testuser | python -mjson.tool +```bash +curl -X GET \ + https://api.example.com/protected-resource \ + -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...' ``` -{{< note success >}} -**Note** +**Request:** -You use `POST` to create a new user and `PUT` to update an existing entry. +| Parameter | Value | +| --------------- | ----------------------------------------------------- | +| **Method** | `GET` | +| **URL** | The API endpoint for the protected resource. | +| **Authorization** | Bearer token, e.g., `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`. | -Be careful to ensure that the `org_id` is set correctly and consistently so that the Basic Authentication user is created in the correct organization. -{{< /note >}} +### JWT and Auth0 with Tyk -##### Using the Tyk Dashboard API +This will walk you through securing your APIs with JWTs via Auth0. We also have the following video that will walk you through the process. -This command creates a new basic authentication user in the Tyk Gateway with the user name `testuser2` and password `minnie-mouse` by sending a `POST` command to the `/tyk/keys/` endpoint of Tyk Dashboard API: +{{< youtube-seo id="jm4V7XzbrZw" title="Protect Your APIs with Auth0 JWT and Tyk">}} -```{.copyWrapper} -curl -X POST -H "Authorization: 907aed9f88514f175f1dccf8a921f741" - -s - -H "Content-Type: application/json" - -X POST - -d '{ - "allowance": 1000, - "rate": 1000, - "per": 1, - "expires": -1, - "quota_max": -1, - "org_id": "53ac07777cbb8c2d53000002", - "quota_renews": 1449051461, - "quota_remaining": -1, - "quota_renewal_rate": 60, - "access_rights": { - "{API-ID}": { - "api_id": "{API-ID}", - "api_name": "{API-NAME}", - "versions": [ - "Default" - ] - } - }, - "meta_data": {}, - "basic_auth_data": { - "password": "minnie-mouse" - } - }' http://{your-tyk-dashboard-host}:{port}/api/apis/keys/basic/testuser2 | python -mjson.tool -``` +#### Prerequisites -[See Basic Authentication via the Dashboard API]({{< ref "tyk-apis/tyk-dashboard-api/basic-authentication" >}}) +* A free account with Auth0 +* A Tyk Self-Managed or Cloud installation -{{< note success >}} -**Note** +#### Create an Application in Auth0 -You use `POST` to create a new user and `PUT` to update an existing entry. +1. Log in to your Auth0 account. +2. Select APIs from the Applications menu. -Be careful to ensure that the `org_id` is set correctly and consistently so that the Basic Authentication user is created in the correct organization. -{{< /note >}} + {{< img src="/img/auth0/auth0-create-api.png" alt="Auth0 Create API" >}} -#### Extract credentials from the request body +3. Click Create API and enter a name and identifier for your API. -In some cases, for example when dealing with SOAP, user credentials can be passed within the request body. To handle this situation, you can configure basic auth plugin to extract username and password from the body, by providing regexps like this: + {{< img src="/img/auth0/api-details.png" alt="Auth0 API details" >}} -```{.copyWrapper} -"basic_auth": { - "extract_from_body": true, - "body_user_regexp": "(.*)", - "body_password_regexp": "(.*)" -} -``` +4. From the Test tab, follow the instructions on how to get an access token. -Note that the regexp should contain only one match group, which points to the actual value. + {{< img src="img/auth0/auth0-test-curl.png" alt="Auth0 Test with cURL" >}} +5. From the cURL tab, copy the token request command. -### Integrate External OAuth Middleware + ```bash + curl --request POST \ + --url https://dev-yjd8e8u5.us.auth0.com/oauth/token \ + --header 'content-type: application/json' \ + --data '{"client_id":{CLIENT_ID},"client_secret":{CLIENT_SECRET},"audience":{AUDIENCE},"grant_type":"client_credentials"}' + ``` -Tyk offers two types of OAuth authentication flow; Tyk itself as the identity provider (IdP) and Tyk connecting to an external 3rd party IdP. ‘External OAuth’ is what we call this second mechanism. To call an API that is protected by OAuth, you need to have an access token from the third party IDP (it could be an opaque token or a JWT). +6. Paste the command in a terminal window to generate your token. Save this token locally. -For subsequent calls the access token is provided alongside the API call and needs to be validated. With JWT, Tyk can confirm the validity of the JWT with the secret provided in your config. The secret signs the JWT when created and confirms that none of its contents has changed. + ```yaml + { + "access_token": "xxxxxxxxxxx", + "token_type": "Bearer" + } + ``` -For this reason, information like the expiry date which are often set within the JWT cannot be changed after the JWT has been initially created and signed. This means you are not able to revoke a token before the expiry set in the JWT with the standard JWT flow. With OAuth you can use [OAuth introspection](https://www.rfc-editor.org/rfc/rfc7662) to overcome this. With introspection, you can validate the access token via an introspection endpoint that validates the token. +7. After creating your API, a new Auth0 Application will be created. Go to the Applications section to view it. -Let’s see how external OAuth middleware is configured. + {{< img src="/img/auth0/new-application.png" alt="New Auth0 Application" >}} -#### OAS contract +8. Copy the Domain from the Basic Information. You will use this when adding an API to Tyk. -```yaml -externalOAuthServer: - enabled: true, - providers: # only one item in the array for now (we're going to support just one IDP config in the first iteration) - - jwt: #validate JWTs generated by 3rd party Oauth servers (like Okta) - enabled: true - signingMethod: HMAC/RSA/ECDSA # to verify signing method used in jwt - source: key # secret to verify signature - issuedAtValidationSkew: 0 - notBeforeValidationSkew: 0 - expiresAtValidationSkew: 0 - identityBaseField: # identity claimName - introspection: # array for introspection details - enabled: true/false - clientID: # for introspection request - clientSecret: # for introspection request, if empty will use oAuth.secret - url: # token introspection endpoint - cache: # Tyk will cache the introspection response when `cache.enabled` is set to `true` - enabled: true/false, - timeout: 0 # The duration (in seconds) for which Tyk will retain the introspection outcome in its cache. If the value is "0", it indicates that the introspection outcome will be stored in the cache until the token's expiration. - identityBaseField: # identity claimName -``` + {{< img src="/img/auth0/auth0-basic-info.png" alt="Auth0 Application Basic Information" >}} -#### Tyk Classic API definition contract -```yaml -"external_oauth": { - "enabled": true, - "providers": [ - { - "jwt": { - "enabled": false, - "signing_method": rsa/ecdsa/hmac, - "source": # jwk url/ base64 encoded static secret / base64 encoded jwk url - "identity_base_field": # identity claim name - "expires_at_validation_skew": # validation skew config for exp - "not_before_validation_skew": # validation skew config for nbf - "issued_at_validation_skew" : # validation skew config for iat - }, - "introspection": { - "enabled": true, - "url": # introspection endpoint url - "client_id": # client id used for introspection - "client_secret": # client secret to be filled here (plain text for now, TODO: decide on a more secure mechanism) - "identity_base_field": # identity claim name - "cache": { - "enabled": true, - "timeout": # timeout in seconds - } - } - } - ] -} -``` -- `externalOAuthServer` set `enabled` to `true` to enable the middleware. -- `providers` is an array of multiple IDP configurations, with each IDP config being an element in the `providers` array. -- You can use this config to use JWT self validation using `jwt` or use introspection via `instropection` in the `providers` section . -{{< note success >}} -**Note** +#### Create your API in Tyk -For now, you’ll be limiting `providers` to have only one element, ie one IDP configured. -{{< /note >}} +1. Log in to your Tyk Dashboard +2. Create a new HTTP API (the default http://httpbin.org upstream URL is fine) -#### JWT +{{< img src="/img/auth0/tyk-create-api.png" alt="Tyk Create HTTP API" width="400px" height="400" >}} -There could be cases when you don’t need to introspect a JWT access token from a third party IDP, and instead you can just validate the JWT. This is similar to existing JWT middleware, adding it in External OAuth middleware for semantic reasons. +1. From the Authentication section, select **JSON Web Token (JWT)** as your authentication mode. +2. Select RSA public Key as the JWT signing method. +3. Enter your Auth0 Application Domain from Step 8 above to complete the `jwks_uri` end point `https://<>/.well-known/jwks.json` +4. Copy your `jwks_uri` in to the **Public Key** field. -- `enabled` - enables JWT validation. -- `signingMethod` - specifies the signing method used to sign the JWT. -- `source` - the secret source, it can be one of: - - a base64 encoded static secret - - a valid JWK url in plain text - - a valid JWK url in base64 encoded format -- `issuedAtValidationSkew` , `notBeforeValidationSkew`, `expiresAtValidationSkew` can be used to [configure clock skew](#adjust-jwt-clock-skew-configuration) for json web token validation. -- `identityBaseField` - the identity key name for claims. If empty it will default to `sub`. +{{< img src="/img/auth0/tyk-api-auth.png" alt="Tyk API Authentication" width="800px" height="400" >}} -##### Example: Tyk OAS API definition with JWT validation enabled +1. Add an **Identity Source** and **Policy Field Name**. The defaults of `sub` and `pol` are fine. +2. Save your API. +3. From the System Management section, select Policies +4. Click Add Policy +5. Select your Auth0 API -```json -"securitySchemes": { - "external_jwt": { - "enabled": true, - "header": { - "enabled": true, - "name": "Authorization" - }, - "providers": [ - { - "jwt": { - "enabled": true, - "signingMethod": "hmac", - "source": "dHlrLTEyMw==", - "identityBaseField": "sub" - } - } - ] - } -} -``` - -##### Example: Tyk Classic API definition with JWT validation enabled - -```json -"external_oauth": { - "enabled": true, - "providers": [ - { - "jwt": { - "enabled": true, - "signing_method": "hmac", - "source": "dHlrLTEyMw==", - "issued_at_validation_skew": 0, - "not_before_validation_skew": 0, - "expires_at_validation_skew": 0, - "identity_base_field": "sub" - }, - "introspection": { - "enabled": false, - "url": "", - "client_id": "", - "client_secret": "", - "identity_base_field": "", - "cache": { - "enabled": false, - "timeout": 0 - } - } - } - ] -} -``` -#### Introspection - -For cases where you need to introspect the OAuth access token, Tyk uses the information in the `provider.introspection` section of the contract. This makes a network call to the configured introspection endpoint with the provided `clientID` and `clientSecret` to introspect the access token. +{{< img src="/img/auth0/policy-access-rights.png" alt="Tyk Policy access rights" width="800px" height="400" >}} -- `enabled` - enables OAuth introspection -- `clientID` - clientID used for OAuth introspection, available from IDP -- `clientSecret` - secret used to authenticate introspection call, available from IDP -- `url` - endpoint URL to make the introspection call -- `identityBaseField` - the identity key name for claims. If empty it will default to `sub`. +1. You can keep the rest of the access rights at the defaults. +2. Click the **Configurations** tab and enter a **Policy Name** and a **Keys Expiry after** period. -##### Caching +{{< img src="/img/auth0/policy-configuration.png" alt="Tyk Policy Configuration" width="400px" height="400" >}} -Introspection via a third party IdP is a network call. Sometimes it may be inefficient to call the introspection endpoint every time an API is called. Caching is the solution for this situation. Tyk caches the introspection response when `enabled` is set to `true` inside the `cache` configuration of `introspection`. Then it retrieves the value from the cache until the `timeout` value finishes. However, there is a trade-off here. When the timeout is long, it may result in accessing the upstream with a revoked access token. When it is short, the cache is not used as much resulting in more network calls. +1. Click **Create Policy**. +2. Edit your JWT Auth0 API and add the policy you created as the **Default Policy** from the Authentication section. -The recommended way to handle this balance is to never set the `timeout` value beyond the expiration time of the token, which would have been returned in the `exp` parameter of the introspection response. +{{< img src="/img/auth0/api-default-policy.png" alt="Tyk API Default Policy Configuration" width="600px" height="300" >}} -See the example introspection cache configuration: +1. From the top of the API copy the API URL +2. From a terminal window using the API URL and the Auth0 generated token. -```yaml -"introspection": { - ... - "cache": { - "enabled": true, - "timeout": 60 // in seconds - } -} +```.curl +curl -X GET {API URL} -H "Accept: application/json" -H "Authorization: Bearer {token}" ``` -##### Example: Tyk OAS API definition external OAuth introspection enabled +18. If using the [httpbin upstream URL](https://httpbin.org/) as in the example Tyk API, you should see the HTML returned for the httpbin service in your terminal. +19. If there is an error with the request, you will see the following error message. -```json -"securitySchemes": { - "keycloak_oauth": { - "enabled": true, - "header": { - "enabled": true, - "name": "Authorization" - }, - "providers": [ - { - "introspection": { - "enabled": true, - "url": "http://localhost:8080/realms/tyk/protocol/openid-connect/token/introspect", - "clientId": "introspection-client", - "clientSecret": "DKyFN0WXu7IXWzR05QZOnnSnK8uAAZ3U", - "identityBaseField": "sub", - "cache": { - "enabled": true, - "timeout": 3 - } - } - } - ] - } +```.bash +{ + "error": "Key not authorized:Unexpected signing method." } ``` -##### Example: Tyk Classic API definition with external OAuth introspection enabled -```json -"external_oauth": { - "enabled": true, - "providers": [ - { - "jwt": { - "enabled": false, - "signing_method": "", - "source": "", - "issued_at_validation_skew": 0, - "not_before_validation_skew": 0, - "expires_at_validation_skew": 0, - "identity_base_field": "" - }, - "introspection": { - "enabled": true, - "url": "http://localhost:8080/realms/tyk/protocol/openid-connect/token/introspect", - "client_id": "introspection-client", - "client_secret": "DKyFN0WXu7IXWzR05QZOnnSnK8uAAZ3U", - "identity_base_field": "sub", - "cache": { - "enabled": true, - "timeout": 3 - } - } - } - ] -} -``` +### JWT and Keycloak with Tyk -### Authenticate Using Go Plugins +This guide will walk you through securing your APIs with JWTs via Keycloak. -Go Plugin Authentication allows you to implement custom authentication logic using the Go programming language. This method is useful for scenarios where you need to implement specialized authentication mechanisms that are not natively supported by Tyk. -To learn more about using Tyk Golang Plugins, go [here]({{ ref "/plugins/supported-languages/golang/#supported-plugin-types" >}}) +#### Prerequisites +* A Keycloak installation +* A Tyk Self-Managed or Cloud installation -### Sign Requests with HMAC +#### Create an Application in Keycloak -{{< note success >}} Note +1. Access your Keycloak admin dashboard. +2. Navigate to the Administration console. -Tyk can interact with HMAC Signing in two ways. Firstly, as a client, we can validate the signature of incoming requests and map this to API access. You can also use Tyk to generate a header containing the signature of the request for use in upstream message integrity checks. For the upstream HMAC case please see [here]({{< ref "#upstream-hmac-request-signing" >}}) {{< /note >}} + {{< img src="/img/keycloak-jwt/navigate-to-admin-console.png" alt="Navigate to Keycloak Administration console" >}} +3. Create a Keycloak realm from the top left-hand side dropdown. -HMAC Signing is an access token method that adds another level of security by forcing the requesting client to also send along a signature that identifies the request temporally to ensure that the request is from the requesting user, using a secret key that is never broadcast over the wire. + {{< img src="/img/keycloak-jwt/create-jwt-realm.png" alt="Create Keycloak Realm" >}} -Tyk currently implements the latest draft of the [HMAC Request Signing standard](http://tools.ietf.org/html/draft-cavage-http-signatures-05). +4. Create a Keycloak client. -An HMAC signature is essentially some additional data sent along with a request to identify the end-user using a hashed value, in our case we encode the 'date' header of a request, the algorithm would look like: + {{< img src="/img/keycloak-jwt/create-client.png" alt="Create Client" >}} -``` -Base64Encode(HMAC-SHA1("date: Mon, 02 Jan 2006 15:04:05 MST", secret_key)) -``` +5. Enter the necessary client details. -The full request header for an HMAC request uses the standard `Authorization` header, and uses set, stripped comma-delimited fields to identify the user, from the draft proposal: + {{< img src="/img/keycloak-jwt/create-client-step-1.png" alt="Add client details" >}} -``` -Authorization: Signature keyId="hmac-key-1",algorithm="hmac-sha1",signature="Base64Encode(HMAC-SHA1(signing string))" -``` +6. Enable client authentication and Service account roles under Authentication flow. -Tyk supports the following HMAC algorithms: "hmac-sha1", "hmac-sha256", "hmac-sha384", "hmac-sha512”, and reads value from algorithm header. You can limit allowed algorithms by setting `hmac_allowed_algorithms` field in API definition, like this: `"hmac_allowed_algorithms": ["hmac-sha256", "hmac-sha512"]`. + {{< img src="/img/keycloak-jwt/create-client-step-2.png" alt="Update client permissions" >}} -The date format for an encoded string is: +7. Set the redirection URL rules. -``` -Mon, 02 Jan 2006 15:04:05 MST -``` + {{< img src="/img/keycloak-jwt/create-client-step-3.png" alt="Add redirection URL rules" >}} -This is the standard for most browsers, but it is worth noting that requests will fail if they do not use the above format. +8. Save. -When an HMAC-signed request comes into Tyk, the key is extracted from the `Authorization` header, and retrieved from Redis. If the key exists then Tyk will generate its own signature based on the requests "date" header, if this generated signature matches the signature in the `Authorization` header the request is passed. + {{< img src="/img/keycloak-jwt/client.png" alt="Example client" >}} -##### Supported headers +9. Retrieve the client secret from the Credentials tab under the client you just created. -Tyk API Gateway supports full header signing through the use of the `headers` HMAC signature field. This includes the request method and path using the`(request-target)` value. For body signature verification, HTTP Digest headers should be included in the request and in the header field value. + {{< img src="/img/keycloak-jwt/client-secret.png" alt="Retrieve client secret" >}} -{{< note success >}} -**Note** +10. Generate your JWT using `curl`. This is the token you will use to access your services through the Tyk Gateway. You can generate your JWT using either of the following methods. Make sure to replace the `KEYCLOAK` prefixed parameters with the appropriate values. -All headers should be in lowercase. -{{< /note >}} + **Password Grant Type:** + ```bash + curl -L --insecure -s -X POST 'https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/token' \ + -H "Content-Type: application/x-www-form-urlencoded" \ + --data-urlencode "client_id=KEYCLOAK_CLIENT_ID" \ + --data-urlencode "grant_type=password" \ + --data-urlencode "client_secret=KEYCLOAK_SECRET" \ + --data-urlencode "scope=openid" \ + --data-urlencode "username=KEYCLOAK_USERNAME" \ + --data-urlencode "password=KEYCLOAK_PASSWORD" + ``` -##### A sample signature generation snippet + **Client Credentials Grant Type:** -```{.copyWrapper} -... + ```bash + curl -L --insecure -s -X POST 'https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/token' \ + -H "Content-Type: application/x-www-form-urlencoded" \ + --data-urlencode "client_id=KEYCLOAK_CLIENT_ID" \ + --data-urlencode "grant_type=client_credentials" \ + --data-urlencode "client_secret=KEYCLOAK_SECRET" + ``` -refDate := "Mon, 02 Jan 2006 15:04:05 MST" + A typical response will look something like this: -// Prepare the request headers: -tim := time.Now().Format(refDate) -req.Header.Add("Date", tim) -req.Header.Add("X-Test-1", "hello") -req.Header.Add("X-Test-2", "world") + ```yaml + { + "access_token": "...", + "expires_in": 300, + "refresh_expires_in": 1800, + "refresh_token": "...", + "token_type": "Bearer", + "id_token": "...", + "not-before-policy": 0, + "session_state": "...", + "scope": "openid profile email" + } + ``` -// Prepare the signature to include those headers: -signatureString := "(request-target): " + "get /your/path/goes/here" -signatureString += "date: " + tim + "\n" -signatureString += "x-test-1: " + "hello" + "\n" -signatureString += "x-test-2: " + "world" +#### Running in k8s -// SHA1 Encode the signature -HmacSecret := "secret-key" -key := []byte(HmacSecret) -h := hmac.New(sha1.New, key) -h.Write([]byte(signatureString)) +If you are looking to POC this functionality in Kubernetes, you can run a fully worked-out example using our tyk-k8s-demo library. You can read more [here]({{< ref "getting-started/quick-start/tyk-k8s-demo" >}}). -// Base64 and URL Encode the string -sigString := base64.StdEncoding.EncodeToString(h.Sum(nil)) -encodedString := url.QueryEscape(sigString) -// Add the header -req.Header.Add("Authorization", - fmt.Sprintf("Signature keyId="9876",algorithm="hmac-sha1",headers="(request-target) date x-test-1 x-test-2",signature="%s"", encodedString)) +### Create Your JWT API in Tyk -... -``` +1. Log in to your Tyk Dashboard. +2. Create a new HTTP API (the default `http://httpbin.org` upstream URL is fine). -##### Date header not allowed for legacy .Net + {{< img src="/img/api-management/security/jwt-keycloak-api-create.png" alt="Create a new HTTP API" >}} -Older versions of some programming frameworks do not allow the Date header to be set, which can causes problems with implementing HMAC, therefore, if Tyk detects a `x-aux-date` header, it will use this to replace the Date header. +3. Scroll to the Authentication mode section and select JWT from the list. +4. Select RSA public Key as JWT Signing method. +5. Add your JSON Web Key Sets (JWKS) URL in the Public Key box. This can be found through the well-known config endpoint or is typically `https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/certs`. +6. Add an Identity Source and Policy Field Name. The defaults of `sub` and `pol` are fine. +7. Click on the update button to save the API. -##### Clock Skew + {{< img src="/img/api-management/security/jwt-keycloak-set-auth.png" alt="Create API" >}} -Tyk also implements the recommended clock-skew from the specification to prevent against replay attacks, a minimum lag of 300ms is allowed on either side of the date stamp, any more or less and the request will be rejected. This means that requesting machines need to be synchronised with NTP if possible. +8. Create a policy to manage access to your API. +9. Navigate to the Policies section on the left-hand side menu. +10. Click on Add Policy on the top right-hand side of your screen. +11. Select your API from the Add API Access Rights list. -You can edit the length of the clock skew in the API Definition by setting the `hmac_allowed_clock_skew` value in your API definition. This value will default to 0, which deactivates clock skew checks. + {{< img src="/img/api-management/security/jwt-keycloak-add-policy.png" alt="Select API for Security Policy" >}} -##### Additional notes - -HMAC Signing is a good way to secure an API if message reliability is paramount, it goes without saying that all requests should go via TLS/SSL to ensure that MITM attacks can be minimized. There are many ways of managing HMAC, and because of the additional encryption processing overhead requests will be marginally slower than more standard access methods. - -#### Setting up HMAC using the Dashboard +12. Click on the Configurations tab and choose a policy name and TLL. -To enable the use of HMAC Signing in your API from the Dashboard: + {{< img src="/img/api-management/security/jwt-keycloak-add-policy-cont.png" alt="Create API Security Policy" >}} -1. Select your API from the **System Management > APIs** menu -2. Scroll to the **Authentication** options -3. Select **HMAC (Signed Authetication Key)** from the drop-down list -4. Configure your **HMAC Request Signing** settings. -5. Select **Strip Authorization Data** to strip any authorization data from your API requests. -6. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value -7. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. -8. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. +13. Add the default policy to the API. + {{< img src="/img/api-management/security/jwt-keycloak-api-set-policy.png" alt="Add default policy to API" >}} -{{< img src="/img/2.10/hmac_auth_settings.png" alt="Target Details: HMAC" >}} +14. Test access to the API using curl. +15. Retrieve the API URL. + {{< img src="/img/api-management/security/jwt-keycloak-get-api-url.png" alt="Add default Policy to API" >}} -#### Setting up HMAC using an API Definition +16. Test with curl. Make sure to replace `TOKEN` with the JWT you received from the curl earlier. -To enable HMAC on your API, first you will need to set the API definition up to use the method, this is done in the API Definition file/object: + ```bash + curl 'friendly-slipper-gw.aws-use1.cloud-ara.tyk.io/keycloak.jwt/get' \ + -H "Authorization: Bearer TOKEN" + ``` -```{.copyWrapper} -{ - "name": "Tyk Test API", - ... - "enable_signature_checking": true, - "use_basic_auth": false, - "use_keyless": false, - "use_oauth2": false, - "auth": { - "auth_header_name": "" - }, - ... -} -``` -Ensure that the other methods are set to false. -#### Setting up an HMAC Session Object -When creating a user session object, the settings should be modified to reflect that an HMAC secret needs to be generated alongside the key: +### Split Token -```{.copyWrapper} -{ - ... - "hmac_enabled": true, - "hmac_string": "", - ... -} -``` +OAuth2, OIDC, and their foundation, JWT, have been industry standards for many years and continue to evolve, particularly with the iterative improvements in the OAuth RFC, aligning with FHIR and Open Banking principles. The OAuth flow remains a dominant approach for secure API access. -Creating HMAC keys is the same as creating regular access tokens - by using the [Tyk Gateway API]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/authentication" >}}). Setting the `hmac_enabled` flag to `true`, Tyk will generate a secret key for the key owner (which should not be modified), but will be returned by the API so you can store and report it to your end-user. +In the OAuth flow, two types of access tokens are commonly used: opaque and JWT (more precisely, JWS). However, the use of JWTs has sparked debates regarding security, as JWTs can leak information when base64 decoded. While some argue that JWTs should not contain sensitive information, others consider JWTs inherently insecure for authorization. +#### Introduction to Split Token Flow -#### Upstream HMAC request signing +JWT Access Tokens can carry sensitive information, making them vulnerable if compromised. The Split Token Flow offers a solution by storing only the JWT signature on the client side while keeping the header and payload on the server side. This approach combines the flexibility of JWTs with the security of opaque tokens, ensuring that sensitive data is not exposed. -You can sign a request with HMAC, before sending to the upsteam target. +#### How Tyk Implements Split Token Flow -This feature is implemented using [Draft 10](https://tools.ietf.org/html/draft-cavage-http-signatures-10) RFC. +Tyk API Gateway is well-positioned to broker the communication between the client and the authorization server. It can handle requests for new access tokens, split the JWT, and return only the signature to the client, storing the rest of the token internally. -`(request-target)` and all the headers of the request will be used for generating signature string. -If the request doesn't contain a `Date` header, middleware will add one as it is required according to above draft. +Here’s how you can implement the Split Token Flow using the client credentials flow: -A config option `request_signing` can be added in an API Definition to enable/disable the request signing. It has following format: +#### Request a JWT Access Token -```{.json} -"request_signing": { - "is_enabled": true, - "secret": "xxxx", - "key_id": "1", - "algorithm": "hmac-sha256" -} +```bash +$ curl -X POST -H "Content-Type: application/x-www-form-urlencoded" \ +https://keycloak-host/auth/realms/tyk/protocol/openid-connect/token \ +-d "grant_type=client_credentials" \ +-d "client_id=efd952c8-df3a-4cf5-98e6-868133839433" \ +-d "client_secret=0ede3532-f042-4120-bece-225e55a4a2d6" -s | jq ``` -The following algorithms are supported: - -1. `hmac-sha1` -2. `hmac-sha256` -3. `hmac-sha384` -4. `hmac-sha512` +This request returns a JWT access token. +##### Split the JWT -### Use OpenID Connect +The JWT consists of three parts: -{{< note success >}} -**Note** +* Header: `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9` +* Payload: `eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyLCJlbWFpbCI6ImhlbGxvQHdvcmxkLmNvbSJ9` +* Signature: `EwIaRgq4go4R2M2z7AADywZ2ToxG4gDMoG4SQ1X3GJ0` -Tyk's dedicated OpenID Connect Authentication middleware will be deprecated from Tyk 5.7.0. Tyk's [JSON Web Token (JWT)](#use-json-web-tokens-jwt) authentication method also allows you to integrate with an OIDC provider, so the dedicated OIDC middleware will be deprecated to reduce duplication and potential for misconfiguration. -{{< /note >}} +Using the Split Token Flow, only the signature is returned to the client, while the header and payload are stored server-side by Tyk. +{{< img src="/img/2.10/split_token2.png" alt="Split Token Example" >}} -[OpenID Connect](https://openid.net/developers/how-connect-works) (OIDC) builds on top of OAuth 2.0, adding authentication. You can secure your APIs on Tyk by integrating with any standards compliant OIDC provider using [JSON Web Tokens](#use-json-web-tokens-jwt) (JWTs). -JWTs offer a simple way to use the third-party Identity Provider (IdP) without needing any direct integration between the Tyk and 3rd-party systems. +##### Create a Virtual Endpoint in Tyk -To integrate a 3rd party OAuth2/OIDC IdP with Tyk, all you will need to do is ensure that your IdP can issue OAuth2 JWT access tokens as opposed to opaque tokens. +Create a virtual endpoint or API in Tyk to handle the token request. This endpoint receives the auth request, exchanges credentials with the authorization server, and returns the split token. -The client application authenticates with the IdP which then provides an access token that is accepted by Tyk. Tyk will take care of the rest, ensuring that the rate limits and quotas of the underlying identity of the bearer are maintained across JWT token re-issues, so long as the "sub" (or whichever identity claim you chose to use) is available and consistent throughout and the policy that underpins the security clearance of the token exists too. +**Example script for the Virtual Endpoint:** +```javascript +function login(request, session, config) { + var credentials = request.Body.split("&") + .map(function(item, index) { + return item.split("="); + }).reduce(function(p, c) { + p[c[0]] = c[1]; + return p; + }, {}); + var newRequest = { + "Headers": {"Content-Type": "application/x-www-form-urlencoded"}, + "Method": "POST", + "FormData": { + grant_type: credentials.grant_type, + client_id: credentials.client_id, + client_secret: credentials.client_secret + }, + "Domain": "https://keycloak-host", + "resource": "/auth/realms/tyk/protocol/openid-connect/token", + }; + var response = TykMakeHttpRequest(JSON.stringify(newRequest)); + var usableResponse = JSON.parse(response); -### Use JSON Web Tokens (JWT) + if (usableResponse.Code !== 200) { + return TykJsResponse({ + Body: usableResponse.Body, + Code: usableResponse.Code + }, session.meta_data) + } -JSON Web Tokens (JWT) are a compact, URL-safe means of representing claims to be transferred between two parties. They are commonly used in API authentication and authorization. + var bodyObj = JSON.parse(usableResponse.Body); + var accessTokenComplete = bodyObj.access_token; + var signature = accessTokenComplete.split(".")[2]; -#### Protecting an API with JWT + log("completeAccessToken: " + accessTokenComplete); -To protect an API with JWT, we need to execute the following steps: -* Set Authentication Mode -* Set the JWT Signing Method -* Set the Identity Source and Policy Field Name -* Set a Default Policy -* Generate a JWT + // Create key inside Tyk + createKeyInsideTyk(signature, bodyObj); + // Override signature + bodyObj.access_token = signature; + delete bodyObj.refresh_expires_in; + delete bodyObj.refresh_token; + delete bodyObj.foo; -##### Set Authentication Mode + var responseObject = { + Body: JSON.stringify(bodyObj), + Code: usableResponse.Code + } + return TykJsResponse(responseObject, session.meta_data); +} +``` -1. Select JSON Web Tokens as the Authentication mode -2. [Set the cryptographic signing method](#set-up-jwt-signing-method) to `HMAC (shared)` and the public secret as `tyk123` -3. Set the Identity Source and Policy Field Name +This script handles the login process, splits the JWT, and stores the necessary information in Tyk. -{{< img src="/img/api-management/security/jwt-hmac.png" alt="Target Details: JSON Web Token" >}} +Once the setup is complete, you can test the Split Token Flow by making API calls using the opaque token returned by the virtual endpoint. Tyk will validate the token and reconstruct the full JWT for upstream services. -##### Set a Default Policy +```bash +$ curl localhost:8080/basic-protected-api/get -H "Authorization: MEw….GJ0" +``` -If Tyk cannot find a `pol` claim, it will apply this Default Policy. Select a policy that gives access to this API we are protecting, or [go create one first]({{< ref "getting-started/create-security-policy" >}}) if it doesn't exist. +This request uses the opaque token, which Tyk validates and then injects the full JWT into the Authorization header for the API request. -Make sure to save the changes to the API Definition. +{{< img src="/img/2.10/split_token3.png" alt="Split Token Key Metadata" >}} -##### Generate a JWT +{{< img src="/img/2.10/split_token1.png" alt="Split Token API Injection" >}} -Let's generate a JWT so we can test our new protected API. -Head on over to [https://jwt.io/](https://jwt.io/). Sign the default JWT with our HMAC Shared Secret `tyk123` in the VERIFY SIGNATURE section. Your screen should look similar to this: -{{< img src="/img/dashboard/system-management/jwt_jwtio_example.png" alt="Auth Configuration" >}} +### Configure your JWT Setup +Learn how to configure and manage JWT authentication in your Tyk API Gateway. -Copy the Encoded JWT and let's make a cURL against the Tyk API Definition: -``` -$ curl http://localhost:8080/my-jwt-api/get \ ---header "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.7u0ls1snw4tPEzd0JTFaf19oXoOvQYtowiHEAZnan74" -``` +#### Set Up JWT Signing Method +Select the cryptographic method to verify JWT signatures from the following options: -#### Use the JWT +- RSA public key +- HMAC shared secret +- ECDSA +- [Public JWKS URL](#enable-dynamic-public-key-rotation-using-jwks) -The client includes the JWT in the Authorization header when making requests to the API. +{{< note success >}} +**Note**: Leave the field blank to configure at the key level. +{{< /note >}} +To generate an RSA keypair, use the following commands: ```bash -curl -X GET \ - https://api.example.com/protected-resource \ - -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...' +openssl genrsa -out key.rsa +openssl rsa -in key.rsa -pubout > key.rsa.pub ``` -**Request:** - -| Parameter | Value | -| --------------- | ----------------------------------------------------- | -| **Method** | `GET` | -| **URL** | The API endpoint for the protected resource. | -| **Authorization** | Bearer token, e.g., `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`. | -#### JWT and Auth0 with Tyk +#### Set Up Individual JWT Secrets +Enable Tyk to validate an inbound token using stored keys: -This will walk you through securing your APIs with JWTs via Auth0. We also have the following video that will walk you through the process. +1. Set up your token with the following fields: + ```{.json} + "jwt_data": { + "secret": "Secret" + } + ``` +2. Ensure the `kid` header field is included in the JWT for validation. + - If the `kid` header is missing, Tyk will check the `sub` field. This is not recommended but supported. -{{< youtube-seo id="jm4V7XzbrZw" title="Protect Your APIs with Auth0 JWT and Tyk">}} +The advantage of using RSA is that only the hashed ID and public key of the end user are stored, ensuring high security. -##### Prerequisites -* A free account with Auth0 -* A Tyk Self-Managed or Cloud installation +#### Configure Identity Source and Policy Field Name +Define the identity and policy applied to the JWT: -##### Create an Application in Auth0 +- **Identity Source**: Select which identity claim to use (e.g., `sub`) for rate-limiting and quota counting. +- **Policy Field Name**: Add a policy ID claim to the JWT that applies a specific security policy to the session. -1. Log in to your Auth0 account. -2. Select APIs from the Applications menu. - {{< img src="/img/auth0/auth0-create-api.png" alt="Auth0 Create API" >}} +#### Enable Dynamic Public Key Rotation Using JWKs +Instead of a static public key, configure a public JSON Web Key Sets (JWKs) URL to dynamically verify JWT tokens: -3. Click Create API and enter a name and identifier for your API. +1. Use the JWKs URL to dynamically maintain and rotate active public keys. +2. Ensure JWTs contain the `kid` header, matching the `kid` in the JWK payload for verification. - {{< img src="/img/auth0/api-details.png" alt="Auth0 API details" >}} -4. From the Test tab, follow the instructions on how to get an access token. +{{< img src="/img/2.10/jwt_rsa_public_key.png" alt="JWKS Public Key Rotation" >}} - {{< img src="img/auth0/auth0-test-curl.png" alt="Auth0 Test with cURL" >}} -5. From the cURL tab, copy the token request command. +For example, cURLing the JWKs URL returns: - ```bash - curl --request POST \ - --url https://dev-yjd8e8u5.us.auth0.com/oauth/token \ - --header 'content-type: application/json' \ - --data '{"client_id":{CLIENT_ID},"client_secret":{CLIENT_SECRET},"audience":{AUDIENCE},"grant_type":"client_credentials"}' - ``` +```{.copyWrapper} +$ curl http://keycloak_host:8081/auth/realms/master/protocol/openid-connect/certs +{ + "keys": [ + { + "kid": "St1x2ip3-wzbrvdk4yVa3-inKWdOwbkD3Nj3gpFJwYM", + "kty": "RSA", + "alg": "RS256", + "use": "sig", + "n": "k-gUvKl9-sS1u8odZ5rZdVCGTe...m2bMmw", + "e": "AQAB", + "x5c": [ + "MIICmzCCAYMCBgFvyVrRq....K9XQYuuWSV5Tqvc7mzPd/7mUIlZQ=" + ], + "x5t": "6vqj9AeFBihIS6LjwZhwFLmgJXM", + "x5t#S256": "0iEMk3Dp0XWDITtA1hd0qsQwgES-BTxrz60Vk5MjGeQ" + } + ] +} +``` -6. Paste the command in a terminal window to generate your token. Save this token locally. +This is a JWKS complaint payload as it contains the "x5c" entry which contains the public key. Also, the issuer generates the ID Token or Access Token with a header that includes a "kid" that matches the one in the JWKS payload. - ```yaml - { - "access_token": "xxxxxxxxxxx", - "token_type": "Bearer" - } - ``` - -7. After creating your API, a new Auth0 Application will be created. Go to the Applications section to view it. - - {{< img src="/img/auth0/new-application.png" alt="New Auth0 Application" >}} - -8. Copy the Domain from the Basic Information. You will use this when adding an API to Tyk. - - {{< img src="/img/auth0/auth0-basic-info.png" alt="Auth0 Application Basic Information" >}} - - - -##### Create your API in Tyk - -1. Log in to your Tyk Dashboard -2. Create a new HTTP API (the default http://httpbin.org upstream URL is fine) - -{{< img src="/img/auth0/tyk-create-api.png" alt="Tyk Create HTTP API" width="400px" height="400" >}} +Here's an example of a header belonging to an access token generated by the issuer above. +```{.json} +{ + "alg": "RS256", + "typ": "JWT", + "kid": "St1x2ip3-wzbrvdk4yVa3-inKWdOwbkD3Nj3gpFJwYM" +} +``` -1. From the Authentication section, select **JSON Web Token (JWT)** as your authentication mode. -2. Select RSA public Key as the JWT signing method. -3. Enter your Auth0 Application Domain from Step 8 above to complete the `jwks_uri` end point `https://<>/.well-known/jwks.json` -4. Copy your `jwks_uri` in to the **Public Key** field. +The auth (bearer) tokens will be signed by the private key of the issuer, which in this example is our keycloak host. This token can be verified by Tyk using the public key available in the above payload under "x5C". -{{< img src="/img/auth0/tyk-api-auth.png" alt="Tyk API Authentication" width="800px" height="400" >}} +All of this happens automatically. You just need to specify to Tyk what the JWKs url is, and then apply a "sub" and default policy in order for everything to work. See Step #3, 4, and 5 under option #1 for explanations and examples. -1. Add an **Identity Source** and **Policy Field Name**. The defaults of `sub` and `pol` are fine. -2. Save your API. -3. From the System Management section, select Policies -4. Click Add Policy -5. Select your Auth0 API -{{< img src="/img/auth0/policy-access-rights.png" alt="Tyk Policy access rights" width="800px" height="400" >}} -1. You can keep the rest of the access rights at the defaults. -2. Click the **Configurations** tab and enter a **Policy Name** and a **Keys Expiry after** period. +#### Adjust JWT Clock Skew Configuration +Prevent token rejection due to clock skew between servers by configuring clock skew values: -{{< img src="/img/auth0/policy-configuration.png" alt="Tyk Policy Configuration" width="400px" height="400" >}} +- `jwt_issued_at_validation_skew` +- `jwt_expires_at_validation_skew` +- `jwt_not_before_validation_skew` -1. Click **Create Policy**. -2. Edit your JWT Auth0 API and add the policy you created as the **Default Policy** from the Authentication section. +All values are in seconds. The default is `0`. -{{< img src="/img/auth0/api-default-policy.png" alt="Tyk API Default Policy Configuration" width="600px" height="300" >}} -1. From the top of the API copy the API URL -2. From a terminal window using the API URL and the Auth0 generated token. +#### Map JWT Scopes to Policies +Assign JWT scopes to security policies to control access: -```.curl -curl -X GET {API URL} -H "Accept: application/json" -H "Authorization: Bearer {token}" -``` -18. If using the [httpbin upstream URL](https://httpbin.org/) as in the example Tyk API, you should see the HTML returned for the httpbin service in your terminal. -19. If there is an error with the request, you will see the following error message. +1. Specify scope-to-policy mapping: -```.bash -{ - "error": "Key not authorized:Unexpected signing method." +```{.copyWrapper} + "jwt_scope_to_policy_mapping": { + { + "admin": "59672779fa4387000129507d", + "developer": "53222349fa4387004324324e" + }, + "jwt_scope_claim_name": "our_scope" } ``` + - `"jwt_scope_to_policy_mapping"` provides mapping of scopes (read from claim) to actual policy ID. I.e. in this example we specify that scope "admin" will apply policy `"59672779fa4387000129507d"` to a key +- `"jwt_scope_claim_name"` identifies the JWT claim name which contains scopes. This API Spec field is optional with default value `"scope"`. This claim value could be any of the following: + - a string with space delimited list of values (by standard) + - a slice of strings + - a string with space delimited list of values inside a nested key. In this case, provide `"jwt_scope_claim_name"` in dot notation. For eg. `"scope1.scope2"`, `"scope2"` will be having the list of values nested inside `"scope1"` + - a slice of strings inside a nested key. In this case, provide `"jwt_scope_claim_name"` in dot notation. For eg. `"scope1.scope2"`, `"scope2"` will be having a slice of strings nested inside `"scope1"` +2. Set the claim name that contains the scopes (default: `scope`): + ```{.json} + "jwt_scope_claim_name": "our_scope" + ``` -#### JWT and Keycloak with Tyk - -This guide will walk you through securing your APIs with JWTs via Keycloak. - -##### Prerequisites - -* A Keycloak installation -* A Tyk Self-Managed or Cloud installation - -##### Create an Application in Keycloak - -1. Access your Keycloak admin dashboard. -2. Navigate to the Administration console. - - {{< img src="/img/keycloak-jwt/navigate-to-admin-console.png" alt="Navigate to Keycloak Administration console" >}} +{{< note success >}} +**Note** -3. Create a Keycloak realm from the top left-hand side dropdown. +Several scopes in JWT claim will lead to have several policies applied to a key. In this case all policies should have `"per_api"` set to `true` and shouldn't have the same `API ID` in access rights. I.e. if claim with scopes contains value `"admin developer"` then two policies `"59672779fa4387000129507d"` and `"53222349fa4387004324324e"` will be applied to a key (with using our example config above). +{{< /note >}} - {{< img src="/img/keycloak-jwt/create-jwt-realm.png" alt="Create Keycloak Realm" >}} +#### Visualize JWT Flow in Tyk API Gateway +View the diagram below for an overview of JWT flow in Tyk: -4. Create a Keycloak client. +{{< img src="/img/diagrams/diagram_docs_JSON-web-tokens@2x.png" alt="JSON Web Tokens Flow" >}} - {{< img src="/img/keycloak-jwt/create-client.png" alt="Create Client" >}} -5. Enter the necessary client details. +## Other Authentication Methods - {{< img src="/img/keycloak-jwt/create-client-step-1.png" alt="Add client details" >}} -6. Enable client authentication and Service account roles under Authentication flow. +### Use Basic Authentication - {{< img src="/img/keycloak-jwt/create-client-step-2.png" alt="Update client permissions" >}} +Basic Authentication is a straightforward method where the user's credentials (username and password) are sent in an HTTP header encoded in Base64. -7. Set the redirection URL rules. +#### How does Basic Authentication Work? - {{< img src="/img/keycloak-jwt/create-client-step-3.png" alt="Add redirection URL rules" >}} +An API request made using Basic Authentication will have an `Authorization` header that contains the API key. -8. Save. +The value of the `Authorization` header will be in the form: - {{< img src="/img/keycloak-jwt/client.png" alt="Example client" >}} +``` +Basic base64Encode(username:password) +``` -9. Retrieve the client secret from the Credentials tab under the client you just created. +A real request could look something like: - {{< img src="/img/keycloak-jwt/client-secret.png" alt="Retrieve client secret" >}} +``` +GET /api/widgets/12345 HTTP/1.1 +Host: localhost:8080 +Authorization: Basic am9obkBzbWl0aC5jb206MTIzNDU2Nw== +Cache-Control: no-cache +``` -10. Generate your JWT using `curl`. This is the token you will use to access your services through the Tyk Gateway. You can generate your JWT using either of the following methods. Make sure to replace the `KEYCLOAK` prefixed parameters with the appropriate values. +In this example the username is `john@smith.com` and the password is `1234567` (see [base64encode.org](https://www.base64encode.org)) - **Password Grant Type:** +##### The Problem with Basic Authentication - ```bash - curl -L --insecure -s -X POST 'https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/token' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - --data-urlencode 'client_id=KEYCLOAK_CLIENT_ID' \ - --data-urlencode 'grant_type=password' \ - --data-urlencode 'client_secret=KEYCLOAK_SECRET' \ - --data-urlencode 'scope=openid' \ - --data-urlencode 'username=KEYCLOAK_USERNAME' \ - --data-urlencode 'password=KEYCLOAK_PASSWORD' - ``` +With Basic Authentication, the authentication credentials are transferred from client to server (in our case, the Tyk Gateway) as encoded plain text. This is not a particularly secure way to transfer the credentials as it is highly susceptible to intercept; as the security of user authentication is usually of critical importance to API owners, Tyk recommends that Basic Authentication should only ever be used in conjunction with a TLS such as SSL. - **Client Credentials Grant Type:** +##### Protect your API with Basic Authentication - ```bash - curl -L --insecure -s -X POST 'https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/token' \ - -H 'Content-Type: application/x-www-form-urlencoded' \ - --data-urlencode 'client_id=KEYCLOAK_CLIENT_ID' \ - --data-urlencode 'grant_type=client_credentials' \ - --data-urlencode 'client_secret=KEYCLOAK_SECRET' - ``` +Authentication type is configured within your API Definition; this can be done via the [Tyk Dashboard](#enable-basic-authentication-using-the-tyk-dashboard) or directly within the [API Definition file](#enable-basic-authentication-in-your-file-based-api-definition). - A typical response will look something like this: - ```yaml - { - "access_token": "...", - "expires_in": 300, - "refresh_expires_in": 1800, - "refresh_token": "...", - "token_type": "Bearer", - "id_token": "...", - "not-before-policy": 0, - "session_state": "...", - "scope": "openid profile email" - } - ``` +#### Enable Basic Auth +##### Enable Basic Authentication using the Tyk Dashboard -##### Running in k8s +1. Select your API from the **API Management > APIs** menu +2. Scroll to the **Authentication** options +3. Select **Basic Authentication** from the drop-down list +4. Select **Strip Authorization Data** to strip any authorization data from your API requests. +5. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value +6. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. +7. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. -If you are looking to POC this functionality in Kubernetes, you can run a fully worked-out example using our tyk-k8s-demo library. You can read more [here]({{< ref "getting-started/quick-start/tyk-k8s-demo" >}}). +{{< img src="/img/api-management/security/basic-auth-api-setup.png" alt="Target Details: Basic Auth" >}} +##### Enable Basic Authentication in your file-based API Definition -#### Create Your JWT API in Tyk +To enable Basic Authentication, the API Definition file needs to be set up to allow basic authentication rather than expecting a standard access token; this is achieved by setting `use_basic_auth` to true: -1. Log in to your Tyk Dashboard. -2. Create a new HTTP API (the default `http://httpbin.org` upstream URL is fine). +```{.copyWrapper} +{ + "name": "Tyk Test API", + ... + "use_basic_auth": true, + ... +} +``` - {{< img src="/img/api-management/security/jwt-keycloak-api-create.png" alt="Create a new HTTP API" >}} +As you can see in the above example, enabling Basic Authentication is as simple as setting a flag for the feature in your API Definition object. Since Basic Authentication is a standard, Tyk will always look for the credentials as part of the `Authorization` header. -3. Scroll to the Authentication mode section and select JWT from the list. -4. Select RSA public Key as JWT Signing method. -5. Add your JSON Web Key Sets (JWKS) URL in the Public Key box. This can be found through the well-known config endpoint or is typically `https://KEYCLOAK_URL/realms/KEYCLOAK_REALM/protocol/openid-connect/certs`. -6. Add an Identity Source and Policy Field Name. The defaults of `sub` and `pol` are fine. -7. Click on the update button to save the API. +##### Enable basic authentication using Tyk Operator - {{< img src="/img/api-management/security/jwt-keycloak-set-auth.png" alt="Create API" >}} +Please consult the Tyk Operator supporting documentation for an example of how to [enable basic authentication]product-stack/tyk-operator/advanced-configurations/client-authentication#basic-authentication - ?does this exist? with Tyk Operator. -8. Create a policy to manage access to your API. -9. Navigate to the Policies section on the left-hand side menu. -10. Click on Add Policy on the top right-hand side of your screen. -11. Select your API from the Add API Access Rights list. +#### Create a Basic Authentication User - {{< img src="/img/api-management/security/jwt-keycloak-add-policy.png" alt="Select API for Security Policy" >}} +When using Basic Authentication, the API key used to access the API is not generated by the Tyk system, instead you need to create at least one Basic Authentication user in the Tyk Gateway. Tyk will compare the Basic Authentication key provided in the request against the list of users you have created. -12. Click on the Configurations tab and choose a policy name and TLL. +##### Using Tyk Dashboard - {{< img src="/img/api-management/security/jwt-keycloak-add-policy-cont.png" alt="Create API Security Policy" >}} +You can use the Tyk Dashboard to register a Basic Authentication key that can then be used to access your API. -13. Add the default policy to the API. +When you select the API, you can see that Basic Authentication settings are automatically displayed in the Authentication tab: - {{< img src="/img/api-management/security/jwt-keycloak-api-set-policy.png" alt="Add default policy to API" >}} +{{< img src="/img/api-management/security/basic-auth-api-setup.png" alt="Basic Auth tab" >}} -14. Test access to the API using curl. -15. Retrieve the API URL. +Then add a username & password and save! - {{< img src="/img/api-management/security/jwt-keycloak-get-api-url.png" alt="Add default Policy to API" >}} +Now you can curl the API in two different ways: -16. Test with curl. Make sure to replace `TOKEN` with the JWT you received from the curl earlier. +``` +$ curl http://localhost:8080/basicauth/get \ + --header "Authorization: Basic $(echo -n 'myusername:mypassword' | base64)" +<200 response> - ```bash - curl 'friendly-slipper-gw.aws-use1.cloud-ara.tyk.io/keycloak.jwt/get' \ - -H "Authorization: Bearer TOKEN" - ``` +$ curl http://myusername:mypassword@localhost:8080/basicauth/get +<200 response from upstream> +``` +We have full tutorials to guide you to [create an API Key]({{< ref "getting-started/create-api-key" >}}) via the Dashboard. +##### Using the Tyk Gateway API +This command creates a new basic authentication user in the Tyk Gateway with the user name `testuser` and password `mickey-mouse` by sending a `POST` command to the `/tyk/keys/` endpoint of Tyk Gateway API: +```{.copyWrapper} +curl -X POST -H "x-tyk-authorization: 352d20fe67be67f6340b4c0605b044c3" \ + -s \ + -H "Content-Type: application/json" \ + -X POST \ + -d '{ + "allowance": 1000, + "rate": 1000, + "per": 1, + "expires": -1, + "quota_max": -1, + "org_id": "53ac07777cbb8c2d53000002", + "quota_renews": 1449051461, + "quota_remaining": -1, + "quota_renewal_rate": 60, + "access_rights": { + "{API-ID}": { + "api_id": "{API-ID}", + "api_name": "{API-NAME}", + "versions": ["Default"] + } + }, + "meta_data": {}, + "basic_auth_data": { + "password": "mickey-mouse" + } + }' http://{your-tyk-gateway-host}:{port}/tyk/keys/testuser | python -mjson.tool +``` -#### Split Token +{{< note success >}} +**Note** -OAuth2, OIDC, and their foundation, JWT, have been industry standards for many years and continue to evolve, particularly with the iterative improvements in the OAuth RFC, aligning with FHIR and Open Banking principles. The OAuth flow remains a dominant approach for secure API access. +You use `POST` to create a new user and `PUT` to update an existing entry. -In the OAuth flow, two types of access tokens are commonly used: opaque and JWT (more precisely, JWS). However, the use of JWTs has sparked debates regarding security, as JWTs can leak information when base64 decoded. While some argue that JWTs should not contain sensitive information, others consider JWTs inherently insecure for authorization. +Be careful to ensure that the `org_id` is set correctly and consistently so that the Basic Authentication user is created in the correct organization. +{{< /note >}} -##### Introduction to Split Token Flow +##### Using the Tyk Dashboard API -JWT Access Tokens can carry sensitive information, making them vulnerable if compromised. The Split Token Flow offers a solution by storing only the JWT signature on the client side while keeping the header and payload on the server side. This approach combines the flexibility of JWTs with the security of opaque tokens, ensuring that sensitive data is not exposed. +This command creates a new basic authentication user in the Tyk Gateway with the user name `testuser2` and password `minnie-mouse` by sending a `POST` command to the `/tyk/keys/` endpoint of Tyk Dashboard API: -##### How Tyk Implements Split Token Flow +```{.copyWrapper} +curl -X POST -H "Authorization: 907aed9f88514f175f1dccf8a921f741" + -s + -H "Content-Type: application/json" + -X POST + -d '{ + "allowance": 1000, + "rate": 1000, + "per": 1, + "expires": -1, + "quota_max": -1, + "org_id": "53ac07777cbb8c2d53000002", + "quota_renews": 1449051461, + "quota_remaining": -1, + "quota_renewal_rate": 60, + "access_rights": { + "{API-ID}": { + "api_id": "{API-ID}", + "api_name": "{API-NAME}", + "versions": [ + "Default" + ] + } + }, + "meta_data": {}, + "basic_auth_data": { + "password": "minnie-mouse" + } + }' http://{your-tyk-dashboard-host}:{port}/api/apis/keys/basic/testuser2 | python -mjson.tool +``` -Tyk API Gateway is well-positioned to broker the communication between the client and the authorization server. It can handle requests for new access tokens, split the JWT, and return only the signature to the client, storing the rest of the token internally. +[See Basic Authentication via the Dashboard API]({{< ref "tyk-apis/tyk-dashboard-api/basic-authentication" >}}) -Here’s how you can implement the Split Token Flow using the client credentials flow: +{{< note success >}} +**Note** -##### Request a JWT Access Token +You use `POST` to create a new user and `PUT` to update an existing entry. -```bash -$ curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' \ -https://keycloak-host/auth/realms/tyk/protocol/openid-connect/token \ --d grant_type=client_credentials \ --d client_id=efd952c8-df3a-4cf5-98e6-868133839433 \ --d client_secret=0ede3532-f042-4120-bece-225e55a4a2d6 -s | jq -``` +Be careful to ensure that the `org_id` is set correctly and consistently so that the Basic Authentication user is created in the correct organization. +{{< /note >}} -This request returns a JWT access token. +#### Extract credentials from the request body -###### Split the JWT +In some cases, for example when dealing with SOAP, user credentials can be passed within the request body. To handle this situation, you can configure basic auth plugin to extract username and password from the body, by providing regexps like this: -The JWT consists of three parts: +```{.copyWrapper} +"basic_auth": { + "extract_from_body": true, + "body_user_regexp": "(.*)", + "body_password_regexp": "(.*)" +} +``` -* Header: `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9` -* Payload: `eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyLCJlbWFpbCI6ImhlbGxvQHdvcmxkLmNvbSJ9` -* Signature: `EwIaRgq4go4R2M2z7AADywZ2ToxG4gDMoG4SQ1X3GJ0` +Note that the regexp should contain only one match group, which points to the actual value. -Using the Split Token Flow, only the signature is returned to the client, while the header and payload are stored server-side by Tyk. +### Use Auth Tokens -{{< img src="/img/2.10/split_token2.png" alt="Split Token Example" >}} +> Any party in possession of an auth (or bearer) token (a "bearer") can use it to get access to the associated resources (without demonstrating possession of a cryptographic key). To prevent misuse, auth tokens need to be protected from disclosure in storage and in transport. -###### Create a Virtual Endpoint in Tyk +Tyk provides bearer token access as one of the most convenient building blocks for managing security to your API. In a Tyk setup, this is called "Access Tokens" and is the default mode of any API Definition created for Tyk. -Create a virtual endpoint or API in Tyk to handle the token request. This endpoint receives the auth request, exchanges credentials with the authorization server, and returns the split token. +Bearer tokens are added to a request as a header or as a query parameter. If added as a header, they may be preceded by the word "Bearer" to indicate their type, though this is optional. -**Example script for the Virtual Endpoint:** +Traditionally these tokens are used as part of the `Authorization` header. -```javascript -function login(request, session, config) { - var credentials = request.Body.split("&") - .map(function(item, index) { - return item.split("="); - }).reduce(function(p, c) { - p[c[0]] = c[1]; - return p; - }, {}); +##### Enable auth (bearer) tokens in your API Definition with the Dashboard - var newRequest = { - "Headers": {"Content-Type": "application/x-www-form-urlencoded"}, - "Method": "POST", - "FormData": { - grant_type: credentials.grant_type, - client_id: credentials.client_id, - client_secret: credentials.client_secret - }, - "Domain": "https://keycloak-host", - "resource": "/auth/realms/tyk/protocol/openid-connect/token", - }; +To enable the use of a bearer token in your API: - var response = TykMakeHttpRequest(JSON.stringify(newRequest)); - var usableResponse = JSON.parse(response); +1. Select your API from the **System Management > APIs** menu +2. Scroll to the **Authentication** options +3. Select **Authentication Token** from the drop-down list +4. Select **Strip Authorization Data** to strip any authorization data from your API requests +5. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value +6. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. +7. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. +8. You can select to use a **client certificate**. This allows you to create dynamic keys based on certificates. - if (usableResponse.Code !== 200) { - return TykJsResponse({ - Body: usableResponse.Body, - Code: usableResponse.Code - }, session.meta_data) - } +{{< img src="/img/api-management/security/client-mtls-api-setup.png" alt="Target Details: Auth Token" >}} - var bodyObj = JSON.parse(usableResponse.Body); - var accessTokenComplete = bodyObj.access_token; - var signature = accessTokenComplete.split(".")[2]; +##### Enable auth (bearer) tokens in your API Definition with file-based - log("completeAccessToken: " + accessTokenComplete); +Tyk will by default use the bearer token method to protect your API unless it is told otherwise. - // Create key inside Tyk - createKeyInsideTyk(signature, bodyObj); +These tokens can be set as a *header, url parameter, or cookie name of a request*. A request for a resource at the API endpoint of `/api/widgets/12345` that uses access tokens will require the addition of a header field, traditionally this is the `Authorization` header. - // Override signature - bodyObj.access_token = signature; - delete bodyObj.refresh_expires_in; - delete bodyObj.refresh_token; - delete bodyObj.foo; +The name of the key can be defined as part of the API definition under the `auth` section of an API Definition file: - var responseObject = { - Body: JSON.stringify(bodyObj), - Code: usableResponse.Code - } - return TykJsResponse(responseObject, session.meta_data); -} +```{.copyWrapper} +"auth": { + "auth_header_name": "authorization", + "use_param": false, + "param_name": "", + "use_cookie": false, + "cookie_name": "" +}, ``` -This script handles the login process, splits the JWT, and stores the necessary information in Tyk. +To use URL query parameters instead of a header, set the `auth.use_param` setting in your API definition to `true`. -Once the setup is complete, you can test the Split Token Flow by making API calls using the opaque token returned by the virtual endpoint. Tyk will validate the token and reconstruct the full JWT for upstream services. +{{< note success >}} +**Note** -```bash -$ curl localhost:8080/basic-protected-api/get -H "Authorization: MEw….GJ0" -``` +Unlike headers, URL query parameters are *case sensitive*. +{{< /note >}} -This request uses the opaque token, which Tyk validates and then injects the full JWT into the Authorization header for the API request. -{{< img src="/img/2.10/split_token3.png" alt="Split Token Key Metadata" >}} +To use a cookie name instead of a header or request parameter, set the `use_cookie` parameter to `true`. Cookie names are also case sensitive. -{{< img src="/img/2.10/split_token1.png" alt="Split Token API Injection" >}} +### Auth Token Signature Validation +If you are migrating from platforms like Mashery, which use request signing, you can enable signature validation like this: +```{.copyWrapper} +... +"auth": { + "validate_signature": true, + "signature": { + "algorithm": "MasherySHA256", + "header": "X-Signature", + "secret": "secret", + "allowed_clock_skew": 2 + } +} +... +``` +`validate_signature`: boolean value to tell Tyk whether to enable signature validation or not -#### Configure your JWT Setup -Learn how to configure and manage JWT authentication in your Tyk API Gateway. +`signature.algorithm`: the algorithm you wish to validate the signature against. Currently supported + - `MasherySHA256` + - `MasheryMD5` + + `signature.header`: header key of attempted signature + + `signature.secret`: the shared secret which was used to sign the request + - Can hold a dynamic value, by referencing `$tyk_meta` or `$tyk_context` variables. + - Example: `"secret": "$tyk_meta.individual_secret"`. Which effectively means that you have created/imported the api key into Tyk, and have stored the shared secret in the field `individual_secret` of the session token's meta-data. +`signature.allowed_clock_skew`: allowed deviation in seconds between UNIX timestamp of Tyk & UNIX timestamp used to generate the signed request -##### Set Up JWT Signing Method -Select the cryptographic method to verify JWT signatures from the following options: +**Custom tokens** -- RSA public key -- HMAC shared secret -- ECDSA -- [Public JWKS URL](#enable-dynamic-public-key-rotation-using-jwks) +It is possible to provide Tyk with your own custom tokens, this can be achieved using the Tyk Gateway REST API. This is very useful if you have your own identity provider and don't want Tyk to create and manage tokens for you, and instead just mirror those tokens within Tyk to off-load access control, quotas and rate limiting from your own application. -{{< note success >}} -**Note**: Leave the field blank to configure at the key level. -{{< /note >}} +##### Enabling auth/bearer tokens with Tyk Operator -To generate an RSA keypair, use the following commands: -```bash -openssl genrsa -out key.rsa -openssl rsa -in key.rsa -pubout > key.rsa.pub -``` +Please consult the Tyk Operator supporting documentation for an example of how to [enable a bearer token]product-stack/tyk-operator/advanced-configurations/client-authentication#auth-token-bearer-token - Does this exist?? with Tyk Operator. -##### Set Up Individual JWT Secrets -Enable Tyk to validate an inbound token using stored keys: -1. Set up your token with the following fields: - ```{.json} - "jwt_data": { - "secret": "Secret" - } - ``` -2. Ensure the `kid` header field is included in the JWT for validation. - - If the `kid` header is missing, Tyk will check the `sub` field. This is not recommended but supported. +### Use Mutual TLS -The advantage of using RSA is that only the hashed ID and public key of the end user are stored, ensuring high security. +Mutual TLS (mTLS) is a robust security feature that ensures both the client and server authenticate each other using TLS certificates. This two-way authentication process provides enhanced security for API communications by verifying the identity of both parties involved in the connection. +#### Why Use Mutual TLS? -##### Configure Identity Source and Policy Field Name -Define the identity and policy applied to the JWT: +Mutual TLS is particularly valuable in environments where security is paramount, such as microservices architectures, financial services, healthcare, and any scenario requiring zero-trust security. It not only encrypts the data in transit but also ensures that the communicating parties are who they claim to be, mitigating the risks of unauthorized access and data breaches. -- **Identity Source**: Select which identity claim to use (e.g., `sub`) for rate-limiting and quota counting. -- **Policy Field Name**: Add a policy ID claim to the JWT that applies a specific security policy to the session. +#### Concepts -##### Enable Dynamic Public Key Rotation Using JWKs -Instead of a static public key, configure a public JSON Web Key Sets (JWKs) URL to dynamically verify JWT tokens: +##### How Does Mutual TLS Work? -1. Use the JWKs URL to dynamically maintain and rotate active public keys. -2. Ensure JWTs contain the `kid` header, matching the `kid` in the JWK payload for verification. +Mutual TLS operates by requiring both the client and server to present and verify TLS certificates during the handshake process. Here’s how it works: +**Client Authentication:** -{{< img src="/img/2.10/jwt_rsa_public_key.png" alt="JWKS Public Key Rotation" >}} +1. When a client attempts to connect to the server, the server requests the client’s TLS certificate. +2. The client provides its certificate, which the server verifies against a trusted Certificate Authority (CA). +**Server Authentication:** -For example, cURLing the JWKs URL returns: +1. Simultaneously, the client also verifies the server’s certificate against a trusted CA. -```{.copyWrapper} -$ curl http://keycloak_host:8081/auth/realms/master/protocol/openid-connect/certs -{ - "keys": [ - { - "kid": "St1x2ip3-wzbrvdk4yVa3-inKWdOwbkD3Nj3gpFJwYM", - "kty": "RSA", - "alg": "RS256", - "use": "sig", - "n": "k-gUvKl9-sS1u8odZ5rZdVCGTe...m2bMmw", - "e": "AQAB", - "x5c": [ - "MIICmzCCAYMCBgFvyVrRq....K9XQYuuWSV5Tqvc7mzPd/7mUIlZQ=" - ], - "x5t": "6vqj9AeFBihIS6LjwZhwFLmgJXM", - "x5t#S256": "0iEMk3Dp0XWDITtA1hd0qsQwgES-BTxrz60Vk5MjGeQ" - } - ] -} -``` +This mutual verification ensures that both parties are legitimate, securing the connection from both ends. -This is a JWKS complaint payload as it contains the "x5c" entry which contains the public key. Also, the issuer generates the ID Token or Access Token with a header that includes a "kid" that matches the one in the JWKS payload. +##### Benefits of Mutual TLS -Here's an example of a header belonging to an access token generated by the issuer above. -```{.json} -{ - "alg": "RS256", - "typ": "JWT", - "kid": "St1x2ip3-wzbrvdk4yVa3-inKWdOwbkD3Nj3gpFJwYM" -} -``` +* **Enhanced Security:** Provides two-way authentication, ensuring both the client and server are verified and trusted. +* **Data Integrity:** Protects the data exchanged between client and server by encrypting it, preventing tampering or interception. +* **Compliance:** Helps meet stringent security and compliance requirements, especially in regulated industries. -The Bearer tokens will be signed by the private key of the issuer, which in this example is our keycloak host. This bearer token can be verified by Tyk using the public key available in the above payload under "x5C". -All of this happens automatically. You just need to specify to Tyk what the JWKs url is, and then apply a "sub" and default policy in order for everything to work. See Step #3, 4, and 5 under option #1 for explanations and examples. +##### What is Mutual TLS? +{{< note success >}} +**Note** +Mutual TLS is supported from Tyk Gateway 2.4, Tyk Dashboard 1.4 and MDCB 1.4 +{{< /note >}} -##### Adjust JWT Clock Skew Configuration -Prevent token rejection due to clock skew between servers by configuring clock skew values: -- `jwt_issued_at_validation_skew` -- `jwt_expires_at_validation_skew` -- `jwt_not_before_validation_skew` +Mutual TLS is a common security practice that uses client TLS certificates to provide an additional layer of protection, allowing to cryptographically verify the client information. -All values are in seconds. The default is `0`. +In most cases when you try to access a secured HTTPS/TLS endpoint, you experience only the client-side check of the server certificate. The purpose of this check is to ensure that no fraud is involved and the data transfer between the client and server is encrypted. In fact, the TLS standard allows specifying the client certificate as well, so the server can accept connections only for clients with certificates registered with the server certificate authority, or provide additional security checks based on the information stored in the client certificate. This is what we call "Mutual TLS" - when both sides of the connection verify certificates. See the video below that gives you an introduction to mutual TLS and how it can be used to secure your APIs. +{{< youtube-seo id="UzEzjon3IAo" title="Mutual TLS Intro">}} -##### Map JWT Scopes to Policies -Assign JWT scopes to security policies to control access: - -1. Specify scope-to-policy mapping: - -```{.copyWrapper} - "jwt_scope_to_policy_mapping": { - { - "admin": "59672779fa4387000129507d", - "developer": "53222349fa4387004324324e" - }, - "jwt_scope_claim_name": "our_scope" -} -``` - - `"jwt_scope_to_policy_mapping"` provides mapping of scopes (read from claim) to actual policy ID. I.e. in this example we specify that scope "admin" will apply policy `"59672779fa4387000129507d"` to a key -- `"jwt_scope_claim_name"` identifies the JWT claim name which contains scopes. This API Spec field is optional with default value `"scope"`. This claim value could be any of the following: - - a string with space delimited list of values (by standard) - - a slice of strings - - a string with space delimited list of values inside a nested key. In this case, provide `"jwt_scope_claim_name"` in dot notation. For eg. `"scope1.scope2"`, `"scope2"` will be having the list of values nested inside `"scope1"` - - a slice of strings inside a nested key. In this case, provide `"jwt_scope_claim_name"` in dot notation. For eg. `"scope1.scope2"`, `"scope2"` will be having a slice of strings nested inside `"scope1"` - -2. Set the claim name that contains the scopes (default: `scope`): - ```{.json} - "jwt_scope_claim_name": "our_scope" - ``` - -{{< note success >}} -**Note** - -Several scopes in JWT claim will lead to have several policies applied to a key. In this case all policies should have `"per_api"` set to `true` and shouldn't have the same `API ID` in access rights. I.e. if claim with scopes contains value `"admin developer"` then two policies `"59672779fa4387000129507d"` and `"53222349fa4387004324324e"` will be applied to a key (with using our example config above). -{{< /note >}} - -##### Visualize JWT Flow in Tyk API Gateway -View the diagram below for an overview of JWT flow in Tyk: - -{{< img src="/img/diagrams/diagram_docs_JSON-web-tokens@2x.png" alt="JSON Web Tokens Flow" >}} - - -### Use Open (Keyless) Authentication - -Open or keyless authentication allows access to APIs without any authentication. This method is suitable for public APIs where access control is not required. - -#### Configure the API as Open or Keyless in Tyk - -In Tyk, configure the API to not require any authentication for access. -To implement keyless access, simply set the flag in your API Definition: - -```{.copyWrapper} -{ - ... - "use_keyless": true, - "auth": { - "auth_header_name": "" - }, - ... -} -``` -This will stop checking keys that are proxied by Tyk. - -{{< note success >}} -**Note** - -Keyless APIs cannot be selected for [Access Rights]({{< ref "getting-started/create-security-policy" >}}) in a security policy. -{{< /note >}} - -#### Request a Public Resource - -Access the API directly without any authentication tokens or credentials. - -```bash -curl -X GET \ - https://api.example.com/public-resource -``` - -**Request:** - -| Parameter | Value | -| ---------- | ------------------------------------- | -| **Method** | `GET` | -| **URL** | The API endpoint for the public resource. | - - -**Request:** - -| Parameter | Value | -| --------------- | ---------------------------------- | -| **Method** | `GET` | -| **URL** | The API endpoint for the protected resource. | -| **Authorization** | Bearer token, e.g., `Bearer ID_TOKEN`. | - - - -## Combine Authentication Methods - -### Multiple (Chained) Authentication - -As of Tyk v2.3, it is possible to have multiple authentication middleware chained together. For example, you can use an Access Token in combination with Basic Auth or with a JSON Web Token. Below is a video demonstration of this functionality: - -{{< youtube-seo id="vYGYYXcJ6Wc" title="Protect an API with Multiple Authentication Types">}} - -#### Enable Multi (Chained) Authentication with the Dashboard - -To enable multi-chained authentication in your GUI, follow these steps: - -1. Browse to the "Authentication" Section - - First, navigate to the Endpoint Designer and view the "Core Settings" tab. In this section, you can choose various authentication methods. For this setup, you will configure multiple auth providers, which works slightly differently than setting up a single auth method. - -2. Select the Multiple Auth Mechanisms Option - - Select the Use Multiple Auth Mechanisms option from the drop-down list. This will open a window that provides checkboxes for each supported auth type to be chained. Note that it is not possible to set the order of chained auth methods. - - {{< img src="/img/api-management/security/multiple-auth-choose-auth.png" alt="Select Multiple Auth" >}} - -3. Select Your Preferred Auth Methods and Base Identity Provider - - Choose the authentication methods you want to chain together and select the base identity provider. The baseline provider will be the one that provides the current request context with the session object, defining the "true" access control list, rate limit, and quota to apply to the user. - - {{< img src="/img/api-management/security/multiple-auth-methods.png" alt="Select Auth Methods" >}} - - Once these are set up, you will see the traditional configuration screens for each of the auth methods selected in the checkboxes. Configure them as you would regular authentication modes. - -#### Enable Multi (Chained) Authentication in Your API Definition - -To enable this mode, set the `base_identity_provided_by` field in your API Definitions to one of the supported chained enums below: - -* `AuthToken` -* `HMACKey` -* `BasicAuthUser` -* `JWTClaim` -* `OIDCUser` -* `OAuthKey` -* `UnsetAuth` - -The provider set here will then be the one that provides the session object that determines rate limits, ACL rules, and quotas. - -Tyk will chain the auth mechanisms as they appear in the code and will default to an auth token if none are specified. You can explicitly set auth token support by setting `use_standard_auth` to `true`. - -#### Enable Multi (Chained) Authentication with Tyk Operator - -Please consult the [Tyk Operator]({{< ref "api-management/automations#multiple-chained-auth" >}}) supporting documentation for an example of how to enable multi chained authentication with Tyk Operator. - - -## Use Python CoProcess and JSVM Plugin Authentication - -Tyk allows for custom authentication logic using Python and JavaScript Virtual Machine (JSVM) plugins. This method is useful for implementing unique authentication mechanisms that are tailored to your specific requirements. - -* See [Custom Authentication with a Python plugin]({{< ref "plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial" >}}) for a detailed example of a custom Python plugin. -* See [JavaScript Middleware]({{< ref "plugins/supported-languages/javascript-middleware" >}}) for more details on using JavaScript Middleware. - - -## Set Physical Key Expiry and Deletion -Tyk makes a clear distinction between an API authorization key expiring and being deleted from the Redis storage. - -- When a key expires, it remains in the Redis storage but is no longer valid. Consequently, it is no longer authorized to access any APIs. If a key in Redis has expired and is passed in an API request, Tyk will return `HTTP 401 Key has expired, please renew`. - - When a key is deleted from Redis, Tyk no longer knows about it, so if it is passed in an API request, Tyk will return `HTTP 400 Access to this API has been disallowed`. - -Tyk provides separate control for the expiration and deletion of keys. - -Note that where we talk about keys here, we are referring to [Session Objects]({{< ref "getting-started/key-concepts/what-is-a-session-object" >}}), also sometimes referred to as Session Tokens - -### Key expiry - -Tyk's API keys ([token session objects]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}})) have an `expires` field. This is a UNIX timestamp and, when this date/time is reached, the key will automatically expire; any subsequent API request made using the key will be rejected. - -### Key lifetime - -Tyk does not automatically delete keys when they expire. You may prefer to leave expired keys in Redis storage, so that they can be renewed (for example if a user has - inadvisedly - hard coded the key into their application). Alternatively, you may wish to delete keys to avoid cluttering up Redis storage with obsolete keys. - -You have two options for configuring the lifetime of keys when using Tyk: - -1. At the API level -2. At the Gateway level - -#### API-level key lifetime control - -You can configure Tyk to delete keys after a configurable period (lifetime) after they have been created. Simply set the `session_lifetime` field in your API Definition and keys created for that API will automatically be deleted when that period (in seconds) has passed. - -The default value for `session_lifetime` is 0, this is interpreted as an infinite lifetime which means that keys will not be deleted from Redis. - -For example, to have keys live in Redis for only 24 hours (and be deleted 24 hours after their creation) set: - -```{.json} -"session_lifetime": 86400 -``` - -{{< note success >}} -**Note** - -There is a risk, when configuring API-level lifetime, that a key will be deleted before it has expired, as `session_lifetime` is applied regardless of whether the key is active or expired. To protect against this, you can configure the [session_lifetime_respects_key_expiration]({{< ref "tyk-oss-gateway/configuration#session_lifetime_respects_key_expiration" >}}) parameter in your `tyk.conf`, so that keys that have exceeded their lifetime will not be deleted from Redis until they have expired. -{{< /note >}} - -This feature works nicely with [JWT](#use-json-web-tokens-jwt) or [OIDC](#use-openid-connect) authentication methods, as the keys are created in Redis the first time they are in use so you know when they will be removed. Be extra careful in the case of keys created by Tyk (Auth token or JWT with individual secrets) and set a long `session_lifetime`, otherwise the user might try to use the key **after** it has already been removed from Redis. - -#### Gateway-level key lifetime control - -You can set a global lifetime for all keys created in the Redis by setting [global_session_lifetime]({{< ref "tyk-oss-gateway/configuration#global_session_lifetime" >}}) in the `tyk.conf` file; this parameter is an integer value in seconds. - -To enable this global lifetime, you must also set the [force_global_session_lifetime]({{< ref "tyk-oss-gateway/configuration#force_global_session_lifetime" >}}) parameter in the `tyk.conf` file. - -#### Summary of key lifetime precedence - -The table below shows the key lifetime assigned for the different permutations of `force_global_session_lifetime` and `session_lifetime_respects_key_expiration` configuration parameters. -| `force_global_session_lifetime` | `session_lifetime_respects_key_expiration` | Assigned lifetime | -|---------------------------------|--------------------------------------------|-------------------------------------------| -| `true` | `true` | `global_session_lifetime` | -| `true` | `false` | `global_session_lifetime` | -| `false` | `true` | larger of `session_lifetime` or `expires` | -| `false` | `false` | `session_lifetime` | - -{{< note success >}} -**Note** - -It is important to remember that a value of `0` in `session_lifetime` or `global_session_lifetime` is interpreted as infinity (i.e. key will not be deleted if that control is in use) - and if a field is not set, this is treated as `0`. -
    -If you want the key to be deleted when it expires (i.e. to use the expiry configured in `expires` within the key to control deletion) then you must set a non-zero value in `session_lifetime` and configure both `session_lifetime_respects_key_expiration:true` and `force_global_session_lifetime:false`. -{{< /note >}} - - -## Enable Mutual TLS - -Mutual TLS (mTLS) is a robust security feature that ensures both the client and server authenticate each other using TLS certificates. This two-way authentication process provides enhanced security for API communications by verifying the identity of both parties involved in the connection. - -### Why Use Mutual TLS? - -Mutual TLS is particularly valuable in environments where security is paramount, such as microservices architectures, financial services, healthcare, and any scenario requiring zero-trust security. It not only encrypts the data in transit but also ensures that the communicating parties are who they claim to be, mitigating the risks of unauthorized access and data breaches. - -### Concepts - - -#### How Does Mutual TLS Work? - -Mutual TLS operates by requiring both the client and server to present and verify TLS certificates during the handshake process. Here’s how it works: - -**Client Authentication:** - -1. When a client attempts to connect to the server, the server requests the client’s TLS certificate. -2. The client provides its certificate, which the server verifies against a trusted Certificate Authority (CA). - -**Server Authentication:** - -1. Simultaneously, the client also verifies the server’s certificate against a trusted CA. - -This mutual verification ensures that both parties are legitimate, securing the connection from both ends. - -#### Benefits of Mutual TLS - -* **Enhanced Security:** Provides two-way authentication, ensuring both the client and server are verified and trusted. -* **Data Integrity:** Protects the data exchanged between client and server by encrypting it, preventing tampering or interception. -* **Compliance:** Helps meet stringent security and compliance requirements, especially in regulated industries. - - -#### What is Mutual TLS? - -{{< note success >}} -**Note** - -Mutual TLS is supported from Tyk Gateway 2.4, Tyk Dashboard 1.4 and MDCB 1.4 -{{< /note >}} - - -Mutual TLS is a common security practice that uses client TLS certificates to provide an additional layer of protection, allowing to cryptographically verify the client information. - -In most cases when you try to access a secured HTTPS/TLS endpoint, you experience only the client-side check of the server certificate. The purpose of this check is to ensure that no fraud is involved and the data transfer between the client and server is encrypted. In fact, the TLS standard allows specifying the client certificate as well, so the server can accept connections only for clients with certificates registered with the server certificate authority, or provide additional security checks based on the information stored in the client certificate. This is what we call "Mutual TLS" - when both sides of the connection verify certificates. See the video below that gives you an introduction to mutual TLS and how it can be used to secure your APIs. - -{{< youtube-seo id="UzEzjon3IAo" title="Mutual TLS Intro">}} - -#### Certificates +##### Certificates If you have had to configure an SSL server or SSH access, the following information below should be familiar to you. Let's start with certificate definition. Here is what [Wikipedia](https://en.wikipedia.org/wiki/Public_key_certificate) says: @@ -2175,7 +1658,7 @@ response). Before a certificate can be used by Tyk, it needs to be encoded into PEM format. If you are using an `openssl` command to generate certificates, it should use PEM by default. A nice bonus of the PEM format is that it allows having multiple entries inside the same file. So in cases where a certificate also requires a private key, you can just concatenate the two files together. -#### Certificate Management +##### Certificate Management Tyk provides two options to manage certificates: plain files or certificate storage with a separate API. All configuration options, which require specifying certificates, support both plain file paths or certificate IDs. You are able to mix them up, and Tyk will automatically distinguish file names from certificate IDs. @@ -2216,14 +1699,14 @@ openssl x509 -noout -fingerprint -sha256 -inform pem -in . You may notice that you can't get the raw certificate back, only its meta information. This is to ensure security. Certificates with private keys have special treatment and are encoded before storing. If a private key is found it will be encrypted with AES256 algorithm 3 using the `security.private_certificate_encoding_secret` secret, defined in `tyk.conf` file. Otherwise, the certificate will use the [secret](https://tyk.io/docs/configure/tyk-gateway-configuration-options/#a-name-secret-a-secret) value in `tyk.conf`. -##### MDCB +###### MDCB Mutual TLS configuration in an MDCB environment has specific requirements. An MDCB environment consists of a Control Plane and multiple Data Planes that, using MDCB, sync configuration. The Control Plane and Data Plane deployments usually do not share any secrets; thus a certificate with private keys encoded with secret in the Control Plane will not be accessible to Data Plane gateways. To solve this issue, you need to set `security.private_certificate_encoding_secret` in the MDCB configuration file to the same value as specified in your management Gateway configuration file. By knowing the original secret, MDCB will be able to decode private keys, and send them to client without password. Using a secure connection between Data Plane Gateways and MDCB is required in this case. See MDCB setup page for use_ssl usage. -#### Authorization +##### Authorization At the TLS level, authorization means allowing only clients who provide client certificates that are verified and trusted by the server. Tyk allows you to define a list of trusted certificates at the API level or Gateway (global) level. If you are updating API definition programmatically or via files, you need to set following the keys in your API @@ -2240,7 +1723,7 @@ Select **Strip Authorization Data** to strip any authorization data from your AP Be aware that mutual TLS authorization has special treatment because it is not "authentication" and does not provide any identifying functionality, like keys, so you need to mix it with another authentication modes options like **Auth Key** or **Keyless**. On the dashboard, you need to choose **Use multiple auth mechanism** in the **Authentication mode** drop-down, where you should select **Mutual TLS** and another option which suits your use-case. -##### Fallback to HTTP Authorization +###### Fallback to HTTP Authorization The TLS protocol has no access to the HTTP payload and works on the lower level; thus the only information we have at the TLS handshake level is the domain. In fact, even a domain is not included into a TLS handshake by default, but there is TLS extension called SNI (Server Name Indication) which allows the client to send the domain name to the TLS handshake level. @@ -2249,7 +1732,7 @@ With this in mind, the only way to make API authorization work fully at the TLS However, Tyk will gracefully fallback to a client certificate authorization at the HTTP level in cases when you want to have multiple mutual TLS protected APIs on the same domain, or you have clients that do not support the SNI extension. No additional configuration is needed. In case of such fallback, instead of getting TLS error, a client will receive 403 HTTP error. -#### Authentication +##### Authentication Tyk can be configured to guess a user authentication key based on the provided client certificate. In other words, a user does not need to provide any key, except the certificate, and Tyk will be able to identify the user, apply policies, and do the monitoring - the same as with regular Keys. ###### Using with Authorization @@ -2257,7 +1740,7 @@ Mutual TLS authentication does not require mutual TLS authorization to be turned If you want to use them both, just configure them separately. No additional knowledge is required. -##### Upstream Access +##### Upstream mTLS If your upstream API is protected with mutual TLS you can configure Tyk to send requests with the specified client certificate. You can specify one certificate per host and define a default certificate. Upstream certificates can be defined on API definition level or global level in your Gateway configuration file. Specified client certificates will be used not only for internal Tyk calls but also for HTTP calls inside your JSVM middleware. @@ -2316,11 +1799,11 @@ If you are testing using cURL, your command will look like: curl --cert client_cert.pem --key client_key.pem https://localhost:8181 ``` -### mTLS for cloud users +#### mTLS for cloud users - Cloud users can secure their upstream services with mTLS but mTLS between the client (caller of the API) and Tyk's gateway cannot be done for the time being. - Multi cloud users - since you own and manage the gateways, you can use mTLS for gateway <--> upstream as well as client <--> gateway connections. -### Client mTLS +#### Client mTLS There are two ways to set up client mTLS in Tyk: static and dynamic. Each method is suited to different use cases, as outlined below: @@ -2331,7 +1814,7 @@ There are two ways to set up client mTLS in Tyk: static and dynamic. Each method | Allow certs at the API level (one or more APIs per cert) | ✅ | ❌ | | Allow certs at an individual level (one or more APIs per cert) | ❌ | ✅ | -#### Dynamic Client mTLS +##### Dynamic Client mTLS Dynamic Client mTLS in Tyk allows you to authenticate users based solely on the provided client certificate, without the need for an additional authentication key. Tyk can identify the user, apply policies, and monitor usage just as with regular API keys. @@ -2545,244 +2028,876 @@ spec: ``` -##### FAQ +##### FAQ + +* **Why am I getting an error stating that certificates are not enabled for this API?** + + This issue can occur because client mTLS is an extension of Auth Token authentication mode. To enable this feature, ensure the API definition has `auth.use_certificate` set to `true`. + +* **Can I upload a full certificate chain when creating a key for dynamic client mTLS?** + + Yes, you can do this when manually creating a key as an Admin Dashboard user. However, through the Portal, you must upload only the public key (certificate). + +* **Can I use a root CA with client mTLS?** + + Yes, Tyk allows you to upload a root CA certificate for static mTLS authentication. This setup allows clients with certificates signed by the registered CA to be validated. + + **Key Points:** + + * The root CA certificate can be uploaded as a client certificate. + * Clients presenting certificates signed by this CA will be validated. + * Tyk traverses the certificate chain for validation. +{{< note success >}} + **Note** + Root CA certificates are compatible only with Static mTLS and not with Dynamic mTLS. +{{< /note >}} + + +#### Upstream mTLS + +If your upstream API is protected with mutual TLS (mTLS), you can configure Tyk to send requests with the specified client certificate. This ensures secure communication between Tyk and your upstream services. + +#### Key Features of Upstream mTLS + +* **Certificate Per Host:** You can specify one certificate per host and define a default certificate. +* **API-Level or Global Configuration:** Upstream certificates can be defined at the API level or globally via the Gateway configuration file. +* **JSVM Middleware Support:** Specified client certificates will be used not only for internal Tyk calls but also for HTTP calls inside your JSVM middleware. + +#### How To Set Up Upstream mTLS + +To set up upstream mTLS in your API definition, you should configure the `upstream_certificates` field in the following format: + +```yaml +{ + "upstream_certificates": { + "example.com": "" + } +} +``` + +If you want to configure this at a global level, specify it via the `security.certificates.upstream` field in your Gateway configuration file. + +#### Via Dashboard + +To configure upstream mTLS using the Tyk Dashboard: + +1. Navigate to the API Designer. +2. Go to the Advanced Options panel. +3. Find the Upstream Certificates section and attach the appropriate certificate. + + {{< img src="/img/2.10/attach_upstream_cert.png" alt="upstream_cert" >}} + +#### Via Tyk Operator using the Tyk Classic API Definition + +Tyk Operator supports configuring upstream mTLS using one of the following fields within the ApiDefinition object: + +- **upstream_certificate_refs**: Configure using certificates stored within Kubernetes secret objects. +- **upstream_certificates**: Configure using certificates stored within Tyk Dashboard's certificate store. + +##### upstream_certificate_refs + +The `upstream_certificate_refs` field can be used to configure certificates for different domains. References can be held to multiple secrets which are used for the domain mentioned in the key. Currently "*" is used as a wildcard for all the domains + +The example listed below shows that the certificate in the secret, *my-test-tls*, is used for all domains. + +```yaml +# First apply this manifest using the command +# "kubectl apply -f config/samples/httpbin_upstream_cert.yaml" +# +# The operator will try to create the ApiDefinition and will succeed but will log an error that a certificate is missing +# in the cluster for an upstream +# +# Generate your public-private key pair , for test you can use the following command to obtain one fast: +# "openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out tls.crt -keyout tls.key" +# +# Run the following command to obtain the values that must be put inside the yaml that contians the secret resource: +# "kubectl create secret tls my-test-tls --key="tls.key" --cert="tls.crt" -n default -o yaml --dry-run=client" +# +# Apply your TLS certificate using the following command: (we already have an example one in our repo) +# "kubectl apply -f config/sample/simple_tls_secret.yaml" +# +# NOTE: the upstream_certificate_refs can hold references to multiple secrets which are used for the domain +# mentioned in the key (currently "*" is used as a wildcard for all the domains) +apiVersion: tyk.tyk.io/v1alpha1 +kind: ApiDefinition +metadata: + name: httpbin +spec: + name: httpbin + use_keyless: true + upstream_certificate_refs: + "*": my-test-tls + protocol: http + active: true + proxy: + target_url: http://httpbin.org + listen_path: /httpbin + strip_listen_path: true + version_data: + default_version: Default + not_versioned: true + versions: + Default: + name: Default +``` + +A secret can be created and output in yaml format using the following command: + +```bash +kubectl create secret tls my-test-tls --key="keyfile.key" --cert="certfile.crt" -n default -o yaml --dry-run=client +kubectl apply -f path/to/your/tls_secret.yaml +``` + +##### upstream_certificates + +The `upstream_certificates` field allows certificates uploaded to the certificate store in Tyk Dashboard to be referenced in the Api Definition: + +```yaml +# Skip the concatenation and .pem file creation if you already have a certificate in the correct format + +# First generate your public-private key pair , for test use you can use the following command to obtain one fast: +# "openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out tls.crt -keyout tls.key" + +# Concatenate the above files to obtain a .pem file which we will upload using the dashboard UI +# "cat tls.crt tls.key > cert.pem" + +# Upload it to the tyk certificate store using the dashboard + +# Fill in the manifest with the certificate id (the long hash) that you see is given to it in the dashboard +# (in place of "INSERT UPLOADED CERTIFICATE NAME FROM DASHBOARD HERE") +# Optional: Change the domain from "*" to something more specific if you need to use different +# upstream certificates for different domains + +# Then apply this manifest using the command +# "kubectl apply -f config/samples/httpbin_upstream_cert_manual.yaml" + +# The operator will try create the ApiDefinition and will succeed and it will have the requested domain upstream certificate +# in the cluster for an upstream + +# NOTE: the upstream_certificate can hold multiple domain-certificateName pairs +# (currently "*" is used as a wildcard for all the domains) + +apiVersion: tyk.tyk.io/v1alpha1 +kind: ApiDefinition +metadata: + name: httpbin +spec: + name: httpbin + use_keyless: true + upstream_certificates: + "*": #INSERT UPLOADED CERTIFICATE NAME FROM DASHBOARD HERE# + protocol: http + active: true + proxy: + target_url: http://httpbin.org + listen_path: /httpbin + strip_listen_path: true + version_data: + default_version: Default + not_versioned: true + versions: + Default: + name: Default +``` + +#### Via Tyk Operator using Tyk OAS API Definition{#tyk-operator-oas} +Tyk Operator supports configuring upstream mTLS using the `mutualTLS` field in `TykOasApiDefinition` object: + +```yaml{hl_lines=["12-18"],linenos=false} +apiVersion: tyk.tyk.io/v1alpha1 + kind: TykOasApiDefinition + metadata: + name: petstore + namespace: default + spec: + tykOAS: + configmapRef: + name: petstore + namespace: default + keyName: petstore.json + mutualTLS: + enabled: true + domainToCertificateMapping: + - domain: "petstore.com" + certificateRef: petstore-domain + - domain: "petstore.co.uk" + certificateRef: petstore-uk-domain +``` + + + +#### Domain Configuration + +When specifying the domain for the upstream certificate, do **NOT** include the protocol (e.g., `https://`). Including the protocol will prevent Tyk from matching the certificates to the correct domain. + +**Incorrect:** `https://api.production.myupstream.com` + +**Correct:** `api.production.myupstream.com` + +If the request is made via a non-standard HTTP port, you need to include the port in the domain: + +**Correct:** `api.production.myupstream.com:8443` + +#### Wildcards + +You may use wildcards in combination with text to match the domain, but this only works one level deep. + +For example, if your domain is `api.production.myupstream.com`: + +**Correct:** `*.production.myupstream.com` + +**Incorrect:** `*.myupstream.com` + +#### Default Upstream Certificate + +To set a default client certificate, use `*` instead of a domain name: + +```yaml +{ + "upstream_certificates": { + "*": "" + } +} +``` + +This configuration will apply the specified certificate to all upstream requests that do not match a more specific domain. + +### Sign Requests with HMAC + +{{< note success >}} Note + +Tyk can interact with HMAC Signing in two ways. Firstly, as a client, we can validate the signature of incoming requests and map this to API access. You can also use Tyk to generate a header containing the signature of the request for use in upstream message integrity checks. For the upstream HMAC case please see [here]({{< ref "#upstream-hmac-request-signing" >}}) {{< /note >}} + +Hash-Based Message Authentication Code (HMAC) Signing is an access token method that adds another level of security by forcing the requesting client to also send along a signature that identifies the request temporally to ensure that the request is from the requesting user, using a secret key that is never broadcast over the wire. + +Tyk currently implements the latest draft of the [HMAC Request Signing standard](http://tools.ietf.org/html/draft-cavage-http-signatures-05). + +An HMAC signature is essentially some additional data sent along with a request to identify the end-user using a hashed value, in our case we encode the 'date' header of a request, the algorithm would look like: + +``` +Base64Encode(HMAC-SHA1("date: Mon, 02 Jan 2006 15:04:05 MST", secret_key)) +``` + +The full request header for an HMAC request uses the standard `Authorization` header, and uses set, stripped comma-delimited fields to identify the user, from the draft proposal: + +``` +Authorization: Signature keyId="hmac-key-1",algorithm="hmac-sha1",signature="Base64Encode(HMAC-SHA1(signing string))" +``` + +Tyk supports the following HMAC algorithms: "hmac-sha1", "hmac-sha256", "hmac-sha384", "hmac-sha512”, and reads value from algorithm header. You can limit allowed algorithms by setting `hmac_allowed_algorithms` field in API definition, like this: `"hmac_allowed_algorithms": ["hmac-sha256", "hmac-sha512"]`. + +The date format for an encoded string is: + +``` +Mon, 02 Jan 2006 15:04:05 MST +``` + +This is the standard for most browsers, but it is worth noting that requests will fail if they do not use the above format. + +When an HMAC-signed request comes into Tyk, the key is extracted from the `Authorization` header, and retrieved from Redis. If the key exists then Tyk will generate its own signature based on the requests "date" header, if this generated signature matches the signature in the `Authorization` header the request is passed. + +##### Supported headers + +Tyk API Gateway supports full header signing through the use of the `headers` HMAC signature field. This includes the request method and path using the`(request-target)` value. For body signature verification, HTTP Digest headers should be included in the request and in the header field value. + +{{< note success >}} +**Note** + +All headers should be in lowercase. +{{< /note >}} + + +##### A sample signature generation snippet + +```{.copyWrapper} +... + +refDate := "Mon, 02 Jan 2006 15:04:05 MST" + +// Prepare the request headers: +tim := time.Now().Format(refDate) +req.Header.Add("Date", tim) +req.Header.Add("X-Test-1", "hello") +req.Header.Add("X-Test-2", "world") + +// Prepare the signature to include those headers: +signatureString := "(request-target): " + "get /your/path/goes/here" +signatureString += "date: " + tim + "\n" +signatureString += "x-test-1: " + "hello" + "\n" +signatureString += "x-test-2: " + "world" + +// SHA1 Encode the signature +HmacSecret := "secret-key" +key := []byte(HmacSecret) +h := hmac.New(sha1.New, key) +h.Write([]byte(signatureString)) + +// Base64 and URL Encode the string +sigString := base64.StdEncoding.EncodeToString(h.Sum(nil)) +encodedString := url.QueryEscape(sigString) + +// Add the header +req.Header.Add("Authorization", + fmt.Sprintf("Signature keyId="9876",algorithm="hmac-sha1",headers="(request-target) date x-test-1 x-test-2",signature="%s"", encodedString)) + +... +``` + +##### Date header not allowed for legacy .Net + +Older versions of some programming frameworks do not allow the Date header to be set, which can causes problems with implementing HMAC, therefore, if Tyk detects a `x-aux-date` header, it will use this to replace the Date header. + +##### Clock Skew + +Tyk also implements the recommended clock-skew from the specification to prevent against replay attacks, a minimum lag of 300ms is allowed on either side of the date stamp, any more or less and the request will be rejected. This means that requesting machines need to be synchronised with NTP if possible. + +You can edit the length of the clock skew in the API Definition by setting the `hmac_allowed_clock_skew` value in your API definition. This value will default to 0, which deactivates clock skew checks. + +##### Additional notes + +HMAC Signing is a good way to secure an API if message reliability is paramount, it goes without saying that all requests should go via TLS/SSL to ensure that MITM attacks can be minimized. There are many ways of managing HMAC, and because of the additional encryption processing overhead requests will be marginally slower than more standard access methods. + +#### Setting up HMAC using the Dashboard + +To enable the use of HMAC Signing in your API from the Dashboard: + +1. Select your API from the **System Management > APIs** menu +2. Scroll to the **Authentication** options +3. Select **HMAC (Signed Authetication Key)** from the drop-down list +4. Configure your **HMAC Request Signing** settings. +5. Select **Strip Authorization Data** to strip any authorization data from your API requests. +6. Tyk will by default assume you are using the `Authorization` header, but you can change this by setting the **Auth Key Header** name value +7. You can select whether to use a URL query string parameter as well as a header, and what parameter to use. If this is left blank, it will use the **Auth Key Header** name value. +8. You can select whether to use a **cookie value**. If this is left blank, it will use the Header name value. + + +{{< img src="/img/2.10/hmac_auth_settings.png" alt="Target Details: HMAC" >}} + + +#### Setting up HMAC using an API Definition + +To enable HMAC on your API, first you will need to set the API definition up to use the method, this is done in the API Definition file/object: + +```{.copyWrapper} +{ + "name": "Tyk Test API", + ... + "enable_signature_checking": true, + "use_basic_auth": false, + "use_keyless": false, + "use_oauth2": false, + "auth": { + "auth_header_name": "" + }, + ... +} +``` + +Ensure that the other methods are set to false. + +#### Setting up an HMAC Session Object + +When creating a user session object, the settings should be modified to reflect that an HMAC secret needs to be generated alongside the key: + +```{.copyWrapper} +{ + ... + "hmac_enabled": true, + "hmac_string": "", + ... +} +``` + +Creating HMAC keys is the same as creating regular access tokens - by using the [Tyk Gateway API]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/authentication" >}}). Setting the `hmac_enabled` flag to `true`, Tyk will generate a secret key for the key owner (which should not be modified), but will be returned by the API so you can store and report it to your end-user. + + +#### Upstream HMAC request signing + +You can sign a request with HMAC, before sending to the upsteam target. + +This feature is implemented using [Draft 10](https://tools.ietf.org/html/draft-cavage-http-signatures-10) RFC. + +`(request-target)` and all the headers of the request will be used for generating signature string. +If the request doesn't contain a `Date` header, middleware will add one as it is required according to above draft. + +A config option `request_signing` can be added in an API Definition to enable/disable the request signing. It has following format: + +```{.json} +"request_signing": { + "is_enabled": true, + "secret": "xxxx", + "key_id": "1", + "algorithm": "hmac-sha256" +} +``` + +The following algorithms are supported: + +1. `hmac-sha1` +2. `hmac-sha256` +3. `hmac-sha384` +4. `hmac-sha512` + + + +### Custom Authentication + +#### Go Plugins + +Go Plugin Authentication allows you to implement custom authentication logic using the Go programming language. This method is useful for scenarios where you need to implement specialized authentication mechanisms that are not natively supported by Tyk. +To learn more about using Tyk Golang Plugins, go [here](/plugins/supported-languages/golang/#supported-plugin-types) + +#### Use Python CoProcess and JSVM Plugin Authentication + +Tyk allows for custom authentication logic using Python and JavaScript Virtual Machine (JSVM) plugins. This method is useful for implementing unique authentication mechanisms that are tailored to your specific requirements. + +* See [Custom Authentication with a Python plugin]({{< ref "plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial" >}}) for a detailed example of a custom Python plugin. +* See [JavaScript Middleware]({{< ref "plugins/supported-languages/javascript-middleware" >}}) for more details on using JavaScript Middleware. + +### Open (No Authentication) + +Open or keyless authentication allows access to APIs without any authentication. This method is suitable for public APIs where access control is not required. + +#### Configure the API as Open or Keyless in Tyk + +In Tyk, configure the API to not require any authentication for access. +To implement keyless access, simply set the flag in your API Definition: + +```{.copyWrapper} +{ + ... + "use_keyless": true, + "auth": { + "auth_header_name": "" + }, + ... +} +``` +This will stop checking keys that are proxied by Tyk. + +{{< note success >}} +**Note** + +Keyless APIs cannot be selected for [Access Rights]({{< ref "getting-started/create-security-policy" >}}) in a security policy. +{{< /note >}} + +#### Request a Public Resource + +Access the API directly without any authentication tokens or credentials. + +```bash +curl -X GET \ + https://api.example.com/public-resource +``` + +**Request:** + +| Parameter | Value | +| ---------- | ------------------------------------- | +| **Method** | `GET` | +| **URL** | The API endpoint for the public resource. | + + +**Request:** + +| Parameter | Value | +| --------------- | ---------------------------------- | +| **Method** | `GET` | +| **URL** | The API endpoint for the protected resource. | +| **Authorization** | Bearer token, e.g., `Bearer ID_TOKEN`. | + + +### Integrate with External Authorization Server (deprecated) + +{{< note success >}} +**Note** +Tyk has previously offered two types of OAuth authentication flow; [Tyk as the authorization server](#use-tyk-as-an-oauth-20-authorization-server) and Tyk connecting to an external *auth server* via a dedicated *External OAuth* option. The dedicated external *auth server* option was deprecated in Tyk 5.7.0. +
    + +For third-party OAuth integration we recommend using the JSON Web Token (JWT) middleware which is described [above](#use-json-web-tokens-jwt), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. +
    + +The remainder of this section is left for reference and is not maintained. +{{< /note >}} + +To call an API that is protected by OAuth, you need to have an access token from the third party IDP (it could be an opaque token or a JWT). + +For subsequent calls the access token is provided alongside the API call and needs to be validated. With JWT, Tyk can confirm the validity of the JWT with the secret provided in your config. The secret signs the JWT when created and confirms that none of its contents has changed. + +For this reason, information like the expiry date which are often set within the JWT cannot be changed after the JWT has been initially created and signed. This means you are not able to revoke a token before the expiry set in the JWT with the standard JWT flow. With OAuth you can use [OAuth introspection](https://www.rfc-editor.org/rfc/rfc7662) to overcome this. With introspection, you can validate the access token via an introspection endpoint that validates the token. + +Let’s see how external OAuth middleware is configured. + +#### OAS contract + +```yaml +externalOAuthServer: + enabled: true, + providers: # only one item in the array for now (we're going to support just one IDP config in the first iteration) + - jwt: #validate JWTs generated by 3rd party Oauth servers (like Okta) + enabled: true + signingMethod: HMAC/RSA/ECDSA # to verify signing method used in jwt + source: key # secret to verify signature + issuedAtValidationSkew: 0 + notBeforeValidationSkew: 0 + expiresAtValidationSkew: 0 + identityBaseField: # identity claimName + introspection: # array for introspection details + enabled: true/false + clientID: # for introspection request + clientSecret: # for introspection request, if empty will use oAuth.secret + url: # token introspection endpoint + cache: # Tyk will cache the introspection response when `cache.enabled` is set to `true` + enabled: true/false, + timeout: 0 # The duration (in seconds) for which Tyk will retain the introspection outcome in its cache. If the value is "0", it indicates that the introspection outcome will be stored in the cache until the token's expiration. + identityBaseField: # identity claimName +``` + +#### Tyk Classic API definition contract + +```yaml +"external_oauth": { + "enabled": true, + "providers": [ + { + "jwt": { + "enabled": false, + "signing_method": rsa/ecdsa/hmac, + "source": # jwk url/ base64 encoded static secret / base64 encoded jwk url + "identity_base_field": # identity claim name + "expires_at_validation_skew": # validation skew config for exp + "not_before_validation_skew": # validation skew config for nbf + "issued_at_validation_skew" : # validation skew config for iat + }, + "introspection": { + "enabled": true, + "url": # introspection endpoint url + "client_id": # client Id used for introspection + "client_secret": # client secret to be filled here (plain text for now, TODO: decide on a more secure mechanism) + "identity_base_field": # identity claim name + "cache": { + "enabled": true, + "timeout": # timeout in seconds + } + } + } + ] +} +``` +- `externalOAuthServer` set `enabled` to `true` to enable the middleware. +- `providers` is an array of multiple IDP configurations, with each IDP config being an element in the `providers` array. +- You can use this config to use JWT self validation using `jwt` or use introspection via `instropection` in the `providers` section . + +{{< note success >}} +**Note** + +For now, you’ll be limiting `providers` to have only one element, ie one IDP configured. +{{< /note >}} + +#### JWT + +There could be cases when you don’t need to introspect a JWT access token from a third party IDP, and instead you can just validate the JWT. This is similar to existing JWT middleware, adding it in External OAuth middleware for semantic reasons. + +- `enabled` - enables JWT validation. +- `signingMethod` - specifies the signing method used to sign the JWT. +- `source` - the secret source, it can be one of: + - a base64 encoded static secret + - a valid JWK url in plain text + - a valid JWK url in base64 encoded format +- `issuedAtValidationSkew` , `notBeforeValidationSkew`, `expiresAtValidationSkew` can be used to [configure clock skew](#adjust-jwt-clock-skew-configuration) for json web token validation. +- `identityBaseField` - the identity key name for claims. If empty it will default to `sub`. + +##### Example: Tyk OAS API definition with JWT validation enabled + +```json +"securitySchemes": { + "external_jwt": { + "enabled": true, + "header": { + "enabled": true, + "name": "Authorization" + }, + "providers": [ + { + "jwt": { + "enabled": true, + "signingMethod": "hmac", + "source": "dHlrLTEyMw==", + "identityBaseField": "sub" + } + } + ] + } +} +``` + +##### Example: Tyk Classic API definition with JWT validation enabled + +```json +"external_oauth": { + "enabled": true, + "providers": [ + { + "jwt": { + "enabled": true, + "signing_method": "hmac", + "source": "dHlrLTEyMw==", + "issued_at_validation_skew": 0, + "not_before_validation_skew": 0, + "expires_at_validation_skew": 0, + "identity_base_field": "sub" + }, + "introspection": { + "enabled": false, + "url": "", + "client_id": "", + "client_secret": "", + "identity_base_field": "", + "cache": { + "enabled": false, + "timeout": 0 + } + } + } + ] +} +``` +#### Introspection + +For cases where you need to introspect the OAuth access token, Tyk uses the information in the `provider.introspection` section of the contract. This makes a network call to the configured introspection endpoint with the provided `clientID` and `clientSecret` to introspect the access token. + +- `enabled` - enables OAuth introspection +- `clientID` - clientID used for OAuth introspection, available from IDP +- `clientSecret` - secret used to authenticate introspection call, available from IDP +- `url` - endpoint URL to make the introspection call +- `identityBaseField` - the identity key name for claims. If empty it will default to `sub`. + +##### Caching + +Introspection via a third party IdP is a network call. Sometimes it may be inefficient to call the introspection endpoint every time an API is called. Caching is the solution for this situation. Tyk caches the introspection response when `enabled` is set to `true` inside the `cache` configuration of `introspection`. Then it retrieves the value from the cache until the `timeout` value finishes. However, there is a trade-off here. When the timeout is long, it may result in accessing the upstream with a revoked access token. When it is short, the cache is not used as much resulting in more network calls. + +The recommended way to handle this balance is to never set the `timeout` value beyond the expiration time of the token, which would have been returned in the `exp` parameter of the introspection response. + +See the example introspection cache configuration: + +```yaml +"introspection": { + ... + "cache": { + "enabled": true, + "timeout": 60 // in seconds + } +} +``` +##### Example: Tyk OAS API definition external OAuth introspection enabled + +```json +"securitySchemes": { + "keycloak_oauth": { + "enabled": true, + "header": { + "enabled": true, + "name": "Authorization" + }, + "providers": [ + { + "introspection": { + "enabled": true, + "url": "http://localhost:8080/realms/tyk/protocol/openid-connect/token/introspect", + "clientId": "introspection-client", + "clientSecret": "DKyFN0WXu7IXWzR05QZOnnSnK8uAAZ3U", + "identityBaseField": "sub", + "cache": { + "enabled": true, + "timeout": 3 + } + } + } + ] + } +} +``` +##### Example: Tyk Classic API definition with external OAuth introspection enabled + +```json +"external_oauth": { + "enabled": true, + "providers": [ + { + "jwt": { + "enabled": false, + "signing_method": "", + "source": "", + "issued_at_validation_skew": 0, + "not_before_validation_skew": 0, + "expires_at_validation_skew": 0, + "identity_base_field": "" + }, + "introspection": { + "enabled": true, + "url": "http://localhost:8080/realms/tyk/protocol/openid-connect/token/introspect", + "client_id": "introspection-client", + "client_secret": "DKyFN0WXu7IXWzR05QZOnnSnK8uAAZ3U", + "identity_base_field": "sub", + "cache": { + "enabled": true, + "timeout": 3 + } + } + } + ] +} +``` + +### Integrate with OpenID Connect (deprecated) + +{{< note success >}} +**Note** +Tyk has previously offered a dedicated OpenID Connect option for client authentication, but this was not straightforward to use and was deprecated in Tyk 5.7.0. +
    -* **Why am I getting an error stating that certificates are not enabled for this API?** +For integration with a third-party OIDC provider we recommend using the JSON Web Token (JWT) middleware which is described [above](#use-json-web-tokens-jwt), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. +
    - This issue can occur because client mTLS is an extension of Auth Token authentication mode. To enable this feature, ensure the API definition has `auth.use_certificate` set to `true`. +The remainder of this section is left for reference and is not maintained. +{{< /note >}} -* **Can I upload a full certificate chain when creating a key for dynamic client mTLS?** - Yes, you can do this when manually creating a key as an Admin Dashboard user. However, through the Portal, you must upload only the public key (certificate). +[OpenID Connect](https://openid.net/developers/how-connect-works) (OIDC) builds on top of OAuth 2.0, adding authentication. You can secure your APIs on Tyk by integrating with any standards compliant OIDC provider using [JSON Web Tokens](#use-json-web-tokens-jwt) (JWTs). +JWTs offer a simple way to use the third-party Identity Provider (IdP) without needing any direct integration between the Tyk and 3rd-party systems. -* **Can I use a root CA with client mTLS?** +To integrate a 3rd party OAuth2/OIDC IdP with Tyk, all you will need to do is ensure that your IdP can issue OAuth2 JWT access tokens as opposed to opaque tokens. - Yes, Tyk allows you to upload a root CA certificate for static mTLS authentication. This setup allows clients with certificates signed by the registered CA to be validated. +The client application authenticates with the IdP which then provides an access token that is accepted by Tyk. Tyk will take care of the rest, ensuring that the rate limits and quotas of the underlying identity of the bearer are maintained across JWT token re-issues, so long as the "sub" (or whichever identity claim you chose to use) is available and consistent throughout and the policy that underpins the security clearance of the token exists too. - **Key Points:** - * The root CA certificate can be uploaded as a client certificate. - * Clients presenting certificates signed by this CA will be validated. - * Tyk traverses the certificate chain for validation. -{{< note success >}} - **Note** - Root CA certificates are compatible only with Static mTLS and not with Dynamic mTLS. -{{< /note >}} - -### Upstream mTLS -If your upstream API is protected with mutual TLS (mTLS), you can configure Tyk to send requests with the specified client certificate. This ensures secure communication between Tyk and your upstream services. -#### Key Features of Upstream mTLS +## Combine Authentication Methods -* **Certificate Per Host:** You can specify one certificate per host and define a default certificate. -* **API-Level or Global Configuration:** Upstream certificates can be defined at the API level or globally via the Gateway configuration file. -* **JSVM Middleware Support:** Specified client certificates will be used not only for internal Tyk calls but also for HTTP calls inside your JSVM middleware. +As of Tyk v2.3, it is possible to have multiple authentication middleware chained together. For example, you can use an Access Token in combination with Basic Auth or with a JSON Web Token. Below is a video demonstration of this functionality: -#### How To Set Up Upstream mTLS +{{< youtube-seo id="vYGYYXcJ6Wc" title="Protect an API with Multiple Authentication Types">}} -To set up upstream mTLS in your API definition, you should configure the `upstream_certificates` field in the following format: +### Enable Multi (Chained) Authentication with the Dashboard -```yaml -{ - "upstream_certificates": { - "example.com": "" - } -} -``` +To enable multi-chained authentication in your GUI, follow these steps: -If you want to configure this at a global level, specify it via the `security.certificates.upstream` field in your Gateway configuration file. +1. Browse to the "Authentication" Section -#### Via Dashboard + First, navigate to the Endpoint Designer and view the "Core Settings" tab. In this section, you can choose various authentication methods. For this setup, you will configure multiple auth providers, which works slightly differently than setting up a single auth method. -To configure upstream mTLS using the Tyk Dashboard: +2. Select the Multiple Auth Mechanisms Option -1. Navigate to the API Designer. -2. Go to the Advanced Options panel. -3. Find the Upstream Certificates section and attach the appropriate certificate. + Select the Use Multiple Auth Mechanisms option from the drop-down list. This will open a window that provides checkboxes for each supported auth type to be chained. Note that it is not possible to set the order of chained auth methods. - {{< img src="/img/2.10/attach_upstream_cert.png" alt="upstream_cert" >}} + {{< img src="/img/api-management/security/multiple-auth-choose-auth.png" alt="Select Multiple Auth" >}} -#### Via Tyk Operator using the Tyk Classic API Definition +3. Select Your Preferred Auth Methods and Base Identity Provider -Tyk Operator supports configuring upstream mTLS using one of the following fields within the ApiDefinition object: + Choose the authentication methods you want to chain together and select the base identity provider. The baseline provider will be the one that provides the current request context with the session object, defining the "true" access control list, rate limit, and quota to apply to the user. -- **upstream_certificate_refs**: Configure using certificates stored within Kubernetes secret objects. -- **upstream_certificates**: Configure using certificates stored within Tyk Dashboard's certificate store. + {{< img src="/img/api-management/security/multiple-auth-methods.png" alt="Select Auth Methods" >}} -##### upstream_certificate_refs + Once these are set up, you will see the traditional configuration screens for each of the auth methods selected in the checkboxes. Configure them as you would regular authentication modes. -The `upstream_certificate_refs` field can be used to configure certificates for different domains. References can be held to multiple secrets which are used for the domain mentioned in the key. Currently "*" is used as a wildcard for all the domains +### Enable Multi (Chained) Authentication in Your API Definition -The example listed below shows that the certificate in the secret, *my-test-tls*, is used for all domains. +To enable this mode, set the `base_identity_provided_by` field in your API Definitions to one of the supported chained enums below: -```yaml -# First apply this manifest using the command -# "kubectl apply -f config/samples/httpbin_upstream_cert.yaml" -# -# The operator will try to create the ApiDefinition and will succeed but will log an error that a certificate is missing -# in the cluster for an upstream -# -# Generate your public-private key pair , for test you can use the following command to obtain one fast: -# "openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out tls.crt -keyout tls.key" -# -# Run the following command to obtain the values that must be put inside the yaml that contians the secret resource: -# "kubectl create secret tls my-test-tls --key="tls.key" --cert="tls.crt" -n default -o yaml --dry-run=client" -# -# Apply your TLS certificate using the following command: (we already have an example one in our repo) -# "kubectl apply -f config/sample/simple_tls_secret.yaml" -# -# NOTE: the upstream_certificate_refs can hold references to multiple secrets which are used for the domain -# mentioned in the key (currently "*" is used as a wildcard for all the domains) -apiVersion: tyk.tyk.io/v1alpha1 -kind: ApiDefinition -metadata: - name: httpbin -spec: - name: httpbin - use_keyless: true - upstream_certificate_refs: - "*": my-test-tls - protocol: http - active: true - proxy: - target_url: http://httpbin.org - listen_path: /httpbin - strip_listen_path: true - version_data: - default_version: Default - not_versioned: true - versions: - Default: - name: Default -``` +* `AuthToken` +* `HMACKey` +* `BasicAuthUser` +* `JWTClaim` +* `OIDCUser` +* `OAuthKey` +* `UnsetAuth` -A secret can be created and output in yaml format using the following command: +The provider set here will then be the one that provides the session object that determines rate limits, ACL rules, and quotas. -```bash -kubectl create secret tls my-test-tls --key="keyfile.key" --cert="certfile.crt" -n default -o yaml --dry-run=client -kubectl apply -f path/to/your/tls_secret.yaml -``` +Tyk will chain the auth mechanisms as they appear in the code and will default to an auth token if none are specified. You can explicitly set auth token support by setting `use_standard_auth` to `true`. -##### upstream_certificates +### Enable Multi (Chained) Authentication with Tyk Operator -The `upstream_certificates` field allows certificates uploaded to the certificate store in Tyk Dashboard to be referenced in the Api Definition: +Please consult the [Tyk Operator]/product-stack/tyk-operator/advanced-configurations/client-authentication#multiple-chained-auth - ??does this exist?? supporting documentation for an example of how to enable multi chained authentication with Tyk Operator. -```yaml -# Skip the concatenation and .pem file creation if you already have a certificate in the correct format -# First generate your public-private key pair , for test use you can use the following command to obtain one fast: -# "openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out tls.crt -keyout tls.key" +## Set Physical Key Expiry and Deletion +Tyk makes a clear distinction between an API authorization key expiring and being deleted from the Redis storage. -# Concatenate the above files to obtain a .pem file which we will upload using the dashboard UI -# "cat tls.crt tls.key > cert.pem" +- When a key expires, it remains in the Redis storage but is no longer valid. Consequently, it is no longer authorized to access any APIs. If a key in Redis has expired and is passed in an API request, Tyk will return `HTTP 401 Key has expired, please renew`. + - When a key is deleted from Redis, Tyk no longer knows about it, so if it is passed in an API request, Tyk will return `HTTP 400 Access to this API has been disallowed`. -# Upload it to the tyk certificate store using the dashboard +Tyk provides separate control for the expiration and deletion of keys. -# Fill in the manifest with the certificate id (the long hash) that you see is given to it in the dashboard -# (in place of "INSERT UPLOADED CERTIFICATE NAME FROM DASHBOARD HERE") -# Optional: Change the domain from "*" to something more specific if you need to use different -# upstream certificates for different domains +Note that where we talk about keys here, we are referring to [Session Objects]({{< ref "getting-started/key-concepts/what-is-a-session-object" >}}), also sometimes referred to as Session Tokens -# Then apply this manifest using the command -# "kubectl apply -f config/samples/httpbin_upstream_cert_manual.yaml" +### Key expiry -# The operator will try create the ApiDefinition and will succeed and it will have the requested domain upstream certificate -# in the cluster for an upstream +Tyk's API keys ([token session objects]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}})) have an `expires` field. This is a UNIX timestamp and, when this date/time is reached, the key will automatically expire; any subsequent API request made using the key will be rejected. -# NOTE: the upstream_certificate can hold multiple domain-certificateName pairs -# (currently "*" is used as a wildcard for all the domains) +### Key lifetime -apiVersion: tyk.tyk.io/v1alpha1 -kind: ApiDefinition -metadata: - name: httpbin -spec: - name: httpbin - use_keyless: true - upstream_certificates: - "*": #INSERT UPLOADED CERTIFICATE NAME FROM DASHBOARD HERE# - protocol: http - active: true - proxy: - target_url: http://httpbin.org - listen_path: /httpbin - strip_listen_path: true - version_data: - default_version: Default - not_versioned: true - versions: - Default: - name: Default -``` +Tyk does not automatically delete keys when they expire. You may prefer to leave expired keys in Redis storage, so that they can be renewed (for example if a user has - inadvisedly - hard coded the key into their application). Alternatively, you may wish to delete keys to avoid cluttering up Redis storage with obsolete keys. -#### Via Tyk Operator using Tyk OAS API Definition{#tyk-operator-oas} -Tyk Operator supports configuring upstream mTLS using the `mutualTLS` field in `TykOasApiDefinition` object: +You have two options for configuring the lifetime of keys when using Tyk: -```yaml{hl_lines=["12-18"],linenos=false} -apiVersion: tyk.tyk.io/v1alpha1 - kind: TykOasApiDefinition - metadata: - name: petstore - namespace: default - spec: - tykOAS: - configmapRef: - name: petstore - namespace: default - keyName: petstore.json - mutualTLS: - enabled: true - domainToCertificateMapping: - - domain: "petstore.com" - certificateRef: petstore-domain - - domain: "petstore.co.uk" - certificateRef: petstore-uk-domain -``` +1. At the API level +2. At the Gateway level +#### API-level key lifetime control +You can configure Tyk to delete keys after a configurable period (lifetime) after they have been created. Simply set the `session_lifetime` field in your API Definition and keys created for that API will automatically be deleted when that period (in seconds) has passed. -#### Domain Configuration +The default value for `session_lifetime` is 0, this is interpreted as an infinite lifetime which means that keys will not be deleted from Redis. -When specifying the domain for the upstream certificate, do **NOT** include the protocol (e.g., `https://`). Including the protocol will prevent Tyk from matching the certificates to the correct domain. +For example, to have keys live in Redis for only 24 hours (and be deleted 24 hours after their creation) set: -**Incorrect:** `https://api.production.myupstream.com` +```{.json} +"session_lifetime": 86400 +``` -**Correct:** `api.production.myupstream.com` +{{< note success >}} +**Note** -If the request is made via a non-standard HTTP port, you need to include the port in the domain: +There is a risk, when configuring API-level lifetime, that a key will be deleted before it has expired, as `session_lifetime` is applied regardless of whether the key is active or expired. To protect against this, you can configure the [session_lifetime_respects_key_expiration]({{< ref "tyk-oss-gateway/configuration#session_lifetime_respects_key_expiration" >}}) parameter in your `tyk.conf`, so that keys that have exceeded their lifetime will not be deleted from Redis until they have expired. +{{< /note >}} -**Correct:** `api.production.myupstream.com:8443` +This feature works nicely with [JWT](#use-json-web-tokens-jwt) or [OIDC](#integrate-with-openid-connect-deprecated) authentication methods, as the keys are created in Redis the first time they are in use so you know when they will be removed. Be extra careful in the case of keys created by Tyk (Auth token or JWT with individual secrets) and set a long `session_lifetime`, otherwise the user might try to use the key **after** it has already been removed from Redis. -#### Wildcards +#### Gateway-level key lifetime control -You may use wildcards in combination with text to match the domain, but this only works one level deep. +You can set a global lifetime for all keys created in the Redis by setting [global_session_lifetime]({{< ref "tyk-oss-gateway/configuration#global_session_lifetime" >}}) in the `tyk.conf` file; this parameter is an integer value in seconds. -For example, if your domain is `api.production.myupstream.com`: +To enable this global lifetime, you must also set the [force_global_session_lifetime]({{< ref "tyk-oss-gateway/configuration#force_global_session_lifetime" >}}) parameter in the `tyk.conf` file. -**Correct:** `*.production.myupstream.com` +#### Summary of key lifetime precedence -**Incorrect:** `*.myupstream.com` +The table below shows the key lifetime assigned for the different permutations of `force_global_session_lifetime` and `session_lifetime_respects_key_expiration` configuration parameters. +| `force_global_session_lifetime` | `session_lifetime_respects_key_expiration` | Assigned lifetime | +|---------------------------------|--------------------------------------------|-------------------------------------------| +| `true` | `true` | `global_session_lifetime` | +| `true` | `false` | `global_session_lifetime` | +| `false` | `true` | larger of `session_lifetime` or `expires` | +| `false` | `false` | `session_lifetime` | -#### Default Upstream Certificate +{{< note success >}} +**Note** -To set a default client certificate, use `*` instead of a domain name: +It is important to remember that a value of `0` in `session_lifetime` or `global_session_lifetime` is interpreted as infinity (i.e. key will not be deleted if that control is in use) - and if a field is not set, this is treated as `0`. +
    +If you want the key to be deleted when it expires (i.e. to use the expiry configured in `expires` within the key to control deletion) then you must set a non-zero value in `session_lifetime` and configure both `session_lifetime_respects_key_expiration:true` and `force_global_session_lifetime:false`. +{{< /note >}} -```yaml -{ - "upstream_certificates": { - "*": "" - } -} -``` -This configuration will apply the specified certificate to all upstream requests that do not match a more specific domain. ## Conclusion Securing your APIs is a foundational step toward managing data integrity and access control effectively. Now that you've configured authentication and authorization, the next steps in your API journey with Tyk should involve: -Defining Access Policies: Use Tyk’s policies to refine API access controls, rate limits, and quotas. This lets you align your security model with business needs and enhance user experience through granular permissions. You can learn more about policies [here]({{< ref "basic-config-and-security/security/security-policies" >}}). +Defining Access Policies: Use Tyk’s policies to refine API access controls, rate limits, and quotas. This lets you align your security model with business needs and enhance user experience through granular permissions. You can learn more about policies [here](/basic-config-and-security/security/security-policies/). -Exploring API Analytics: Leverage Tyk’s analytics to monitor access patterns, track usage, and gain insights into potential security risks or high-demand endpoints. Understanding usage data can help in optimizing API performance and enhancing security measures. You can learn more about analytics [here]({{< ref"tyk-dashboard-analytics" >}}). \ No newline at end of file +Exploring API Analytics: Leverage Tyk’s analytics to monitor access patterns, track usage, and gain insights into potential security risks or high-demand endpoints. Understanding usage data can help in optimizing API performance and enhancing security measures. You can learn more about analytics [here](/tyk-dashboard-analytics/). \ No newline at end of file diff --git a/tyk-docs/content/api-management/security-best-practices.md b/tyk-docs/content/api-management/security-best-practices.md index fe4204fbd4..84c62cc9f5 100644 --- a/tyk-docs/content/api-management/security-best-practices.md +++ b/tyk-docs/content/api-management/security-best-practices.md @@ -42,8 +42,8 @@ It is the responsibility of the API to handle this form of attack since it can a Authentication is a vital aspect of API security. Failure to do so, as noted by OWASP, leads to *Broken Authentication* posing a significant risk to both API providers and data. Tyk provides the following features and authentication mechanisms: -- Prioritize secure methods, like [mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}), over [basic authentication]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}) wherever feasible. -- API owners can integrate external Identity Providers (IdPs) supporting methods like [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}), [OAuth 2.0]({{< ref "/api-management/authentication-authorization#use-authorization-code-grant" >}}) or [JSON Web Tokens]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). +- Prioritize secure methods, like [mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}), over [basic authentication]({{< ref "/api-management/client-authentication#use-basic-authentication" >}}) wherever feasible. +- API owners can integrate external Identity Providers (IdPs) supporting methods like [OpenID Connect]({{< ref "/api-management/client-authentication#integrate-with-openid-connect-deprecated" >}}), [OAuth 2.0]({{< ref "/api-management/client-authentication#using-the-authorization-code-grant" >}}) or [JSON Web Tokens]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}). - [Single Sign-On]({{< ref "advanced-configuration/integrate/sso" >}}) can be used for a centralized and trusted authentication source. API operators can choose from common authentication methods such as OAuth 2.0, LDAP, and SAML. - [Dynamic Client Registration]({{< ref "tyk-developer-portal/tyk-portal-classic/dynamic-client-registration#oauth-20-dynamic-client-registration-protocol-dcr" >}}), enables third-party authorization servers to issue client credentials via the Tyk Developer Portal. This streamlines Identity Management, eliminating the need to manage credentials across multiple systems. - Tyk's default authentication setup disallows credentials in URLs, reducing the risk of inadvertent exposure through backend logs. @@ -109,7 +109,7 @@ Tyk offers several mechanisms to help protect an API from Security Misconfigurat - Use [response header manipulation]({{< ref "advanced-configuration/transform-traffic/response-headers" >}}) to remove or modify API sensitive information. - Use [response body manipulation]({{< ref "advanced-configuration/transform-traffic/response-body" >}}) to remove or modify parts containing sensitive information. - [TLS]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) to ensure that clients use the right service and encrypt traffic. -- [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) with both the clients and API to ensure that callers with explicitly allowed client certificates can connect to the endpoints. +- [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) with both the clients and API to ensure that callers with explicitly allowed client certificates can connect to the endpoints. - [Error Templates]({{< ref "advanced-configuration/error-templates" >}}) can be used to return a response body based on status code and content type. This can help minimize the implementation details returned to the client. - [CORS functionality]({{< ref "tyk-apis/tyk-gateway-api/api-definition-objects/cors" >}}) allows the Tyk Gateway to limit API access to particular browser-based consumers. - [Policy Path-Based Permissions]({{< ref "security/security-policies/secure-apis-method-path" >}}) and the [allowlist]({{< ref "product-stack/tyk-gateway/middleware/allow-list-tyk-oas#configuring-the-allow-list-in-the-tyk-oas-api-definition" >}}) plugin can be used to prevent clients from accessing API endpoints using non-authorized HTTP methods. For example, blocking the use of the DELETE method on an endpoint which should only accept GET requests. @@ -155,7 +155,7 @@ Authentication is the process of identifying API clients. It’s a broad topic, **Implement Appropriate Authentication** -Choose a suitable authentication approach based on the risk profile of the API. Is it publicly accessible or internal? Does it require user interaction or is it machine to machine? How sensitive is the data and functionality provided by the API? Simplistic approaches, such as [Bearer Tokens]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}), can work for low risk, basic APIs, but for higher risk or more sophisticated APIs, it may be more appropriate to use a standards-based approach such as [OAuth 2.0]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) or [OpenID Connect]({{< ref "/api-management/authentication-authorization#use-openid-connect" >}}). Furthermore, using an [external identity provider]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) can deliver additional benefits, such as [single sign-on]({{< ref "advanced-configuration/integrate/sso" >}}), as well as multi-factor authentication approaches such as [biometric verification](https://www.okta.com/identity-101/biometrics-secure-authentication). +Choose a suitable authentication approach based on the risk profile of the API. Is it publicly accessible or internal? Does it require user interaction or is it machine to machine? How sensitive is the data and functionality provided by the API? Simplistic approaches, such as [Bearer Tokens]({{< ref "/api-management/client-authentication#use-auth-tokens" >}}), can work for low risk, basic APIs, but for higher risk or more sophisticated APIs, it may be more appropriate to use a standards-based approach such as [OAuth 2.0]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) or [OpenID Connect]({{< ref "/api-management/client-authentication#integrate-with-openid-connect-deprecated" >}}). Furthermore, using an [external identity provider]({{< ref "/api-management/client-authentication#integrate-with-external-authorization-server-deprecated" >}}) can deliver additional benefits, such as [single sign-on]({{< ref "advanced-configuration/integrate/sso" >}}), as well as multi-factor authentication approaches such as [biometric verification](https://www.okta.com/identity-101/biometrics-secure-authentication). **Handle Data Securely** @@ -319,7 +319,7 @@ Modern APIs are often backed by large technology stacks composed of numerous com **Secure Connections** -Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) where possible. Most importantly, on inbound connections to the gateway and outbound connection from the gateway to the upstream API and other services. TLS can also be used as a form of authentication, using [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). +Use [transport layer security]({{< ref "basic-config-and-security/security/tls-and-ssl" >}}) where possible. Most importantly, on inbound connections to the gateway and outbound connection from the gateway to the upstream API and other services. TLS can also be used as a form of authentication, using [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}). **Limit Functionality** @@ -349,7 +349,7 @@ APIs need to be managed and governed just like any other resource, otherwise org **Restrict Version Availability**: Enforce the expiry of [API versions]({{< ref "getting-started/key-concepts/versioning" >}}) that are planned for deprecation, by setting a sunset date, beyond which they will not be accessible. -**Enforce Key Expiry**: In many situations it’s best to issue API keys that have a short, finite lifetime, especially when serving anonymous, external consumers. Set [expiry dates]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) for API keys, or use ephemeral credentials with complementary authentication techniques that support key renewal, such as [OAuth 2.0 refresh tokens]({{< ref "/api-management/authentication-authorization#use-refresh-token-grant" >}}) and [dynamic client registration]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration" >}}). Then, should an API key fall into the wrong hands, there’s a chance that it has already expired. +**Enforce Key Expiry**: In many situations it’s best to issue API keys that have a short, finite lifetime, especially when serving anonymous, external consumers. Set [expiry dates]({{< ref "basic-config-and-security/control-limit-traffic/key-expiry" >}}) for API keys, or use ephemeral credentials with complementary authentication techniques that support key renewal, such as [OAuth 2.0 refresh tokens]({{< ref "/api-management/client-authentication#using-refresh-tokens" >}}) and [dynamic client registration]({{< ref "tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration" >}}). Then, should an API key fall into the wrong hands, there’s a chance that it has already expired. **Use Standardized Specifications**: Use the [OpenAPI Specification](https://en.wikipedia.org/wiki/OpenAPI_Specification) standard to design APIs. These specification documents act as a source of truth that can generate [API configuration]({{< ref "getting-started/using-oas-definitions/import-an-oas-api" >}}) and [portal documentation]({{< ref "tyk-apis/tyk-portal-api/portal-documentation#create-documentation" >}}). @@ -379,7 +379,7 @@ Tyk supports TLS connections and Mutual TLS. All TLS connections also support HT **Trusted Certificates** -As part of using Mutual TLS, you can create a list of [trusted certificates]({{< ref "/api-management/authentication-authorization#how-does-mutual-tls-work" >}}). +As part of using Mutual TLS, you can create a list of [trusted certificates]({{< ref "/api-management/client-authentication#how-does-mutual-tls-work" >}}). **Certificate Pinning** @@ -397,7 +397,7 @@ Tyk supports various ways to secure your APIs, including: * OAuth 2.0 * OpenID Connect -See [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details. +See [Authentication and Authorization]({{< ref "/api-management/client-authentication" >}}) for more details. **Security Policies** diff --git a/tyk-docs/content/api-management/upstream-authentication.md b/tyk-docs/content/api-management/upstream-authentication.md index 978bfef28a..66c46802e2 100644 --- a/tyk-docs/content/api-management/upstream-authentication.md +++ b/tyk-docs/content/api-management/upstream-authentication.md @@ -9,16 +9,19 @@ tags: - Basic Auth description: Authenticating Tyk Gateway with upstream services date: "2024-11-18" + --- -Tyk Gateway sits between your clients and your services, securely routing requests and responses. For each API proxy that you expose on Tyk, you can configure a range of different methods that clients must use to identify (authenticate) themselves to Tyk Gateway. These are described in detail in the [Client Authentication]({{< ref "api-management/authentication-authorization" >}}) section. +## Introduction + +Tyk Gateway sits between your clients and your services, securely routing requests and responses. For each API proxy that you expose on Tyk, you can configure a range of different methods that clients must use to identify (authenticate) themselves to Tyk Gateway. These are described in detail in the [Client Authentication]({{< ref "api-management/client-authentication" >}}) section. In the same way as you use Client Authentication to securely confirm the identity of the API clients, your upstream services probably need to securely confirm the identity of their client - namely Tyk. This is where Tyk's flexible **Upstream Authentication** capability comes in. When using Tyk, you can choose from a range of authentication methods for each upstream API: -- [Mutual TLS]({{< ref "api-management/authentication-authorization#upstream-mtls" >}}) +- [Mutual TLS]({{< ref "api-management/client-authentication#upstream-mtls" >}}) - [Token-based authentication]({{< ref "#token-based-authentication" >}}) -- [Request signing using HMAC]({{< ref "api-management/authentication-authorization#upstream-hmac-request-signing" >}}) +- [Request signing using HMAC]({{< ref "api-management/client-authentication#upstream-hmac-request-signing" >}}) - [Basic Authentication](#basic-authentication) - [OAuth 2.0](#upstream-oauth-20) - [OAuth 2.0 Client Credentials](#oauth-client-credentials) @@ -48,7 +51,7 @@ Token-based authentication (also referred to as Auth Token) is a method whereby The server determines how the key should be provided - typically in a request header, cookie or query parameter. -Tyk supports [Auth Token]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to generate access *keys* for an Auth Token protected API as explained in the [documentation]({{< ref "api-management/authentication-authorization#enable-bearer-tokens-in-your-api-definition-with-the-dashboard" >}}). The client must then provide the *key* in the appropriate parameter for each request. +Tyk supports [Auth Token]({{< ref "api-management/client-authentication#use-auth-tokens" >}}) as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to generate access *keys* for an Auth Token protected API as explained in the [documentation]({{< ref "api-management/client-authentication#enable-auth-bearer-tokens-in-your-api-definition-with-the-dashboard" >}}). The client must then provide the *key* in the appropriate parameter for each request. If your **upstream service** is protected using Auth Token then similarly, Tyk will need to provide a token, issued by the upstream, in the request. @@ -77,7 +80,7 @@ An API request made using Basic Authentication will have an `Authorization` head The `` are a base64 encoded concatenation of a client username and password, joined by a single colon `:`. -Tyk supports Basic Authentication as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to create Basic Auth users, as explained in the [documentation]({{< ref "api-management/authentication-authorization#protect-your-api-with-basic-authentication" >}}). +Tyk supports Basic Authentication as a method for authenticating **clients** with the **Gateway** - you can use Tyk Gateway or Dashboard to create Basic Auth users, as explained in the [documentation]({{< ref "api-management/client-authentication#protect-your-api-with-basic-authentication" >}}). If your **upstream service** is protected using Basic Authentication then similarly, Tyk will need to provide user credentials, registered with the upstream, in the request. @@ -192,7 +195,7 @@ The Authentication Server (auth server) has the concept of an OAuth Client - thi The auth server is often managed by a trusted third party Identity Provider (IdP) such as Okta or Auth0. -Tyk supports OAuth 2.0 as a method for authenticating **clients** with the **Gateway** - you can use Tyk's own auth server functionality via the [Tyk OAuth 2.0]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) auth method or obtain the access token via a third party auth server and use the [JWT Auth]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. +Tyk supports OAuth 2.0 as a method for authenticating **clients** with the **Gateway** - you can use Tyk's own auth server functionality via the [Tyk OAuth 2.0]({{< ref "api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) auth method or obtain the access token via a third party auth server and use the [JWT Auth]({{< ref "api-management/client-authentication#use-json-web-tokens-jwt" >}}) method. If your **upstream service** is protected using OAuth 2.0 then similarly, Tyk will need to obtain a valid access token to provide in the request to the upstream. diff --git a/tyk-docs/content/basic-config-and-security/control-limit-traffic/rate-limiting.md b/tyk-docs/content/basic-config-and-security/control-limit-traffic/rate-limiting.md index 597483ec9d..b1013c1232 100755 --- a/tyk-docs/content/basic-config-and-security/control-limit-traffic/rate-limiting.md +++ b/tyk-docs/content/basic-config-and-security/control-limit-traffic/rate-limiting.md @@ -42,7 +42,7 @@ If you want to restrict an API client to a certain rate of requests to your APIs {{< note success >}} **Note** - It is assumed that the APIs being protected with a rate limit are using our [Authentication token]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}) Authentication mode and have policies already created +It is assumed that the APIs being protected with a rate limit are using the [auth token]({{< ref "/api-management/client-authentication#use-auth-tokens" >}}) client authentication method and policies have already been created. {{< /note >}} You can configure this rate limit from the API Designer in Tyk Dashboard as follows: @@ -59,7 +59,7 @@ If you want to restrict API clients to a certain rate of requests for a specific {{< note success >}} **Note** - It is assumed that the APIs being protected with a rate limit are using our [Authentication token]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}) Authentication mode and have policies already created +It is assumed that the APIs being protected with a rate limit are using the [auth token]({{< ref "/api-management/client-authentication#use-auth-tokens" >}}) client authentication method and policies have already been created. {{< /note >}} You can configure this rate limit from the API Designer in Tyk Dashboard as follows: diff --git a/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md b/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md index 10f10cf2db..9d673a4a51 100644 --- a/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md +++ b/tyk-docs/content/basic-config-and-security/security/authentication-authorization/ext-oauth-middleware.md @@ -12,7 +12,7 @@ weight: 7 {{< note success >}} **Note** -We've deprecated Tyk's dedicated External OAuth middleware in Tyk 5.7.0 to simplify configurations and avoid redundancy. For third-party OAuth integration, please switch to Tyk’s [JSON Web Tokens (JWT)]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. +We've deprecated Tyk's dedicated External OAuth middleware in Tyk 5.7.0 to simplify configurations and avoid redundancy. For third-party OAuth integration, please switch to Tyk’s [JSON Web Tokens (JWT)]({{< ref "api-management/client-authentication#use-json-web-tokens-jwt" >}}), which offers the same functionality with a more streamlined setup and reduced risk of misconfiguration. {{< /note >}} @@ -102,7 +102,7 @@ There could be cases when you don’t need to introspect a JWT access token from - a base64 encoded static secret - a valid JWK url in plain text - a valid JWK url in base64 encoded format -- `issuedAtValidationSkew` , `notBeforeValidationSkew`, `expiresAtValidationSkew` can be used to [configure clock skew]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) for json web token validation. +- `issuedAtValidationSkew` , `notBeforeValidationSkew`, `expiresAtValidationSkew` can be used to [configure clock skew]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}) for json web token validation. - `identityBaseField` - the identity key name for claims. If empty it will default to `sub`. ### Example: Tyk OAS API definition with JWT validation enabled diff --git a/tyk-docs/content/developer-support/release-notes/archived.md b/tyk-docs/content/developer-support/release-notes/archived.md index e140e25040..cfb912e1af 100644 --- a/tyk-docs/content/developer-support/release-notes/archived.md +++ b/tyk-docs/content/developer-support/release-notes/archived.md @@ -66,7 +66,7 @@ Other changes: Now you can set granular permissions on per user basis, by injecting permissions to the "scope" claim of a JSON Web Token. To make it work you need to provide mapping between the scope and policy ID, and thanks to enchanced policy merging capabilities mentioned above, Tyk will read the scope value from the JWT and will generate dynamic access rules. Your JWT scopes can look like `"users:read companies:write"` or similar, it is up to your imagination. OpenID supports it as well, but at the moment only if your OIDC provider can generate ID tokens in JWT format (which is very common this days). -See our [JWT Scope docs]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) for more details. +See our [JWT Scope docs]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}) for more details. ### Go plugins @@ -912,7 +912,7 @@ Here are the packages and their versions we are releasing today: Tyk Gateway v2. #### Mutual TLS -A major feature of this release is the implementation of Mutual TLS. Now you can protect your APIs by allow listing certificates, idenitfy users based on them, and increase security between Tyk and upstream API. For details, see [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}). +A major feature of this release is the implementation of Mutual TLS. Now you can protect your APIs by allow listing certificates, idenitfy users based on them, and increase security between Tyk and upstream API. For details, see [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}). #### Extended use of Multiple Policies @@ -974,7 +974,7 @@ More SSO functionality is something that a lot of our customers have been asking ### Tyk Gateway v2.4.0 #### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) +[Docs]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) #### Global API rate limits [Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) @@ -1059,7 +1059,7 @@ This was very resource consuming and unstable feature. We recommend using load b ### Tyk Dashboard v1.4.0 #### Mutual TLS support -[Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) +[Docs]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) #### Global API rate limits [Docs]({{< ref "basic-config-and-security/control-limit-traffic/rate-limiting" >}}) @@ -1163,7 +1163,7 @@ This is a UI only fix, it is still allowable via the API (which is OK). See https://tyk.io/docs/configure/tyk-pump-configuration/ for a sample pump.conf file. ### MDCB v1.4.0 -Added support for Mutual TLS, mentioned by Gateway and Dashboard above. See [Docs]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) +Added support for Mutual TLS, mentioned by Gateway and Dashboard above. See [Docs]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) Also fixed bug when Mongo connections became growing though the roof if client with wrong credentials tries to connect. diff --git a/tyk-docs/content/developer-support/release-notes/dashboard.md b/tyk-docs/content/developer-support/release-notes/dashboard.md index c7f2f4dd7f..01c8a053f2 100644 --- a/tyk-docs/content/developer-support/release-notes/dashboard.md +++ b/tyk-docs/content/developer-support/release-notes/dashboard.md @@ -93,7 +93,7 @@ An example is given below for illustrative purposes only. Tested Versions and Co #### Deprecations -In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/client-authentication#integrate-with-openid-connect-deprecated" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/client-authentication#use-json-web-tokens-jwt" >}}). Additionally, SQLite has reached its End of Life in this release, enabling a fully static, CGO-free Tyk Dashboard optimised for RHEL8. Sqlite was previously recommended only to be used in basic proofs of concept. Now, for such scenarios and for production, we recommend migrating to PostgreSQL or MongoDB for better scalability and support. -In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). +In 5.7.0, we have deprecated the dedicated [External OAuth]({{< ref "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware" >}}) (Tyk Classic: `external_oauth`, Tyk OAS: `server.authentication.securitySchemes.externalOAuth`) and [OpenID Connect]({{< ref "api-management/client-authentication#integrate-with-openid-connect-deprecated" >}}) (Tyk Classic: `auth_configs.oidc`, Tyk OAS: `server.authentication.oidc`) authentication methods. We advise users to switch to [JWT Authentication]({{< ref "api-management/client-authentication#use-json-web-tokens-jwt" >}}). #### Upgrade instructions {#upgrade-5.7.0} @@ -814,7 +814,7 @@ Now configure rate limits at the endpoint level for both [Tyk OAS]({{< ref "prod ##### Root CA Support for Client Certificates -Simplify certificate management with support for root Certificate Authority (CA) certificates, enabling clients to authenticate using certificates signed by the [configured root CA]({{< ref "/api-management/authentication-authorization#faq" >}}). +Simplify certificate management with support for root Certificate Authority (CA) certificates, enabling clients to authenticate using certificates signed by the [configured root CA]({{< ref "/api-management/client-authentication#faq" >}}). ##### Optimised AST Document Handling @@ -1385,7 +1385,7 @@ ongoing support of third-party dependencies they install, as their status may ha #### Deprecations -This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) and [OpenID Connect]({{< ref "api-management/authentication-authorization#use-openid-connect" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. +This is an advanced notice that the dedicated External OAuth, OpenID Connect (OIDC) authentication options, and SQLite support will be deprecated starting in version 5.7.0. We recommend that users of the [External OAuth]({{< ref "/api-management/client-authentication#integrate-with-external-authorization-server-deprecated" >}}) and [OpenID Connect]({{< ref "/api-management/client-authentication#integrate-with-openid-connect-deprecated" >}}) methods migrate to Tyk's dedicated [JWT Auth]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}) method. Please review your API configurations, as the Gateway logs will provide notifications for any APIs utilizing these methods. #### Upgrade Instructions @@ -3423,7 +3423,7 @@ Fixed a potential race condition where the *DRL Manager* was not properly protec
    Performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API -Fixed a performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API. The token is now validated against [JWKS or the public key]({{}}) in the API Definition. +Fixed a performance issue encountered when Tyk Gateway retrieves a key via MDCB for a JWT API. The token is now validated against [JWKS or the public key]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}) in the API Definition.
  1. @@ -4321,7 +4321,7 @@ Does your Tyk OAS API Definition define examples or a schema for your path respo If you’re using a 3rd party IDP to generate tokens for your OAuth applications, Tyk can now validate the generated tokens by either performing JWT validation or by communicating with the authorization server and executing token introspection. -This can be achieved by configuring the new External OAuth authentication mechanism. Find out more here [External OAuth Integration]({{< ref "/api-management/authentication-authorization#integrate-external-oauth-middleware" >}}) +This can be achieved by configuring the new External OAuth authentication mechanism. Find out more here [External OAuth Integration]({{< ref "/api-management/client-authentication#integrate-with-external-authorization-server-deprecated" >}}) ##### Updated the Tyk Gateway version of Golang, to 1.16. diff --git a/tyk-docs/content/frequently-asked-questions/how-to-connect-to-documentdb.md b/tyk-docs/content/frequently-asked-questions/how-to-connect-to-documentdb.md index 28798fd3d2..4a7d629b3f 100644 --- a/tyk-docs/content/frequently-asked-questions/how-to-connect-to-documentdb.md +++ b/tyk-docs/content/frequently-asked-questions/how-to-connect-to-documentdb.md @@ -9,7 +9,8 @@ weight: 0 As AWS DocumentDB runs with TLS enabled, we require a way to run it without disabling the TLS verification. DocumentDB uses self-signed certs for verification, and provides a bundle with root certificates for this purpose, so we need a way to load this bundle. -Additionally DocumentDB can't be exposed to the local machine outside of the Amazon Virtual Private Cloud (VPC), which means that even if verification is turned on, it will always fail since if we use a SSH tunnel or a similar method, the domain will differ from the original. Also, it can have [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) enabled. + +Additionally DocumentDB can't be exposed to the local machine outside of the Amazon Virtual Private Cloud (VPC), which means that even if verification is turned on, it will always fail since if we use a SSH tunnel or a similar method, the domain will differ from the original. Also, it can have [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) enabled. So, in order to support it, we provide the following variables for both our [Tyk Analytics Dashboard]({{< ref "tyk-dashboard/configuration" >}}) and [Tyk Pump]({{< ref "tyk-pump/configuration" >}}): diff --git a/tyk-docs/content/getting-started/configure-first-api.md b/tyk-docs/content/getting-started/configure-first-api.md index 4d7dca0d30..e8b23f5a8f 100644 --- a/tyk-docs/content/getting-started/configure-first-api.md +++ b/tyk-docs/content/getting-started/configure-first-api.md @@ -172,6 +172,6 @@ With your API live, monitor its traffic and analyze performance: ## Next Steps -Congratulations! You've successfully created, secured, and deployed your first API in Tyk Cloud. Next, explore more advanced features like [rate-limiting]({{< ref "getting-started/key-concepts/rate-limiting" >}}) or [OAuth2]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}). +Congratulations! You've successfully created, secured, and deployed your first API in Tyk Cloud. Next, explore more advanced features such as adding [rate limiting]({{< ref "getting-started/key-concepts/rate-limiting" >}}) to protect your API from abuse. Explore more features in your [dashboard]({{< ref "getting-started/using-tyk-dashboard" >}}) to optimize and scale your API offerings. \ No newline at end of file diff --git a/tyk-docs/content/getting-started/key-concepts/authentication.md b/tyk-docs/content/getting-started/key-concepts/authentication.md index f6912e53c5..e29a3a623f 100644 --- a/tyk-docs/content/getting-started/key-concepts/authentication.md +++ b/tyk-docs/content/getting-started/key-concepts/authentication.md @@ -142,7 +142,7 @@ The basic idea here is that you can create a key based on a provided certificate ### Basic Authentication -Having the `http` type as the `securityScheme` defined in OAS API Definition, with the schema field set to basic, means that the *Tyk Gateway* uses basic authentication as the protection mechanism. It expects an access key in the same way as any other access method. For more information see the [Basic Authentication documentation]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}). +Having the `http` type as the `securityScheme` defined in OAS API Definition, with the schema field set to basic, means that the *Tyk Gateway* uses basic authentication as the protection mechanism. It expects an access key in the same way as any other access method. For more information see the [Basic Authentication documentation]({{< ref "/api-management/client-authentication#use-basic-authentication" >}}). Example: @@ -215,7 +215,7 @@ securitySchemes: { All you need to do in the Tyk configuration is to enable the authentication and specify the header details. -For more configuration options check the [JWT documentation]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}). +For more configuration options check the [JWT documentation]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}). ### OAuth @@ -272,7 +272,7 @@ Example: } ``` -All you need to do in the Tyk configuration is to enable OAuth and specify the header details. See [OAuth documentation]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) for more details. +All you need to do in the Tyk configuration is to enable OAuth and specify the header details. See [OAuth documentation]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) for more details. ### Multiple Authentication mechanisms @@ -339,7 +339,7 @@ For the above OAS configuration, Tyk looks at only the first `security` object: } } ``` -Please observe the presence of the `baseIdentityProvider` field, as this is required when enabling multiple authentication mechanisms at the same time. See [Multiple Auth documentation]({{< ref "/api-management/authentication-authorization#multiple-chained-authentication" >}}) for more details. +Please observe the presence of the `baseIdentityProvider` field, as this is required when enabling multiple authentication mechanisms at the same time. See [Multiple Auth documentation]({{< ref "/api-management/client-authentication#combine-authentication-methods" >}}) for more details. ### Other Authentication mechanisms @@ -347,9 +347,9 @@ For now, the only authentication mechanisms enabled with OAS API Definition conf - Authentication Token - Basic Authentication - JSON Web Token (JWT) -- Oauth. +- Tyk as OAuth authorization server -If you’re interested in protecting your APIs using a different mechanism such as HMAC or OpenID Connect, see [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details. +To find out about the other client authentication methods supported by Tyk, see [Client Authentication]({{< ref "/api-management/client-authentication" >}}). ### Automatically protecting OAS API Definition APIs diff --git a/tyk-docs/content/getting-started/key-concepts/oas-versioning.md b/tyk-docs/content/getting-started/key-concepts/oas-versioning.md index 7bf1b9fce8..0de8709cf9 100644 --- a/tyk-docs/content/getting-started/key-concepts/oas-versioning.md +++ b/tyk-docs/content/getting-started/key-concepts/oas-versioning.md @@ -15,7 +15,7 @@ If you're using the legacy Tyk Classic APIs, then check out the [Tyk Classic]({{ ### Controlling access to Tyk OAS API versions -You can explicitly grant access to specific version(s) of an API by specifying the individual API definitions for each version in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}})). +You can explicitly grant access to specific version(s) of an API by specifying the individual API definitions for each version in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/client-authentication#use-auth-tokens" >}})). When using Tyk OAS APIs there are some subtleties to the propagation of access control between versions of an API: - each version of an API is treated individually by Tyk Gateway, so access must be explicity granted for each version diff --git a/tyk-docs/content/getting-started/key-concepts/versioning.md b/tyk-docs/content/getting-started/key-concepts/versioning.md index 0290202a16..15fc902338 100644 --- a/tyk-docs/content/getting-started/key-concepts/versioning.md +++ b/tyk-docs/content/getting-started/key-concepts/versioning.md @@ -19,7 +19,7 @@ If you're using Tyk Operator then check out the [configuring API versioning in T ### Controlling access to Tyk Classic API versions -You can explicitly grant access to specific version(s) of an API by specifying only those version(s) in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}})). +You can explicitly grant access to specific version(s) of an API by specifying only those version(s) in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/client-authentication#use-auth-tokens" >}})). ## Configuring API versioning in the Tyk Classic API Definition diff --git a/tyk-docs/content/graphql/creating-gql-api.md b/tyk-docs/content/graphql/creating-gql-api.md index 736071ecbc..bc522fd7fc 100644 --- a/tyk-docs/content/graphql/creating-gql-api.md +++ b/tyk-docs/content/graphql/creating-gql-api.md @@ -48,12 +48,12 @@ From the **Authentication** section: You have the following options: -- **Authentication mode**: This is the security method to use with your API. First, you can set it to `Open(Keyless)`, but that option is not advised for production APIs. See [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details on securing your API. +- **Authentication mode**: This is the security method to use with your API. First, you can set it to `Open(Keyless)`, but that option is not advised for production APIs. See [Client Authentication]({{< ref "/api-management/client-authentication" >}}) for more details on securing your API. - **Strip Authorization Data**: Select this option to strip any authorization data from your API requests. - **Auth Key Header Name**: The header name that will hold the token on inbound requests. The default for this is `Authorization`. - **Allow Query Parameter As Well As Header**: Set this option to enable checking the query parameter as well as the header for an auth token. **This is a setting that might be important if your GQL includes subscription operations**. - **Use Cookie Value**: It is possible to use a cookie value as well as the other two token locations. -- **Enable client certificate**: Select this to use Mutual TLS. See [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) for details on implementing mutual TLS. +- **Enable client certificate**: Select this to use Mutual TLS. See [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) for details on implementing mutual TLS. ### Step 5: Save the API diff --git a/tyk-docs/content/key-concepts/grpc-proxy.md b/tyk-docs/content/key-concepts/grpc-proxy.md index 09311a0e29..5f9ab3e80a 100644 --- a/tyk-docs/content/key-concepts/grpc-proxy.md +++ b/tyk-docs/content/key-concepts/grpc-proxy.md @@ -34,17 +34,17 @@ For scenarios where you want to connect two services calling each other or just Tyk supports all kinds of gRPC streaming (client streaming, server streaming and bidirectional streaming). It requires you to set a low value for `flush_interval`, this is required in order to forward data to the downstream target as soon as the upstream target replies. A high flush interval will delay this communication. We recommend the lowest possible value: 1 (1 millisecond). You set this value in your `tyk.conf` file in the `http_server_options.flush_interval` option. ### Mutual Authentication -Tyk supports Mutual Authentication in gRPC. See [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) to configure Mutual Authentication in Tyk. +Tyk supports Mutual Authentication in gRPC. See [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) to configure Mutual Authentication in Tyk. ### Basic Authentication -Tyk supports Basic Authentication in gRPC. See [Basic Authentication]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}) to configure Basic Authentication in Tyk. +Tyk supports Basic Authentication in gRPC. See [Basic Authentication]({{< ref "/api-management/client-authentication#use-basic-authentication" >}}) to configure Basic Authentication in Tyk. After setting your Tyk configuration, all you need to do is to send credentials with the correct base64 format in an `Authorization` header from your gRPC client. `Basic base64Encode(username:password)` ### Token Based Authentication -Tyk supports Token Based Authentication in gRPC. See [Bearer Tokens]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}}) to configure Token Based Authentication in Tyk. +Tyk supports Token Based Authentication in gRPC. See [Bearer Tokens]({{< ref "/api-management/client-authentication#use-auth-tokens" >}}) to configure Token Based Authentication in Tyk. After setting your Tyk configuration, all you need to do is to send a token in an `Authorization` header from your gRPC client. diff --git a/tyk-docs/content/plan-your-api-integration.md b/tyk-docs/content/plan-your-api-integration.md index 3730849d1d..e3c9f1e688 100644 --- a/tyk-docs/content/plan-your-api-integration.md +++ b/tyk-docs/content/plan-your-api-integration.md @@ -44,7 +44,7 @@ With your goals in mind, you’ll now design the API: - **Define Endpoints and Methods**: Identify the actions your API should allow (e.g., GET for retrieving data, POST for adding data). - **Specify Data Models**: Define the format of data exchanged. For instance, will product data include details like price, description, and availability? -**Security Consideration:** Plan how users will [authenticate]({{< ref "api-management/security-best-practices#authentication" >}}). Will they use [tokens]({{< ref "api-management/authentication-authorization#use-bearer-tokens" >}}) or [OAuth]({{< ref "api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) (for user-specific access)? Tyk offers tools to implement any of these methods effectively. +**Security Consideration:** Plan how users will [authenticate]({{< ref "api-management/security-best-practices#authentication" >}}). Will they use [tokens]({{< ref "api-management/client-authentication#use-auth-tokens" >}}) or [OAuth]({{< ref "api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) (for user-specific access)? Tyk offers tools to implement any of these methods effectively. #### **Step 3: Document the API** diff --git a/tyk-docs/content/planning-for-production.md b/tyk-docs/content/planning-for-production.md index 9331173a7a..001e85128c 100755 --- a/tyk-docs/content/planning-for-production.md +++ b/tyk-docs/content/planning-for-production.md @@ -139,7 +139,7 @@ If the latency between Tyk and your Upstream is around 50ms, then a single conne ### Protect Redis from overgrowing -Please read carefully through this [doc]({{< ref "/api-management/authentication-authorization#set-physical-key-expiry-and-deletion" >}}) to make an *aware decision* about the expiration of your keys in Redis, after which they will be removed from Redis. If you don't set the lifetime, a zero default means that keys will stay in Redis until you manually delete them, which is no issue if you have a process outside Tyk Gateway to handle it. If you don't - and especially in scenarios that your flow creates many keys or access tokens for every user or even per call - your Redis can quickly get cluttered with obsolete tokens and eventually affect the performance of the Tyk Gateway. +Please read carefully through this [doc]({{< ref "/api-management/client-authentication#set-physical-key-expiry-and-deletion" >}}) to make an *aware decision* about the expiration of your keys in Redis, after which they will be removed from Redis. If you don't set the lifetime, a zero default means that keys will stay in Redis until you manually delete them, which is no issue if you have a process outside Tyk Gateway to handle it. If you don't - and especially in scenarios that your flow creates many keys or access tokens for every user or even per call - your Redis can quickly get cluttered with obsolete tokens and eventually affect the performance of the Tyk Gateway. ### Analytics Optimizations diff --git a/tyk-docs/content/plugins.md b/tyk-docs/content/plugins.md index a3c7835600..6be184fdda 100755 --- a/tyk-docs/content/plugins.md +++ b/tyk-docs/content/plugins.md @@ -9,7 +9,7 @@ aliases: Plugins can be used to customize and enhance the capabilities of your APIs through integration with external services and databases to perform operations such as data transformation, custom authentication, logging and monitoring etc. -When Tyk receives an API request, it works through a [chain]({{< ref "middleware-execution-order" >}}) of processing *middleware* that is configured using the API definition. There are a large number of built-in middleware in the processing chain that are dedicated to performing [client authentication]({{< ref "/api-management/authentication-authorization" >}}), [request transformation]({{< ref "advanced-configuration/transform-traffic" >}}), [caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) and many other processes before proxying the request to the upstream. +When Tyk receives an API request, it works through a [chain]({{< ref "middleware-execution-order" >}}) of processing *middleware* that is configured using the API definition. There are a large number of built-in middleware in the processing chain that are dedicated to performing [client authentication]({{< ref "/api-management/client-authentication" >}}), [request transformation]({{< ref "advanced-configuration/transform-traffic" >}}), [caching]({{< ref "basic-config-and-security/reduce-latency/caching" >}}) and many other processes before proxying the request to the upstream. Tyk's custom plugin facility provides a powerful and flexible way to extend the middleware chain. It allows API developers to write custom middleware, in various programming languages, that can perform additional processing of requests and responses. diff --git a/tyk-docs/content/plugins/supported-languages/rich-plugins/rich-plugins-data-structures.md b/tyk-docs/content/plugins/supported-languages/rich-plugins/rich-plugins-data-structures.md index 34a03699cc..92c5f23b02 100644 --- a/tyk-docs/content/plugins/supported-languages/rich-plugins/rich-plugins-data-structures.md +++ b/tyk-docs/content/plugins/supported-languages/rich-plugins/rich-plugins-data-structures.md @@ -270,7 +270,7 @@ For further details see [BasicAuthData](#basicauthdata). Added to sessions where a Tyk key (embedding a shared secret) is used as the public key for signing the JWT. The JWT token's KID header value references the ID of a Tyk key. See [JWTData](#jwtdata) for an example. `hmac_enabled` -When set to `true` this indicates generation of a [HMAC signature]({{< ref "/api-management/authentication-authorization#sign-requests-with-hmac" >}}) using the secret provided in `hmac_secret`. If the generated signature matches the signature provided in the *Authorization* header then authentication of the request has passed. +When set to `true` this indicates generation of a [HMAC signature]({{< ref "/api-management/client-authentication#sign-requests-with-hmac" >}}) using the secret provided in `hmac_secret`. If the generated signature matches the signature provided in the *Authorization* header then authentication of the request has passed. `hmac_secret` The value of the HMAC shared secret. @@ -312,7 +312,7 @@ A UNIX timestamp that represents the time the session was last updated. Applicab This is a UNIX timestamp that signifies when a cached key or ID will expire. This relates to custom authentication, where authenticated keys can be cached to save repeated requests to the gRPC server. See [id_extractor]({{< ref "plugins/plugin-types/auth-plugins/id-extractor" >}}) and [Auth Plugins]({{< ref "plugins/plugin-types/auth-plugins/auth-plugins" >}}) for additional information. `session_lifetime` -UNIX timestamp that denotes when the key will automatically expire. Any·subsequent API request made using the key will be rejected. Overrides the global session lifetime. See [Key Expiry and Deletion]({{< ref "/api-management/authentication-authorization#set-physical-key-expiry-and-deletion" >}}) for more information. +UNIX timestamp that denotes when the key will automatically expire. Any·subsequent API request made using the key will be rejected. Overrides the global session lifetime. See [Key Expiry and Deletion]({{< ref "/api-management/client-authentication#set-physical-key-expiry-and-deletion" >}}) for more information. --- diff --git a/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning.md b/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning.md index e651bac0df..1cc4875189 100644 --- a/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning.md +++ b/tyk-docs/content/product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning.md @@ -121,7 +121,7 @@ This is easy to do with Tyk. You can include the deprecated endpoint in the new Tyk's access control model supports very granular permissions to versioned APIs. -You can explicitly grant access to specific version(s) of an API by specifying only those version(s) in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/authentication-authorization#use-bearer-tokens" >}})). +You can explicitly grant access to specific version(s) of an API by specifying only those version(s) in the [key]({{< ref "tyk-apis/tyk-gateway-api/token-session-object-details" >}}) (also known as an *authorization token*, *bearer token*, *access token*, *API token* or *token session object* - see [here]({{< ref "/api-management/client-authentication#use-auth-tokens" >}})).
    {{< note success >}} diff --git a/tyk-docs/content/shared/api-def-authentication.md b/tyk-docs/content/shared/api-def-authentication.md index 3eb6794a84..5c4194d5b0 100644 --- a/tyk-docs/content/shared/api-def-authentication.md +++ b/tyk-docs/content/shared/api-def-authentication.md @@ -11,7 +11,7 @@ However Tyk supports many more methods, and these can be set by enabling these f This method has no additional metadata settings. - `use_basic_auth`: This method will enable basic auth as specified by the HTTP spec, an API with this flag set will request for a username and password and require a standard base64 Authentication header to be let through. - Keys cannot be generated by Tyk for this method and need to use the `/tyk/keys/add` method with the `basic_auth_data` metadata set in the keys session configuration (see [Basic Authentication]({{< ref "/api-management/authentication-authorization#use-basic-authentication" >}}) and the overview of the Session Object in this use case in the Key Management section of the [Tyk Gateway API](https://tyk.io/docs/tyk-gateway-api/)). + Keys cannot be generated by Tyk for this method and need to use the `/tyk/keys/add` method with the `basic_auth_data` metadata set in the keys session configuration (see [Basic Authentication]({{< ref "/api-management/client-authentication#use-basic-authentication" >}}) and the overview of the Session Object in this use case in the Key Management section of the [Tyk Gateway API](https://tyk.io/docs/tyk-gateway-api/)). - `enable_signature_checking`: a.k.a HMAC signing. If this option is set to `true`, Tyk will attempt to implement the HMAC signing standard as proposed in the [HTTP Signatures Spec](https://web-payments.org/specs/ED/http-signatures/2014-02-01/#page-3). In particular the structure of the Authorization header and the encoding method need to be taken into account. This method will use a session key to identify a user and a user secret that should be used by the client to sign each request's `date` header. @@ -24,7 +24,7 @@ However Tyk supports many more methods, and these can be set by enabling these f - `use_oauth2`: Tyk attempts to implement a semi-seamless OAuth2 flow. Given the nature of OAuth2's three-party system, it is difficult to implement as a proxy without significantly compromising security or usability. Enabling this option will cause Tyk to add OAuth2-standard endpoints to the API for `/authorize` and `/token`, these will supersede any other requests to your proxied system in order to enable the flow. - Please see the [OAuth2 Flow]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) section for a comprehensive discussion of how to integrate with Tyk. + Please see the [OAuth2 Flow]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) section for a comprehensive discussion of how to integrate with Tyk. - `oauth_meta.allowed_access_types`: Should be a string array of OAuth access options, types can be: - `authorization_code` - client has an authorization code to request a new access token. diff --git a/tyk-docs/content/shared/api-def-version.md b/tyk-docs/content/shared/api-def-version.md index a2eb342a68..e4ca4feed8 100644 --- a/tyk-docs/content/shared/api-def-version.md +++ b/tyk-docs/content/shared/api-def-version.md @@ -74,7 +74,7 @@ Tyk will look in the First part of the URL Path for the version information. For } ``` -Each version of your API should be defined here with a unique name. This name is what will be matched by `definition.key`. Once Tyk has identified the API to load, and has allowed the access key through, it will check the access token's session data for access permissions. If it finds none, it will let the token through. However, if there are permissions and versions defined, it will be strict in **only** allowing access to that version. For more information about handling access control, see the [Security - Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) section. +Each version of your API should be defined here with a unique name. This name is what will be matched by `definition.key`. Once Tyk has identified the API to load, and has allowed the access key through, it will check the access token's session data for access permissions. If it finds none, it will let the token through. However, if there are permissions and versions defined, it will be strict in **only** allowing access to that version. For more information about handling access control, see the [Security - Authentication and Authorization]({{< ref "/api-management/client-authentication" >}}) section. * `version_data.{version-name}.expires`: The expires header, if set, will deprecate access to the API after the time specified. The entry here takes the form of: `"YYYY-MM-DD HH:MM"`. If this is not set the version will never expire. * `version_data.{version-name}.override_target`: Setting this value will override the target of the API for this version, overriding the target will invalidate (and is not compatible with) Round Robin Load balancing and Service Discovery. diff --git a/tyk-docs/content/shared/create-api-include.md b/tyk-docs/content/shared/create-api-include.md index 4ab2e0dbd2..7b16ebc671 100644 --- a/tyk-docs/content/shared/create-api-include.md +++ b/tyk-docs/content/shared/create-api-include.md @@ -55,12 +55,12 @@ Take a look at the **Authentication** section: You have the following options: -- **Authentication mode**: This is the method that Tyk should use to authenticate requests to call your API. Tyk supports several different authentication modes - see [Authentication and Authorization]({{< ref "/api-management/authentication-authorization" >}}) for more details on securing your API. For this tutorial, you should select `Open (Keyless)`. +- **Authentication mode**: This is the method that Tyk should use to authenticate requests to call your API. Tyk supports several different authentication modes - see [Client Authentication]({{< ref "/api-management/client-authentication" >}}) for more details on securing your API. For this tutorial, you should select `Open (Keyless)`. - **Strip Authorization Data**: Select this option to ensure that any security (authentication) tokens provided to authorize requests to your API on Tyk are not leaked to the upstream. You can leave this unchecked for this tutorial. - **Auth Key Header Name**: The header parameter that will hold the authentication token (or key) for requests to this API; the default for this is `Authorization`. - **Allow query parameter as well as header**: This option allows the authentication token to be set in the query parameter, not just in the Request Header. For this tutorial, leave this unchecked. - **Use Cookie Value**: Tyk also supports the use of a cookie value as an alternative authentication token location. For this tutorial, leave this unchecked. -- **Enable client certificate**: Tyk supports the use of Mutual TLS to authenticate requests to your API; you would use this checkbox to enable this mode. See [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) for details on implementing this feature. For this tutorial, leave this unchecked. +- **Enable client certificate**: Tyk supports the use of Mutual TLS to authenticate requests to your API; you would use this checkbox to enable this mode. See [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) for details on implementing this feature. For this tutorial, leave this unchecked. ### Step 5: Save the API diff --git a/tyk-docs/content/shared/mdcb-config.md b/tyk-docs/content/shared/mdcb-config.md index 074fcb4d74..e558028a11 100644 --- a/tyk-docs/content/shared/mdcb-config.md +++ b/tyk-docs/content/shared/mdcb-config.md @@ -126,7 +126,7 @@ SSL certificates used by your MDCB server. A list of certificate IDs or path to ENV: TYK_MDCB_SECURITY_PRIVATECERTIFICATEENCODINGSECRET
    Type: `string`
    -Allows MDCB to use Mutual TLS. This requires to set `server_options.use_ssl` to true. See [Mutual TLS]({{< ref "/api-management/authentication-authorization#enable-mutual-tls" >}}) for more details. +Allows MDCB to use Mutual TLS. This requires to set `server_options.use_ssl` to true. See [Mutual TLS]({{< ref "/api-management/client-authentication#use-mutual-tls" >}}) for more details. ### security.enable_http_secure_endpoints ENV: TYK_MDCB_SECURITY_ENABLEHTTPSECUREENDPOINTS
    diff --git a/tyk-docs/content/tyk-apis/tyk-dashboard-api/oauth-key-management.md b/tyk-docs/content/tyk-apis/tyk-dashboard-api/oauth-key-management.md index 74f1f0e300..822eb2dbeb 100644 --- a/tyk-docs/content/tyk-apis/tyk-dashboard-api/oauth-key-management.md +++ b/tyk-docs/content/tyk-apis/tyk-dashboard-api/oauth-key-management.md @@ -138,42 +138,6 @@ curl -vX DELETE -H "Authorization: {{API Access Credentials}}" \ } ``` -### OAuth2.0 Authorization Token - -| **Property** | **Description** | -| ------------ | ---------------------------------------------- | -| Resource URL | `/api/apis/oauth/{{api_id}}/authorize-client/` | -| Method | POST | -| Type | Form-Encoded | -| Body | Fields (see below) | - -* `api_id`: Unlike the other requests on this page, this must be the `api_id` value and **NOT** the API's `id` value. -* `response_type`: Should be provided by requesting client as part of authorization request, this should be either `code` or `token` depending on the methods you have specified for the API. -* `client_id`: Should be provided by requesting client as part of authorization request. The Client ID that is making the request. -* `redirect_uri`: Should be provided by requesting client as part of authorization request. Must match with the record stored with Tyk. -* `key_rules`: A string representation of a Session Object (form-encoded). *This should be provided by your application in order to apply any quotas or rules to the key.* - -Note that in the following example, the `policy_id` isn't included in the request as these are optional. OAuth2.0 Flow also supports callbacks which can be added to the `key_rules` in the payload in requests that don't include the `policy_id`. - - -#### Sample Request - -```{.copyWrapper} -curl -vX POST -H "Authorization: {{API Access Credentials}}" \ - -H "Content-Type: application/x-www-form-urlencoded" \ - -d 'response_type=code&client_id={{client_id}}&redirect_uri=http%3A%2F%2Foauth.com%2Fredirect&key_rules=%7B+++++%22allowance%22%3A+999%2C+++++%22rate%22%3A+1000%2C+++++%22per%22%3A+60%2C+++++%22expires%22%3A+0%2C+++++%22quota_max%22%3A+-1%2C+++++%22quota_renews%22%3A+1406121006%2C+++++%22quota_remaining%22%3A+0%2C+++++%22quota_renewal_rate%22%3A+60%2C+++++%22access_rights%22%3A+%7B+++++++++%22528a67c1ac9940964f9a41ae79235fcc%22%3A+%7B+++++++++++++%22api_name%22%3A+%22{{api_name}}%22%2C+++++++++++++%22api_id%22%3A+%{{api_id}}%22%2C+++++++++++++%22versions%22%3A+%5B+++++++++++++++++%22Default%22+++++++++++++%5D+++++++++%7D+++++%7D%2C+++++%22org_id%22%3A+%22{{org_id}}%22+%7D' -http://{{dashboard-hostname}}/api/apis/oauth/{{api_id}}/authorize-client -``` - -#### Sample Response - -``` -{ - "code": "MWY0ZDRkMzktOTYwNi00NDRiLTk2YmQtOWQxOGQ3Mjc5Yzdk", - "redirect_to": "http://localhost:3000/oauth-redirect/?code=MWY0ZDRkMzktOTYwNi00NDRiLTk2YmQtOWQxOGQ3Mjc5Yzdk" -} -``` - ### Retrieve All Current Tokens for Specified OAuth2.0 Client This endpoint allows you to retrieve a list of all current tokens and their expiry date for a provided API ID and OAuth-client ID in the following format. This endpoint will work only for newly created tokens. @@ -285,3 +249,41 @@ Body: { "Meta": null } ``` + +### OAuth2.0 Authorization Code + +This endpoint is used in the [Authorization Code Grant]({{< ref "api-management/client-authentication#using-the-authorization-code-grant" >}}) flow, generating an authorization code that can be used by the client to request an access token. + +| **Property** | **Description** | +| ------------ | ---------------------------------------------- | +| Resource URL | `/api/apis/oauth/{{api_id}}/authorize-client/` | +| Method | POST | +| Type | Form-Encoded | +| Body | Fields (see below) | + +* `api_id`: Unlike the other requests on this page, this must be the `api_id` value and **NOT** the API's `id` value. +* `response_type`: Should be provided by requesting client as part of authorization request, this should be either `code` or `token` depending on the methods you have specified for the API. +* `client_id`: Should be provided by requesting client as part of authorization request. The Client ID that is making the request. +* `redirect_uri`: Should be provided by requesting client as part of authorization request. Must match with the record stored with Tyk. +* `key_rules`: A string representation of a Session Object (form-encoded). *This should be provided by your application in order to apply any quotas or rules to the key.* + +Note that in the following example, the `policy_id` isn't included in the request as these are optional. OAuth2.0 Flow also supports callbacks which can be added to the `key_rules` in the payload in requests that don't include the `policy_id`. + + +#### Sample Request + +```{.copyWrapper} +curl -vX POST -H "Authorization: {{API Access Credentials}}" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d 'response_type=code&client_id={{client_id}}&redirect_uri=http%3A%2F%2Foauth.com%2Fredirect&key_rules=%7B+++++%22allowance%22%3A+999%2C+++++%22rate%22%3A+1000%2C+++++%22per%22%3A+60%2C+++++%22expires%22%3A+0%2C+++++%22quota_max%22%3A+-1%2C+++++%22quota_renews%22%3A+1406121006%2C+++++%22quota_remaining%22%3A+0%2C+++++%22quota_renewal_rate%22%3A+60%2C+++++%22access_rights%22%3A+%7B+++++++++%22528a67c1ac9940964f9a41ae79235fcc%22%3A+%7B+++++++++++++%22api_name%22%3A+%22{{api_name}}%22%2C+++++++++++++%22api_id%22%3A+%{{api_id}}%22%2C+++++++++++++%22versions%22%3A+%5B+++++++++++++++++%22Default%22+++++++++++++%5D+++++++++%7D+++++%7D%2C+++++%22org_id%22%3A+%22{{org_id}}%22+%7D' +http://{{dashboard-hostname}}/api/apis/oauth/{{api_id}}/authorize-client +``` + +#### Sample Response + +``` +{ + "code": "MWY0ZDRkMzktOTYwNi00NDRiLTk2YmQtOWQxOGQ3Mjc5Yzdk", + "redirect_to": "http://localhost:3000/oauth-redirect/?code=MWY0ZDRkMzktOTYwNi00NDRiLTk2YmQtOWQxOGQ3Mjc5Yzdk" +} +``` \ No newline at end of file diff --git a/tyk-docs/content/tyk-apis/tyk-gateway-api/api-definition-objects/jwt.md b/tyk-docs/content/tyk-apis/tyk-gateway-api/api-definition-objects/jwt.md index e6257883d5..4d879c1500 100644 --- a/tyk-docs/content/tyk-apis/tyk-gateway-api/api-definition-objects/jwt.md +++ b/tyk-docs/content/tyk-apis/tyk-gateway-api/api-definition-objects/jwt.md @@ -11,7 +11,7 @@ weight: 7 * `jwt_signing_method`: Either HMAC or RSA - HMAC requires a shared secret while RSA requires a public key to use to verify against. Please see the section on JSON web tokens for more details on how to generate these. -* `jwt_source`: Must either be a base64 encoded valid RSA/HMAC key or a url to a resource serving JWK, this key will then be used to validate inbound JWT and throttle them according to the centralised JWT options and fields set in the configuration. See [Dynamic public key rotation using public JWKs URL]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}}) for more details on JWKs. +* `jwt_source`: Must either be a base64 encoded valid RSA/HMAC key or a url to a resource serving JWK, this key will then be used to validate inbound JWT and throttle them according to the centralised JWT options and fields set in the configuration. See [Dynamic public key rotation using public JWKs URL]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}}) for more details on JWKs. * `jwt_identity_base_field`: Identifies the user or identity to be used in the Claims of the JWT. This will fallback to `sub` if not found. This field forms the basis of a new "virtual" token that gets used after validation. It means policy attributes are carried forward through Tyk for attribution purposes. @@ -34,4 +34,4 @@ You can disable the validation check on 3 claims `IssueAt`, `ExpireAt` and `NotB "jwt_disable_not_before_validation": true ``` -See [JSON Web Tokens](/api-management/authentication-authorization#use-json-web-tokens-jwt) for more details. +See [JSON Web Tokens](/api-management/client-authentication#use-json-web-tokens-jwt) for more details. diff --git a/tyk-docs/content/tyk-components.md b/tyk-docs/content/tyk-components.md index 0f25ff7d3e..0f7d69b68e 100644 --- a/tyk-docs/content/tyk-components.md +++ b/tyk-docs/content/tyk-components.md @@ -203,7 +203,7 @@ Now that you’ve been introduced to the Tyk suite, you have a strong foundation 2. **[Set Up and Configure the Tyk Dashboard]({{< ref "tyk-dashboard" >}})** Dive into the Tyk Dashboard to manage your API lifecycle from a user-friendly interface, allowing you to monitor, configure, and scale your APIs with ease. -3. **[Explore API Security]({{< ref "api-management/authentication-authorization" >}})** +3. **[Explore API Security]({{< ref "api-management/client-authentication" >}})** Secure your APIs with Tyk’s robust authentication options like OAuth2, JWT, and HMAC, and learn how to apply rate limiting and quota policies to protect your resources. 4. **[Implement Multi-Region Deployments with MDCB]({{< ref "tyk-multi-data-centre" >}})** diff --git a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/gluu-dcr.md b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/gluu-dcr.md index 072f685de9..547dc6aaff 100644 --- a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/gluu-dcr.md +++ b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/gluu-dcr.md @@ -98,7 +98,7 @@ Once the "Override global settings" option is toggled, scroll down to the DCR se **Providers:** Different providers might implement the standard in slightly different ways. Tyk provides a specific driver for each one. For IDPs that aren’t on the list use the "Other" option. For this guide, pick "Gluu". -**Grant Types:** The [OAuth 2.0 grant types]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) types that will be used by the client, see the [specification](https://openid.net/specs/openid-connect-registration-1_0.html#rfc.section.2) for more details. Set "Client Credentials". +**Grant Types:** The [OAuth 2.0 grant types]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) types that will be used by the client, see the [specification](https://openid.net/specs/openid-connect-registration-1_0.html#rfc.section.2) for more details. Set "Client Credentials". **Token Endpoint Auth Method:** defines the way the client will authenticate against the token endpoint. Use "Client Secret - Post". diff --git a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/keycloak-dcr.md b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/keycloak-dcr.md index 9a6913594f..4866e3bc69 100644 --- a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/keycloak-dcr.md +++ b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/keycloak-dcr.md @@ -109,7 +109,7 @@ Tyk lets you set global portal settings that apply to **all portal-listed APIs** **Providers:** Different providers might implement the standard in slightly different ways, Tyk provides a specific driver for each one. For IDPs that aren’t on the list use the **Other** option. -**Grant Types:** The [OAuth 2.0 grant types]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) that will be used by the client, see the [specification](https://openid.net/specs/openid-connect-registration-1_0.html#rfc.section.2) for more details. +**Grant Types:** The [OAuth 2.0 grant types]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) that will be used by the client, see the [specification](https://openid.net/specs/openid-connect-registration-1_0.html#rfc.section.2) for more details. **Token Endpoint Auth Method:** defines the way the client will authenticate against the token endpoint. diff --git a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients.md b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients.md index 863ace8093..1dff9d2153 100644 --- a/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients.md +++ b/tyk-docs/content/tyk-developer-portal/tyk-portal-classic/portal-oauth-clients.md @@ -14,7 +14,7 @@ From Tyk Dashboard v1.8, you can now create and manage OAuth clients from the De ## Prerequisites -1. An API created in your Dashboard using Tyk's ability to act as a OAuth provider. You need to have [OAuth 2.0]({{< ref "/api-management/authentication-authorization#set-up-oauth-20-authorization" >}}) selected as the Authentication mode. See [Create an API]({{< ref "getting-started/create-api" >}}) for more details. +1. An API created in your Dashboard using Tyk's ability to act as a OAuth provider. You need to have [OAuth 2.0]({{< ref "/api-management/client-authentication#use-tyk-as-an-oauth-20-authorization-server" >}}) selected as the Authentication mode. See [Create an API]({{< ref "getting-started/create-api" >}}) for more details. 2. A Policy created in your Dashboard with the API created above selected in the **Access Rights > Add access rule** drop-down. See [Create a Security Policy]({{< ref "getting-started/create-security-policy" >}}) for more details. 3. A Portal Catalog entry for the API created above with the Policy you created selected from the **Available policies** drop-down. See [Create a Portal Entry]({{< ref "getting-started/tutorials/publish-api" >}}) for more details. 4. A developer account created in your Developer Portal. @@ -52,4 +52,4 @@ From Tyk Dashboard v1.8, you can now create and manage OAuth clients from the De ## Revoke OAuth Client Tokens -See [Revoke OAuth Tokens]({{< ref "/api-management/authentication-authorization#revoke-oauth-tokens" >}}) for more details. +See [Revoke OAuth Tokens]({{< ref "/api-management/client-authentication#revoking-access-tokens" >}}) for more details. diff --git a/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration.md b/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration.md index 3d1441842c..b1d14e068a 100644 --- a/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration.md +++ b/tyk-docs/content/tyk-stack/tyk-developer-portal/enterprise-developer-portal/api-access/dynamic-client-registration.md @@ -86,7 +86,7 @@ Navigate to the Tyk Dashboard and create two policies: one for a plan and one fo ### Create the No Operation policy and API -Tyk requires any API that uses the scope to policy mapping to have [a default policy]({{< ref "/api-management/authentication-authorization#use-json-web-tokens-jwt" >}} ). Access rights and rate limits defined in the default policy take priority over other policies, including policies for the API Product and plan. +Tyk requires any API that uses the scope to policy mapping to have [a default policy]({{< ref "/api-management/client-authentication#use-json-web-tokens-jwt" >}} ). Access rights and rate limits defined in the default policy take priority over other policies, including policies for the API Product and plan. To avoid that, you need to create the No Operation API and policy that won't grant access to the APIs included in the API Product but will satisfy the requirement for a default policy. diff --git a/tyk-docs/data/alias.json b/tyk-docs/data/alias.json index 6356146223..c8e7ec21e4 100644 --- a/tyk-docs/data/alias.json +++ b/tyk-docs/data/alias.json @@ -12,16 +12,16 @@ "basic-config-and-security/security/owasp-top-tne": "#mitigating-the-top-10-owasp-threats", "advanced-configuration/integrate/api-auth-mode/json-web-tokens": "#use-json-web-tokens-jwt", "advanced-configuration/integrate/api-auth-mode/oidc-auth0-example": "#redirect-the-user-to-a-login-page", - "advanced-configuration/integrate/api-auth-mode/open-id-connect": "#use-openid-connect", + "advanced-configuration/integrate/api-auth-mode/open-id-connect": "#integrate-with-openid-connect-deprecated", "basic-config-and-security/security/authentication--authorization": "#introduction", - "basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant": "#use-authorization-code-grant", + "basic-config-and-security/security/authentication--authorization/oauth2-0/auth-code-grant": "#using-the-authorization-code-grant", "basic-config-and-security/security/authentication--authorization/oauth2-0/client-credentials-grant": "#use-client-credentials-grant", - "basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant": "#use-refresh-token-grant", + "basic-config-and-security/security/authentication--authorization/oauth2-0/refresh-token-grant": "#using-refresh-tokens", "basic-config-and-security/security/authentication--authorization/oauth2-0/username-password-grant": "#use-username-and-password-grant", "basic-config-and-security/security/authentication-authorization/": "#introduction", "basic-config-and-security/security/authentication-authorization/basic-auth": "#use-basic-authentication", - "basic-config-and-security/security/authentication-authorization/bearer-tokens": "#use-bearer-tokens", - "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware": "#integrate-external-oauth-middleware", + "basic-config-and-security/security/authentication-authorization/bearer-tokens": "#use-auth-tokens", + "basic-config-and-security/security/authentication-authorization/ext-oauth-middleware": "#integrate-with-external-authorization-server-deprecated", "basic-config-and-security/security/authentication-authorization/go-plugin-authentication": "#authenticate-using-go-plugins", "basic-config-and-security/security/authentication-authorization/hmac-signatures": "#sign-requests-with-hmac", "basic-config-and-security/security/authentication-authorization/json-web-tokens": "#use-json-web-tokens-jwt", @@ -29,34 +29,34 @@ "basic-config-and-security/security/authentication-authorization/json-web-tokens/jwt-keycloak": "#jwt-and-keycloak-with-tyk", "basic-config-and-security/security/authentication-authorization/json-web-tokens/split-token": "#split-token", "basic-config-and-security/security/authentication-authorization/multiple-auth": "#combine-authentication-methods", - "basic-config-and-security/security/authentication-authorization/oauth-2-0": "#set-up-oauth-20-authorization", + "basic-config-and-security/security/authentication-authorization/oauth-2-0": "#use-tyk-as-an-oauth-20-authorization-server", "basic-config-and-security/security/authentication-authorization/open-keyless": "#use-open-keyless-authentication", - "basic-config-and-security/security/authentication-authorization/openid-connect": "#use-openid-connect", + "basic-config-and-security/security/authentication-authorization/openid-connect": "#integrate-with-openid-connect-deprecated", "basic-config-and-security/security/authentication-authorization/physical-key-expiry": "#set-physical-key-expiry-and-deletion", "basic-config-and-security/security/authentication-authorization/python-etc-plugin-authentication": "#use-python-coprocess-and-jsvm-plugin-authentication", "basic-config-and-security/security/authentication-&-authorization": "#introduction", - "basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant": "#use-authorization-code-grant", + "basic-config-and-security/security/authentication-&-authorization/oauth2-0/auth-code-grant": "#using-the-authorization-code-grant", "basic-config-and-security/security/authentication-&-authorization/oauth2-0/client-credentials-grant": "#use-client-credentials-grant", - "basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant": "#use-refresh-token-grant", + "basic-config-and-security/security/authentication-&-authorization/oauth2-0/refresh-token-grant": "#using-refresh-tokens", "basic-config-and-security/security/authentication-&-authorization/oauth2-0/username-password-grant": "#use-username-and-password-grant", - "basic-config-and-security/security/mutual-tls": "#enable-mutual-tls", + "basic-config-and-security/security/mutual-tls": "#use-mutual-tls", "basic-config-and-security/security/mutual-tls/client-mtls": "#client-mtls", "basic-config-and-security/security/mutual-tls/concepts": "#concepts", "basic-config-and-security/security/mutual-tls/upstream-mtls": "#upstream-mtls", "basic-config-and-security/security/your-apis/oauth20/revoke-oauth-tokens": "#revoke-oauth-tokens", - "security/your-apis/bearer-tokens": "#use-bearer-tokens", + "security/your-apis/bearer-tokens": "#use-auth-tokens", "security/your-apis/json-web-tokens": "#use-json-web-tokens-jwt", - "security/your-apis/openid-connect": "#use-openid-connect", + "security/your-apis/openid-connect": "#integrate-with-openid-connect-deprecated", "tyk-apis/tyk-gateway-api/api-definition-objects/jwt/docs/basic-config-and-security/security/authentication-authorization/json-web-tokens": "#use-json-web-tokens-jwt", - "basic-config-and-security/security/authentication-authorization/oauth2-0/auth-code-grant": "#use-authorization-code-grant", + "basic-config-and-security/security/authentication-authorization/oauth2-0/auth-code-grant": "#using-the-authorization-code-grant", "basic-config-and-security/security/authentication-authorization/oauth2-0/client-credentials-grant": "#use-client-credentials-grant", - "basic-config-and-security/security/authentication-authorization/oauth2-0/refresh-token-grant": "#use-refresh-token-grant", + "basic-config-and-security/security/authentication-authorization/oauth2-0/refresh-token-grant": "#using-refresh-tokens", "basic-config-and-security/security/authentication-authorization/oauth2-0/username-password-grant": "#use-username-and-password-grant", - "basic-config-and-security/security/authentication-authorization/oauth2.0/auth-code-grant": "#use-authorization-code-grant", + "basic-config-and-security/security/authentication-authorization/oauth2.0/auth-code-grant": "#using-the-authorization-code-grant", "basic-config-and-security/security/authentication-authorization/physical-token-expiry": "#set-physical-key-expiry-and-deletion", - "basic-config-and-security/security/tls-and-ssl/mutual-tls": "#enable-mutual-tls", + "basic-config-and-security/security/tls-and-ssl/mutual-tls": "#use-mutual-tls", "basic-config-and-security/security/your-apis/oauth2.0/revoke-oauth-tokens": "#revoke-oauth-tokens", - "security/tls-and-ssl/mutual-tls": "#enable-mutual-tls", + "security/tls-and-ssl/mutual-tls": "#use-mutual-tls", "security/your-apis/oauth-2-0": "#introduction", "advanced-configuration/manage-multiple-environments/tyk-sync": "#synchronize-tyk-environment-with-github-repository", "product-stack/tyk-operator/advanced-configurations/api-categories": "#api-categories", diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index eb64155b23..e2ba992d5e 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -669,6 +669,10 @@ menu: path: /planning-for-production/redis-sizing category: Page show: True + - title: "Secure system payloads" + path: /tyk-configuration-reference/securing-system-payloads + category: Page + show: True - title: "Set-up GitOps" category: Page show: False @@ -758,7 +762,7 @@ menu: category: Page show: True - title: "Authentication and Authorization" - path: /api-management/authentication-authorization + path: /api-management/client-authentication category: Page show: True - title: "Upstream Authentication" @@ -868,7 +872,7 @@ menu: - title: "Extending an OAS API" path: /api-management/manage-apis/tyk-oas-api-definition/tyk-oas-middleware category: Page - show: True + show: False - title: "Enable middleware with an OAS API" path: /getting-started/using-oas-definitions/update-api-with-oas category: Page @@ -1326,945 +1330,905 @@ menu: path: /advanced-configuration/transform-traffic/looping category: Page show: True - - title: "Basic config and security" + - title: "API access control" category: Directory show: True menu: - title: "Overview" path: /basic-config-and-security category: Page + show: False + - title: "oauth" + category: page + show: False + path: /basic-config-and-security/security/authentication-authorization/ext-oauth-middleware + - title: "Gateway" + path: /basic-config-and-security/security/gateway + category: Page + show: False + - title: "Overview" + path: /basic-config-and-security/control-limit-traffic + category: Page show: True - - title: "Security" + - title: "Security Policies and Keys" category: Directory show: True menu: - - title: "oauth" - category: page - show: False - path: /basic-config-and-security/security/authentication-authorization/ext-oauth-middleware - - title: "Security policies" - category: Directory - show: True - menu: - - title: "Overview" - path: /basic-config-and-security/security/security-policies - category: Page - show: True - - title: "Policies Guide" - path: /basic-config-and-security/security/security-policies/policies-guide - category: Page - show: True - - title: "Secure your APIs by Method and Path" - path: /security/security-policies/secure-apis-method-path - category: Page - show: True - - title: "Partitioned Policies" - path: /basic-config-and-security/security/security-policies/partitioned-policies - category: Page - show: True - - title: "Gateway" - path: /basic-config-and-security/security/gateway - category: Page - show: True - - title: "Key Hashing" - path: /basic-config-and-security/security/key-hashing - category: Page - show: True - - title: "Key Level Security" - path: /basic-config-and-security/security/key-level-security - category: Page - show: True - - title: "TLS and SSL" - path: /basic-config-and-security/security/tls-and-ssl - category: Page - show: True - - title: "Certificate Pinning" - path: /security/certificate-pinning + - title: "Overview" + path: /basic-config-and-security/security/security-policies + category: Page + show: True + - title: "Policies Guide" + path: /basic-config-and-security/security/security-policies/policies-guide + category: Page + show: True + - title: "Secure your APIs by Method and Path" + path: /security/security-policies/secure-apis-method-path + category: Page + show: True + - title: "Partitioned Policies" + path: /basic-config-and-security/security/security-policies/partitioned-policies + category: Page + show: True + - title: "Key Level Security" + path: /basic-config-and-security/security/key-level-security + category: Page + show: True + - title: "Key Expiry" + path: /basic-config-and-security/control-limit-traffic/key-expiry + category: Page + show: True + - title: "Key Hashing" + path: /basic-config-and-security/security/key-hashing + category: Page + show: True + - title: "Blocking Client IPs" + path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting + category: Page + show: True + - title: "Allowing Client IPs" + path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting + category: Page + show: True + - title: "Rate Limits" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/control-limit-traffic/rate-limiting category: Page show: True - - title: "Blocking Client IPs" - path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-blacklisting + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas category: Page show: True - - title: "Allowing Client IPs" - path: /tyk-apis/tyk-gateway-api/api-definition-objects/ip-whitelisting + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic category: Page show: True - - title: "Control and limit traffic" + - title: "Request Quotas" + path: /basic-config-and-security/control-limit-traffic/request-quotas + category: Page + show: True + - title: "Request Throttling" + path: /basic-config-and-security/control-limit-traffic/request-throttling + category: Page + show: True + - title: "Request Size Limits" category: Directory show: True menu: - title: "Overview" - path: /basic-config-and-security/control-limit-traffic + path: /basic-config-and-security/control-limit-traffic/request-size-limits category: Page show: True - - title: "Key Expiry" - path: /basic-config-and-security/control-limit-traffic/key-expiry + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas category: Page show: True - - title: "Request Quotas" - path: /basic-config-and-security/control-limit-traffic/request-quotas + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic category: Page show: True - - title: "Request Size Limits" - category: Directory + - title: "Reduce latency" + category: Directory + show: False + menu: + - title: "Overview" + path: /basic-config-and-security/reduce-latency + category: Page + show: False + - title: "Cache responses" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/reduce-latency/caching + category: Page + show: True + - title: "Basic (Global) Caching" + path: /basic-config-and-security/reduce-latency/caching/global-cache/ + category: Page + show: True + - title: "Endpoint Caching" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/reduce-latency/caching/advanced-cache/ + category: Page show: True - menu: - - title: "Overview" - path: /basic-config-and-security/control-limit-traffic/request-size-limits - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/request-size-limit-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/request-size-limit-tyk-classic - category: Page - show: True - - title: "Request Throttling" - path: /basic-config-and-security/control-limit-traffic/request-throttling + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas category: Page show: True - - title: "Rate Limits" + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic + category: Page + show: True + - title: "Upstream Cache Control" + path: /basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/ + category: Page + show: True + - title: "Invalidating the Cache" + path: /basic-config-and-security/reduce-latency/caching/invalidate-cache/ + category: Page + show: True + - title: "Optimizing the Cache Storage" + path: /basic-config-and-security/reduce-latency/caching/optimise-cache/ + category: Page + show: True + - title: "Advanced configurations" + category: Directory + show: False + menu: + - title: "Overview" + path: /advanced-configuration + category: Page + show: False + - title: "Transform traffic" + category: Directory + show: True + menu: + - title: "Overview" + path: /advanced-configuration/transform-traffic + category: Page + show: True + - title: "Allow List" category: Directory show: True menu: - title: "Overview" - path: /basic-config-and-security/control-limit-traffic/rate-limiting + path: /product-stack/tyk-gateway/middleware/allow-list-middleware category: Page show: True - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-rate-limit-oas + path: /product-stack/tyk-gateway/middleware/allow-list-tyk-oas category: Page show: True - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-rate-limit-classic + path: /product-stack/tyk-gateway/middleware/allow-list-tyk-classic category: Page show: True - - title: "Reduce latency" + - title: "Block List" category: Directory show: True menu: - title: "Overview" - path: /basic-config-and-security/reduce-latency + path: /product-stack/tyk-gateway/middleware/block-list-middleware category: Page show: True - - title: "Caching" - category: Directory + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/block-list-tyk-oas + category: Page show: True - menu: - - title: "Overview" - path: /basic-config-and-security/reduce-latency/caching - category: Page - show: True - - title: "Basic (Global) Caching" - path: /basic-config-and-security/reduce-latency/caching/global-cache/ - category: Page - show: True - - title: "Endpoint Caching" - category: Directory - show: True - menu: - - title: "Overview" - path: /basic-config-and-security/reduce-latency/caching/advanced-cache/ - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-cache-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-cache-tyk-classic - category: Page - show: True - - title: "Upstream Cache Control" - path: /basic-config-and-security/reduce-latency/caching/upstream-controlled-cache/ - category: Page - show: True - - title: "Invalidating the Cache" - path: /basic-config-and-security/reduce-latency/caching/invalidate-cache/ - category: Page - show: True - - title: "Optimizing the Cache Storage" - path: /basic-config-and-security/reduce-latency/caching/optimise-cache/ - category: Page - show: True - - title: "Log traffic" + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/block-list-tyk-classic + category: Page + show: True + - title: "Ignore Authentication" category: Directory show: True menu: - title: "Overview" - path: /product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic + path: /product-stack/tyk-gateway/middleware/ignore-middleware category: Page show: True - - title: "Detailed recording" - path: /product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/ignore-tyk-oas category: Page show: True - - title: "Do Not Track" - category: Directory + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/ignore-tyk-classic + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/do-not-track-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/do-not-track-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/do-not-track-tyk-classic - category: Page - show: True - - title: "Gateway events" + - title: "Internal Endpoint" category: Directory show: True menu: - title: "Overview" - path: /basic-config-and-security/report-monitor-trigger-events + path: /product-stack/tyk-gateway/middleware/internal-endpoint-middleware category: Page show: True - - title: "Event types" - path: /basic-config-and-security/report-monitor-trigger-events/event-types + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas category: Page show: True - - title: "Event metadata" - path: /basic-config-and-security/report-monitor-trigger-events/event-data + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic category: Page show: True - - title: "Event handling with webhooks" - category: Directory + - title: "Request Method" + category: Directory + show: True + menu: + - title: "Overview" + path: /advanced-configuration/transform-traffic/request-method-transform + category: Page show: True - menu: - - title: "Overview" - path: /basic-config-and-security/report-monitor-trigger-events/webhooks - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic - category: Page - show: True - - title: "Logging events" - path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/request-method-tyk-oas + category: Page + show: True Me + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/request-method-tyk-classic category: Page show: True - - title: "Custom event handlers" - path: /basic-config-and-security/report-monitor-trigger-events/custom-handlers-javascript + - title: "Request Body" + category: Directory + show: True + menu: + - title: "Overview" + path: /transform-traffic/request-body category: Page show: True - - title: "Advanced quota monitoring" - path: /basic-config-and-security/report-monitor-trigger-events/monitors + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/request-body-tyk-oas category: Page show: True - - title: "Advanced configurations" - category: Directory - show: True - menu: - - title: "Overview" - path: /advanced-configuration - category: Page + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/request-body-tyk-classic + category: Page + show: True + - title: "Request Headers" + category: Directory show: True - - title: "Transform traffic" + menu: + - title: "Overview" + path: /transform-traffic/request-headers + category: Page + show: True + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/request-header-tyk-oas + category: Page + show: True + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/request-header-tyk-classic + category: Page + show: True + - title: "Response Body" category: Directory show: True menu: - title: "Overview" - path: /advanced-configuration/transform-traffic + path: /advanced-configuration/transform-traffic/response-body category: Page show: True - - title: "Allow List" - category: Directory + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/response-body-tyk-oas + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/allow-list-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/allow-list-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/allow-list-tyk-classic - category: Page - show: True - - title: "Block List" - category: Directory + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/response-body-tyk-classic + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/block-list-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/block-list-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/block-list-tyk-classic - category: Page - show: True - - title: "Ignore Authentication" - category: Directory + - title: "Response Headers" + category: Directory + show: True + menu: + - title: "Overview" + path: /advanced-configuration/transform-traffic/response-headers + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/ignore-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/ignore-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/ignore-tyk-classic - category: Page - show: True - - title: "Internal Endpoint" - category: Directory + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/response-header-tyk-oas + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/internal-endpoint-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/internal-endpoint-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/internal-endpoint-tyk-classic - category: Page - show: True - - title: "Request Method" - category: Directory + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/response-header-tyk-classic + category: Page show: True - menu: - - title: "Overview" - path: /advanced-configuration/transform-traffic/request-method-transform - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/request-method-tyk-oas - category: Page - show: True Me - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/request-method-tyk-classic - category: Page - show: True - - title: "Request Body" - category: Directory + - title: "Request Validation" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/middleware/validate-request-middleware + category: Page show: True - menu: - - title: "Overview" - path: /transform-traffic/request-body - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/request-body-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/request-body-tyk-classic - category: Page - show: True - - title: "Request Headers" - category: Directory + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/validate-request-tyk-oas + category: Page show: True - menu: - - title: "Overview" - path: /transform-traffic/request-headers - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/request-header-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/request-header-tyk-classic - category: Page - show: True - - title: "Response Body" - category: Directory + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/validate-request-tyk-classic + category: Page show: True - menu: - - title: "Overview" - path: /advanced-configuration/transform-traffic/response-body - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/response-body-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/response-body-tyk-classic - category: Page - show: True - - title: "Response Headers" - category: Directory + - title: "Mock Response" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/middleware/mock-response-middleware + category: Page show: True - menu: - - title: "Overview" - path: /advanced-configuration/transform-traffic/response-headers - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/response-header-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/response-header-tyk-classic - category: Page - show: True - - title: "Use case: SOAP to REST" - path: /advanced-configuration/transform-traffic/soap-rest + - title: "Tyk OAS key concepts" + path: /product-stack/tyk-gateway/middleware/mock-response-openapi category: Page show: True - - title: "Request Validation" - category: Directory + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/mock-response-tyk-oas + category: Page + show: True + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/mock-response-tyk-classic + category: Page + show: True + - title: "URL Rewriting" + category: Directory + show: True + menu: + - title: "Overview of URL Rewriting" + path: /transform-traffic/url-rewriting + category: Page + show: True + - title: "URL Rewrite middleware" + path: /product-stack/tyk-gateway/middleware/url-rewrite-middleware + category: Page + show: True + - title: "URL Rewriting with Tyk OAS" + path: /product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas + category: Page + show: True + - title: "URL Rewriting with Tyk Classic" + path: /product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic + category: Page + show: True + - title: "Virtual Endpoints" + category: Directory + show: True + menu: + - title: "Overview" + path: /advanced-configuration/compose-apis/virtual-endpoints + category: Page + show: True + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas + category: Page + show: True + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic + category: Page + show: True + - title: "Examples" + path: /advanced-configuration/compose-apis/demo-virtual-endpoint + category: Page show: True + - title: "Transform SOAP to REST" + path: /advanced-configuration/transform-traffic/soap-rest + category: Page + show: True + - title: "Go Templates" + path: /product-stack/tyk-gateway/references/go-templates + category: Page + show: True + - title: "JQ Transforms" + path: /advanced-configuration/transform-traffic/jq-transformations + category: Page + show: True + - title: "Request Context Variables" + path: /context-variables + category: Page + show: True + - title: "Handle gateway events" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/report-monitor-trigger-events + category: Page + show: True + - title: "Event types" + path: /basic-config-and-security/report-monitor-trigger-events/event-types + category: Page + show: True + - title: "Event metadata" + path: /basic-config-and-security/report-monitor-trigger-events/event-data + category: Page + show: True + - title: "Event handling with webhooks" + category: Directory + show: True + menu: + - title: "Overview" + path: /basic-config-and-security/report-monitor-trigger-events/webhooks + category: Page + show: True + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-oas + category: Page + show: True + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/event-webhook-tyk-classic + category: Page + show: True + - title: "Logging events" + path: /product-stack/tyk-gateway/basic-config-and-security/report-monitor-and-trigger-events/log-handlers + category: Page + show: True + - title: "Custom event handlers" + path: /basic-config-and-security/report-monitor-trigger-events/custom-handlers-javascript + category: Page + show: True + - title: "Advanced quota monitoring" + path: /basic-config-and-security/report-monitor-trigger-events/monitors + category: Page + show: True + - title: "Custom error templates" + path: /advanced-configuration/error-templates + category: Page + show: True + - title: "Version APIs" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning + category: Page + show: True + - title: "Tyk OAS versioning" + path: /getting-started/key-concepts/oas-versioning + category: Page + show: True + - title: "Tyk Classic versioning" + path: /getting-started/key-concepts/versioning + category: Page + show: True + - title: "Integration options" + category: Directory + show: False + menu: + - title: "Overview" + path: /advanced-configuration/integrate + category: Page + show: False + - title: "API authentication mode" + category: Directory + show: False menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/validate-request-middleware - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/validate-request-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/validate-request-tyk-classic + - title: "API Authentication Mode" + path: /advanced-configuration/integrate/api-auth-mode category: Page - show: True - - title: "Mock Response" + show: False + - title: "Observability" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability + category: Page + show: True + - title: "Log traffic" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/logging-api-traffic + category: Page + show: True + - title: "Detailed recording" + path: /product-stack/tyk-gateway/basic-config-and-security/logging-api-traffic/detailed-recording + category: Page + show: True + - title: "Do Not Track" category: Directory show: True menu: - title: "Overview" - path: /product-stack/tyk-gateway/middleware/mock-response-middleware - category: Page - show: True - - title: "Tyk OAS key concepts" - path: /product-stack/tyk-gateway/middleware/mock-response-openapi + path: /product-stack/tyk-gateway/middleware/do-not-track-middleware category: Page show: True - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/mock-response-tyk-oas + path: /product-stack/tyk-gateway/middleware/do-not-track-tyk-oas category: Page show: True - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/mock-response-tyk-classic + path: /product-stack/tyk-gateway/middleware/do-not-track-tyk-classic category: Page show: True - - title: "URL Rewriting" + - title: "System metrics" + path: /basic-config-and-security/report-monitor-trigger-events/instrumentation + category: Page + show: True + - title: "System logs" + path: /log-data + category: Page + show: True + - title: "OpenTelemetry" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview + category: Page + show: true + - title: "Datadog" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog + category: Page + show: true + - title: "Dynatrace" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace + category: Page + show: true + - title: "Elasticsearch" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic + category: Page + show: true + - title: "Jaeger" category: Directory show: True menu: - - title: "Overview of URL Rewriting" - path: /transform-traffic/url-rewriting + - title: "Docker" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger category: Page - show: True - - title: "URL Rewrite middleware" - path: /product-stack/tyk-gateway/middleware/url-rewrite-middleware - category: Page - show: True - - title: "URL Rewriting with Tyk OAS" - path: /product-stack/tyk-gateway/middleware/url-rewrite-tyk-oas - category: Page - show: True - - title: "URL Rewriting with Tyk Classic" - path: /product-stack/tyk-gateway/middleware/url-rewrite-tyk-classic + show: true + - title: "Kubernetes" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s category: Page - show: True - - title: "Virtual Endpoints" + show: true + - title: "New Relic" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic + category: Page + show: true + - title: "OpenTracing" + category: Directory + show: True + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview + category: Page + show: True + - title: "Jaeger" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger + category: Page + show: True + - title: "New Relic" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic + category: Page + show: True + - title: "Zipkin" + path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin + category: Page + show: True + - title: "Custom plugins" + category: Directory + show: True + menu: + - title: "Overview" + path: /plugins + category: Page + show: True + - title: "Quickstarts" + category: Directory + show: true + menu: + - title: "Go" category: Directory show: True menu: - title: "Overview" - path: /advanced-configuration/compose-apis/virtual-endpoints + path: /plugins/tutorials/quick-starts/go/quickstart category: Page show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/virtual-endpoint-tyk-classic + - title: "Dashboard" + path: /plugins/tutorials/quick-starts/go/dashboard category: Page show: True - - title: "Examples" - path: /advanced-configuration/compose-apis/demo-virtual-endpoint + - title: "Open source" + path: /plugins/tutorials/quick-starts/go/open-source category: Page show: True - - title: "Go Templates" - path: /product-stack/tyk-gateway/references/go-templates + - title: "Plugins Hub" + path: /plugins/plugin-hub + catgory: Page + show: True + - title: "API Configuration" + category: Directory + show: true + menu: + - title: "Overview" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview + category: Page + show: True + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas category: Page show: True - - title: "JQ Transforms" - path: /advanced-configuration/transform-traffic/jq-transformations + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic category: Page show: True - - title: "API Versioning" + - title: "Plugin Types" + path: /plugins/plugin-types/plugintypes category: Directory show: True menu: - title: "Overview" - path: /product-stack/tyk-gateway/advanced-configurations/api-versioning/api-versioning + path: /plugins/plugin-types/plugintypes category: Page show: True - - title: "Tyk OAS versioning" - path: /getting-started/key-concepts/oas-versioning + - title: "Request Plugins" + path: /plugins/plugin-types/request-plugins category: Page show: True - - title: "Tyk Classic versioning" - path: /getting-started/key-concepts/versioning + - title: "Authentication Plugins" + path: /plugins/plugin-types/auth-plugins/auth-plugins category: Page show: True - - title: "Integration options" - category: Directory - show: True - menu: - - title: "Overview" - path: /advanced-configuration/integrate + - title: "Authentication Plugin Caching" + path: /plugins/plugin-types/auth-plugins/id-extractor + category: Page + show: True + - title: "Response Plugins" + path: /plugins/plugin-types/response-plugins + category: Page + show: True + - title: "Analytics Plugins" + path: /plugins/plugin-types/analytics-plugins/ category: Page show: True - - title: "3rd Party identity providers" + - title: "Per-endpoint Plugins" category: Directory show: True menu: - - title: "3rd Party Identity Providers" - path: /advanced-configuration/integrate/3rd-party-identity-providers - category: Page - show: True - - title: "Custom" - path: /advanced-configuration/integrate/3rd-party-identity-providers/custom - category: Page - show: True - - title: "Login into the Dashboard using LDAP - Guide" - path: /advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib - category: Page - show: True - - title: "LDAP" - path: /advanced-configuration/integrate/3rd-party-identity-providers/ldap - category: Page - show: True - - title: "Social Provider" - path: /advanced-configuration/integrate/3rd-party-identity-providers/social - category: Page - show: True - - title: "Log into an APP with Google" - path: /advanced-configuration/integrate/3rd-party-identity-providers/social/app-login-with-gplus + - title: "Overview" + path: /product-stack/tyk-gateway/middleware/endpoint-plugin category: Page show: True - - title: "Log into Dashboard with Google" - path: /advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas category: Page show: True - - title: "API authentication mode" - category: Directory - show: True - menu: - - title: "API Authentication Mode" - path: /advanced-configuration/integrate/api-auth-mode + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic category: Page show: True - - title: "Observability" + - title: "Plugin bundles" category: Directory show: True menu: + - title: "Serving Plugins to Tyk Gateway" + path: /plugins/how-to-serve-plugins + category: Page + show: False - title: "Overview" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/observability + path: /plugins/how-to-serve-plugins/plugin-bundles category: Page show: True - - title: "Metrics" - path: /basic-config-and-security/report-monitor-trigger-events/instrumentation + - title: "Tyk OAS configuration" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas category: Page show: True - - title: "System logs" - path: /log-data + - title: "Tyk Classic configuration" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic category: Page show: True - - title: "OpenTelemetry" - category: Directory + - title: "Bundle CLI tool" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview - category: Page - show: true - - title: "Datadog" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_datadog - category: Page - show: true - - title: "Dynatrace" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_dynatrace - category: Page - show: true - - title: "Elasticsearch" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_elastic - category: Page - show: true - - title: "Jaeger" - category: Directory - show: True - menu: - - title: "Docker" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger - category: Page - show: true - - title: "Kubernetes" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_jaeger_k8s - category: Page - show: true - - title: "New Relic" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/otel_new_relic - category: Page - show: true - - title: "OpenTracing" + - title: "Supported Languages" + category: Directory + show: True + menu: + - title: "Overview" + path: /plugins/supported-languages + category: Page + show: True + - title: "Golang" category: Directory show: True menu: - title: "Overview" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/open-tracing-overview + path: /plugins/supported-languages/golang category: Page show: True - - title: "Jaeger" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/jaeger + - title: "Writing Go Plugins" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins category: Page show: True - - title: "New Relic" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/newrelic + - title: "Go Plugin Development Flow" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow category: Page show: True - - title: "Zipkin" - path: /product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-tracing/zipkin + - title: "Go Plugin Compiler" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler category: Page - show: True - - title: "Custom plugins" - category: Directory - show: True - menu: - - title: "Overview" - path: /plugins - category: Page - show: True - - title: "Quickstarts" - category: Directory - show: true - menu: - - title: "Go" - category: Directory - show: True - menu: - - title: "Overview" - path: /plugins/tutorials/quick-starts/go/quickstart - category: Page - show: True - - title: "Dashboard" - path: /plugins/tutorials/quick-starts/go/dashboard - category: Page - show: True - - title: "Open source" - path: /plugins/tutorials/quick-starts/go/open-source - category: Page - show: True - - title: "Plugins Hub" - path: /plugins/plugin-hub - catgory: Page - show: True - - title: "API Configuration" - category: Directory - show: true - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/overview + show: True + - title: "Loading Go Plugins" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins category: Page show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/oas + - title: "Go Plugin Examples" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples category: Page show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/api-config/classic + - title: "OpenTelemetry Instrumentation" + path: /product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins category: Page show: True - - title: "Plugin Types" - path: /plugins/plugin-types/plugintypes + - title: "Javascript" category: Directory show: True menu: - title: "Overview" - path: /plugins/plugin-types/plugintypes + path: /plugins/supported-languages/javascript-middleware category: Page show: True - - title: "Request Plugins" - path: /plugins/plugin-types/request-plugins + - title: "JS Scripting Guide" + path: /plugins/supported-languages/javascript-middleware/middleware-scripting-guide category: Page show: True - - title: "Authentication Plugins" - path: /plugins/plugin-types/auth-plugins/auth-plugins + - title: "JavaScript API" + path: /plugins/supported-languages/javascript-middleware/javascript-api category: Page show: True - - title: "Authentication Plugin Caching" - path: /plugins/plugin-types/auth-plugins/id-extractor + - title: "Using JS plugins with Tyk Self-Managed" + path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro category: Page show: True - - title: "Response Plugins" - path: /plugins/plugin-types/response-plugins + - title: "Using JS plugins with Tyk Hybrid" + path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid category: Page show: True - - title: "Analytics Plugins" - path: /plugins/plugin-types/analytics-plugins/ + - title: "Using JS plugins with Tyk OSS" + path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce category: Page show: True - - title: "Per-endpoint Plugins" - category: Directory + - title: "WAF (OSS) ModSecurity Plugin example" + path: /plugins/supported-languages/javascript-middleware/waf-js-plugin + category: Page show: True - menu: - - title: "Overview" - path: /product-stack/tyk-gateway/middleware/endpoint-plugin - category: Page - show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-oas - category: Page - show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/middleware/endpoint-plugin-tyk-classic - category: Page - show: True - - title: "Plugin bundles" + - title: "Rich Plugins" + path: /plugins/supported-languages/rich-plugins + category: Page + show: True + - title: "Rich Plugins - How do They work?" + path: /plugins/supported-languages/rich-plugins/rich-plugins-work + category: Page + show: True + - title: "Rich Plugins - Data Structures" + path: /plugins/supported-languages/rich-plugins/rich-plugins-data-structures + category: Page + show: True + - title: "Rich Plugin - Python" category: Directory show: True menu: - - title: "Serving Plugins to Tyk Gateway" - path: /plugins/how-to-serve-plugins - category: Page - show: False - title: "Overview" - path: /plugins/how-to-serve-plugins/plugin-bundles + path: /plugins/supported-languages/rich-plugins/python/python category: Page show: True - - title: "Tyk OAS configuration" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/oas + - title: "Tutorial- Custom Authentication Plugin" + path: /plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial category: Page show: True - - title: "Tyk Classic configuration" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/classic + - title: "Tutorial - Add Python Plugin To Your Gateway" + path: /plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api + category: Page + show: True + - title: "Tyk Python API methods" + path: /plugins/supported-languages/rich-plugins/python/tyk-python-api-methods category: Page show: True - - title: "Bundle CLI tool" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/bundles/bundle-cli + - title: "Performance" + path: /plugins/supported-languages/rich-plugins/python/performance category: Page show: True - - title: "Supported Languages" + - title: "Rich Plugin - gRPC" category: Directory show: True menu: - title: "Overview" - path: /plugins/supported-languages + path: /plugins/supported-languages/rich-plugins/grpc category: Page show: True - - title: "Golang" - category: Directory + - title: "Key Concepts" + path: /plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin + category: Page show: True - menu: - - title: "Overview" - path: /plugins/supported-languages/golang - category: Page - show: True - - title: "Writing Go Plugins" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/writing-go-plugins - category: Page - show: True - - title: "Go Plugin Development Flow" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-development-flow - category: Page - show: True - - title: "Go Plugin Compiler" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-compiler - category: Page - show: True - - title: "Loading Go Plugins" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/loading-go-plugins - category: Page - show: True - - title: "Go Plugin Examples" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/golang/go-plugin-examples - category: Page - show: True - - title: "Javascript" - category: Directory + - title: "Getting Started" + path: /plugins/supported-languages/rich-plugins/grpc/getting-started-python + category: Page show: True + - title: "Tutorials" + category: Directory + show: true menu: - - title: "Overview" - path: /plugins/supported-languages/javascript-middleware - category: Page - show: True - - title: "JS Scripting Guide" - path: /plugins/supported-languages/javascript-middleware/middleware-scripting-guide - category: Page - show: True - - title: "JavaScript API" - path: /plugins/supported-languages/javascript-middleware/javascript-api - category: Page - show: True - - title: "Using JS plugins with Tyk Self-Managed" - path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-pro + - title: "Create Java Request Transformation Plugin" + path: /plugins/supported-languages/rich-plugins/grpc/request-transformation-java category: Page show: True - - title: "Using JS plugins with Tyk Hybrid" - path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-hybrid + - title: "Create .NET Custom Authentication Plugin" + path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net category: Page show: True - - title: "Using JS plugins with Tyk OSS" - path: /plugins/supported-languages/javascript-middleware/install-middleware/tyk-ce + - title: "Create NodeJS Custom Authentication Plugin" + path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs category: Page show: True - - title: "WAF (OSS) ModSecurity Plugin example" - path: /plugins/supported-languages/javascript-middleware/waf-js-plugin + - title: "Create Python Custom Authentication Plugin" + path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-python category: Page show: True - - title: "Rich Plugins" - path: /plugins/supported-languages/rich-plugins + - title: "Performance" + path: /plugins/supported-languages/rich-plugins/grpc/performance category: Page show: True - - title: "Rich Plugins - How do They work?" - path: /plugins/supported-languages/rich-plugins/rich-plugins-work + - title: "Rich Plugin - Lua" + category: Directory + show: True + menu: + - title: "LuaJIT" + path: /plugins/supported-languages/rich-plugins/luajit category: Page show: True - - title: "Rich Plugins - Data Structures" - path: /plugins/supported-languages/rich-plugins/rich-plugins-data-structures + - title: "Requirements" + path: /plugins/supported-languages/rich-plugins/luajit/requirements category: Page show: True - - title: "Rich Plugin - Python" - category: Directory - show: True - menu: - - title: "Overview" - path: /plugins/supported-languages/rich-plugins/python/python - category: Page - show: True - - title: "Tutorial- Custom Authentication Plugin" - path: /plugins/supported-languages/rich-plugins/python/custom-auth-python-tutorial - category: Page - show: True - - title: "Tutorial - Add Python Plugin To Your Gateway" - path: /plugins/supported-languages/rich-plugins/python/tutorial-add-demo-plugin-api - category: Page - show: True - - title: "Tyk Python API methods" - path: /plugins/supported-languages/rich-plugins/python/tyk-python-api-methods - category: Page - show: True - - title: "Performance" - path: /plugins/supported-languages/rich-plugins/python/performance - category: Page - show: True - - title: "Rich Plugin - gRPC" - category: Directory - show: True - menu: - - title: "Overview" - path: /plugins/supported-languages/rich-plugins/grpc - category: Page - show: True - - title: "Key Concepts" - path: /plugins/supported-languages/rich-plugins/grpc/write-grpc-plugin - category: Page - show: True - - title: "Getting Started" - path: /plugins/supported-languages/rich-plugins/grpc/getting-started-python - category: Page - show: True - - title: "Tutorials" - category: Directory - show: true - menu: - - title: "Create Java Request Transformation Plugin" - path: /plugins/supported-languages/rich-plugins/grpc/request-transformation-java - category: Page - show: True - - title: "Create .NET Custom Authentication Plugin" - path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-dot-net - category: Page - show: True - - title: "Create NodeJS Custom Authentication Plugin" - path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-nodejs - category: Page - show: True - - title: "Create Python Custom Authentication Plugin" - path: /plugins/supported-languages/rich-plugins/grpc/custom-auth-python - category: Page - show: True - - title: "Performance" - path: /plugins/supported-languages/rich-plugins/grpc/performance - category: Page - show: True - - title: "Rich Plugin - Lua" - category: Directory + - title: "Lua Plugin Tutorial" + path: /plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api + category: Page show: True - menu: - - title: "LuaJIT" - path: /plugins/supported-languages/rich-plugins/luajit - category: Page - show: True - - title: "Requirements" - path: /plugins/supported-languages/rich-plugins/luajit/requirements - category: Page - show: True - - title: "Lua Plugin Tutorial" - path: /plugins/supported-languages/rich-plugins/luajit/tutorial-add-demo-plugin-api - category: Page - show: True - - title: "OpenTelemetry Instrumentation" - path: /product-stack/tyk-gateway/advanced-configurations/plugins/otel-plugins - category: Page - show: True - - title: "CICD Plugin Build" - path: /plugins/get-started-selfmanaged/deploy-plugins - category: Page - show: True - - title: "Error Templates" - path: /advanced-configuration/error-templates + - title: "CICD Plugin Build" + path: /plugins/get-started-selfmanaged/deploy-plugins + category: Page + show: False + - title: "TLS and certificate management" + category: Directory + show: True + menu: + - title: "TLS and SSL" + path: /basic-config-and-security/security/tls-and-ssl category: Page show: True - - title: "Non-HTTP Protocols" - category: Directory + - title: "Certificate Pinning" + path: /security/certificate-pinning + category: Page show: True - menu: - - title: "Overview" - path: /advanced-configuration/other-protocols - category: Page - show: True - - title: "gRPC Proxy" - path: /key-concepts/grpc-proxy - category: Page - show: True - - title: "TCP Proxy" - path: /key-concepts/tcp-proxy - category: Page - show: True - - title: "SSE Proxy" - path: /advanced-configuration/sse-proxy - category: Page - show: True - - title: "WebSocket Proxy" - path: /advanced-configuration/websockets - category: Page - show: True - - title: "Request Context Variables" - path: /context-variables + - title: "Other (non-HTTP) protocols" + category: Directory + show: True + menu: + - title: "Overview" + path: /advanced-configuration/other-protocols + category: Page + show: True + - title: "gRPC Proxy" + path: /key-concepts/grpc-proxy + category: Page + show: True + - title: "TCP Proxy" + path: /key-concepts/tcp-proxy + category: Page + show: True + - title: "SSE Proxy" + path: /advanced-configuration/sse-proxy category: Page show: True - - title: "Securing System Payloads" - path: /tyk-configuration-reference/securing-system-payloads + - title: "WebSocket Proxy" + path: /advanced-configuration/websockets category: Page show: True - title: "API documentation" @@ -2391,102 +2355,106 @@ menu: path: /tyk-dashboard category: Page show: True - - title: "Tyk Classic Endpoint Designer" - path: /advanced-configuration/transform-traffic/endpoint-designer - category: Page - show: True - title: "Advanced configurations" + category: Directory + show: False + menu: + - title: "Traffic analytics" category: Directory show: True menu: - - title: "User Management" - category: Directory + - title: "Overview" + path: /tyk-dashboard-analytics + category: Page show: True - menu: - - title: "Overview" - path: /tyk-dashboard/rbac - category: Page - show: True - - title: "User Permissions" - path: /basic-config-and-security/security/dashboard/user-roles - category: Page - show: True - - title: "Managing Users" - path: /basic-config-and-security/security/dashboard/create-users - category: Page - show: True - - title: "Managing User Groups" - path: /basic-config-and-security/security/dashboard/create-user-groups - category: Page - show: True - - title: "Search Users" - path: /basic-config-and-security/security/dashboard/search-users - category: Page - show: True - - title: "Password Policy" - path: /basic-config-and-security/security/password-policy - category: Page - show: True - - title: "API Ownership" - path: /product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership - category: Page - show: True - - title: "Dashboard Administration" - category: Directory + - title: "Traffic Overview" + path: /tyk-dashboard-analytics/traffic-overview + category: Page show: True - menu: - - title: "Overview" - path: /basic-config-and-security/security/dashboard/dashboard-admin-api - category: Page - show: True - - title: "Organisations" - path: /basic-config-and-security/security/dashboard/organisations - category: Page - show: True - - title: "Analytics" + - title: "Activity logs" + path: /tyk-stack/tyk-manager/analytics/log-browser + category: Page + show: True + - title: "Activity by API" + path: /tyk-dashboard-analytics/traffic-per-api + category: Page + show: True + - title: "Activity by Key" + path: /tyk-dashboard-analytics/traffic-per-token + category: Page + show: True + - title: "Activity by endpoint" + path: /product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint + category: Page + show: True + - title: "Activity by location" + path: /tyk-stack/tyk-manager/analytics/geographic-distribution + category: Page + show: True + - title: "Activity by error" + path: /tyk-dashboard-analytics/error-overview + category: Page + show: True + - title: "Activity by OAuth Client" + path: /tyk-dashboard-analytics/traffic-per-oauth-client + category: Page + show: True + - title: "User management" + category: Directory + show: True + menu: + - title: "Overview" + path: /tyk-dashboard/rbac + category: Page + show: True + - title: "User Permissions" + path: /basic-config-and-security/security/dashboard/user-roles + category: Page + show: True + - title: "Managing Users" + path: /basic-config-and-security/security/dashboard/create-users + category: Page + show: True + - title: "Managing User Groups" + path: /basic-config-and-security/security/dashboard/create-user-groups + category: Page + show: True + - title: "Search Users" + path: /basic-config-and-security/security/dashboard/search-users + category: Page + show: True + - title: "Password Policy" + path: /basic-config-and-security/security/password-policy + category: Page + show: True + - title: "API Ownership" + path: /product-stack/tyk-dashboard/advanced-configurations/user-management/api-ownership + category: Page + show: True + - title: "API governance" + category: Directory + show: True + menu: + - title: "API Templates" category: Directory show: True menu: - title: "Overview" - path: /tyk-dashboard-analytics - category: Page - show: True - - title: "Traffic Overview" - path: /tyk-dashboard-analytics/traffic-overview - category: Page - show: True - - title: "Activity logs" - path: /tyk-stack/tyk-manager/analytics/log-browser - category: Page - show: True - - title: "Activity by API" - path: /tyk-dashboard-analytics/traffic-per-api - category: Page - show: True - - title: "Activity by Key" - path: /tyk-dashboard-analytics/traffic-per-token - category: Page - show: True - - title: "Activity by endpoint" - path: /product-stack/tyk-dashboard/advanced-configurations/analytics/activity-by-endpoint - category: Page - show: True - - title: "Activity by location" - path: /tyk-stack/tyk-manager/analytics/geographic-distribution + path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-overview category: Page show: True - - title: "Activity by errors" - path: /tyk-dashboard-analytics/error-overview + - title: "Using the Template Designer" + path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-designer category: Page show: True - - title: "Traffic per OAuth Client" - path: /tyk-dashboard-analytics/traffic-per-oauth-client + - title: "Using the Dashboard API" + path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-api category: Page show: True - - title: "Security" - category: Directory - show: False - menu: + - title: "API Categories" + path: /product-stack/tyk-dashboard/advanced-configurations/api-categories + category: Page + show: True - title: "Open Policy Agent (OPA)" category: Directory show: True @@ -2503,7 +2471,27 @@ menu: path: /product-stack/tyk-dashboard/advanced-configurations/open-policy-agent/opa-permissions-example category: Page show: True - - title: "Storage" + - title: "API Endpoint Designer" + path: /advanced-configuration/transform-traffic/endpoint-designer + category: Page + show: True + - title: "System administration" + category: Directory + show: True + menu: + - title: "Dashboard administration" + path: /basic-config-and-security/security/dashboard/dashboard-admin-api + category: Page + show: True + - title: "Organizations" + path: /basic-config-and-security/security/dashboard/organisations + category: Page + show: True + - title: "Dashboard audit logs" + path: /product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log + category: Page + show: True + - title: "Persistent storage" category: Directory show: True menu: @@ -2515,30 +2503,38 @@ menu: path: /product-stack/tyk-dashboard/advanced-configurations/data-storage-configuration category: Page show: True - - title: "API Templates" + - title: "Integration with 3rd Party Identity Providers" category: Directory show: True menu: - title: "Overview" - path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-overview + path: /advanced-configuration/integrate/3rd-party-identity-providers category: Page show: True - - title: "Using the Template Designer" - path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-designer + - title: "Custom" + path: /advanced-configuration/integrate/3rd-party-identity-providers/custom category: Page show: True - - title: "Using the Dashboard API" - path: /product-stack/tyk-dashboard/advanced-configurations/templates/template-api + - title: "Login into the Dashboard using LDAP - Guide" + path: /advanced-configuration/integrate/3rd-party-identity-providers/dashboard-login-ldap-tib + category: Page + show: True + - title: "LDAP" + path: /advanced-configuration/integrate/3rd-party-identity-providers/ldap + category: Page + show: True + - title: "Social Provider" + path: /advanced-configuration/integrate/3rd-party-identity-providers/social + category: Page + show: True + - title: "Log into an APP with Google" + path: /advanced-configuration/integrate/3rd-party-identity-providers/social/app-login-with-gplus + category: Page + show: True + - title: "Log into Dashboard with Google" + path: /advanced-configuration/integrate/3rd-party-identity-providers/social/dashboard-login-with-gplus category: Page show: True - - title: "API Categories" - path: /product-stack/tyk-dashboard/advanced-configurations/api-categories - category: Page - show: True - - title: "Dashboard audit logs" - path: /product-stack/tyk-dashboard/advanced-configurations/analytics/audit-log - category: Page - show: True - title: "API documentation" category: Directory show: True From a60ab4b2e73709823e22b361c9d2c6a7950f07de Mon Sep 17 00:00:00 2001 From: Master Date: Fri, 13 Dec 2024 18:22:53 +0530 Subject: [PATCH 34/39] New IA - Community Support (#5814) --- .../release-notes-condensed-template.md | 2 +- .../others/release-notes-learner-template.md | 2 +- tyk-docs/content/contribute.md | 26 - .../backups/backup-apis-and-policies.md | 33 - .../faq.md => developer-support/community.md} | 3 +- .../inclusive-naming.md => contributing.md} | 65 +- tyk-docs/content/developer-support/faq.md | 286 ++++ ...-to-reduce-cpu-usage-in-a-redis-cluster.md | 56 - ..._is_the_performance_impact_of_analytics.md | 61 - .../release-notes/archived.md | 4 +- .../developer-support/release-notes/cloud.md | 2 +- .../release-notes/dashboard.md | 18 +- .../release-notes/gateway.md | 16 +- .../release-notes/helm-chart.md | 4 +- .../developer-support/release-notes/mdcb.md | 4 +- .../release-notes/operator.md | 4 +- .../developer-support/release-notes/portal.md | 4 +- .../developer-support/release-notes/pump.md | 4 +- .../release-notes/special-releases.md | 2 +- .../developer-support/release-notes/sync.md | 4 +- .../developer-support/release-notes/tib.md | 4 +- .../support.md} | 2 + .../cloud/upgrade-cloud-saas.md | 63 - .../cloud/upgrade-go-plugin.md | 94 -- .../deployment-model/cloud/upgrade-hybrid.md | 90 -- .../deployment-model/open-source.md | 86 -- .../deployment-model/self-managed/docker.md | 20 - .../deployment-model/self-managed/helm.md | 36 - .../self-managed/kubernetes.md | 86 -- .../linux-distributions/self-managed-deb.md | 237 --- .../linux-distributions/self-managed-rpm.md | 260 ---- .../deployment-model/self-managed/overview.md | 57 - .../upgrading-tyk/go-plugins.md | 105 -- .../preparations/upgrade-guidelines.md | 54 - .../preparations/upgrade-strategies.md | 32 - .../content/developer-support/upgrading.md | 1287 +++++++++++++++++ .../content/frequently-asked-questions.md | 10 - .../check-current-gateway-version.md | 43 - .../datadog-logs-showup-as-errors.md | 36 - .../how-to-backup-tyk-cloud-deployment.md | 16 - .../how-to-backup-tyk.md | 91 -- .../tyk-gateway/index-range-error-logs.md | 2 +- .../troubleshooting/tyk-installation.md | 2 +- .../couldnt-unmarshal-config-error.md | 22 - .../tyk-cloud/account-billing/plans.md | 10 +- .../mdcb-example-minimising-latency.md | 2 +- tyk-docs/content/upgrading-tyk.md | 76 - tyk-docs/data/alias.json | 32 +- tyk-docs/data/menu.yaml | 210 +-- 49 files changed, 1732 insertions(+), 1933 deletions(-) delete mode 100644 tyk-docs/content/contribute.md delete mode 100644 tyk-docs/content/developer-support/backups/backup-apis-and-policies.md rename tyk-docs/content/{frequently-asked-questions/faq.md => developer-support/community.md} (95%) rename tyk-docs/content/developer-support/{documentation-projects/inclusive-naming.md => contributing.md} (81%) create mode 100644 tyk-docs/content/developer-support/faq.md delete mode 100644 tyk-docs/content/developer-support/frequently-asked-questions/how-to-reduce-cpu-usage-in-a-redis-cluster.md delete mode 100644 tyk-docs/content/developer-support/frequently-asked-questions/what_is_the_performance_impact_of_analytics.md rename tyk-docs/content/{frequently-asked-questions/sla-policies.md => developer-support/support.md} (97%) delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-cloud-saas.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-go-plugin.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/cloud/upgrade-hybrid.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/open-source.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/docker.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/helm.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/kubernetes.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-deb.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/linux-distributions/self-managed-rpm.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/deployment-model/self-managed/overview.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/go-plugins.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/preparations/upgrade-guidelines.md delete mode 100644 tyk-docs/content/developer-support/upgrading-tyk/preparations/upgrade-strategies.md create mode 100644 tyk-docs/content/developer-support/upgrading.md delete mode 100755 tyk-docs/content/frequently-asked-questions.md delete mode 100644 tyk-docs/content/frequently-asked-questions/check-current-gateway-version.md delete mode 100644 tyk-docs/content/frequently-asked-questions/datadog-logs-showup-as-errors.md delete mode 100644 tyk-docs/content/frequently-asked-questions/how-to-backup-tyk-cloud-deployment.md delete mode 100755 tyk-docs/content/frequently-asked-questions/how-to-backup-tyk.md delete mode 100644 tyk-docs/content/troubleshooting/tyk-installation/couldnt-unmarshal-config-error.md delete mode 100644 tyk-docs/content/upgrading-tyk.md diff --git a/tyk-docs/assets/others/release-notes-condensed-template.md b/tyk-docs/assets/others/release-notes-condensed-template.md index f5eddc2640..bc09cb89d8 100644 --- a/tyk-docs/assets/others/release-notes-condensed-template.md +++ b/tyk-docs/assets/others/release-notes-condensed-template.md @@ -144,7 +144,7 @@ Repeat the release notes section above for every patch here ## Further Information ### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. +Please refer to the [upgrading Tyk]({{< ref "developer-support/upgrading" >}}) page for further guidance on the upgrade strategy. ### API Documentation - [OpenAPI Document]({{}}) diff --git a/tyk-docs/assets/others/release-notes-learner-template.md b/tyk-docs/assets/others/release-notes-learner-template.md index 7f19ff2ff0..751164eb24 100644 --- a/tyk-docs/assets/others/release-notes-learner-template.md +++ b/tyk-docs/assets/others/release-notes-learner-template.md @@ -248,7 +248,7 @@ links to API documentation and FAQs. You can copy it from the previous release. ## Further Information ### Upgrading Tyk -Please refer to the [upgrading Tyk]({{< ref "upgrading-tyk" >}}) page for further guidance on the upgrade strategy. +Please refer to the [upgrading Tyk]({{< ref "developer-support/upgrading" >}}) page for further guidance on the upgrade strategy. ### API Documentation ### FAQ -Please visit our [Developer Support]({{< ref "frequently-asked-questions/faq" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. +Please visit our [Developer Support]({{< ref "developer-support/community" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. 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

    eSzHGn(=-yQhegvPI6X<=^2w2t+U9oll< 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

    !~;`dIGoNCO5gU%ybMJ)j%6bn^0C)I9f5 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%0Akk*>`)3dvzV%jJ--_+eUi!e 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%0DZMey>HPd7zz2n^z(ZQ3M6Nc}}xkW=V{Y2V(&t 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 z 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/assets/img/cloud/telemetry-elastic.png b/tyk-docs/assets/img/cloud/telemetry-elastic.png new file mode 100644 index 0000000000000000000000000000000000000000..0637bcb441c6c60e0f7a35a55e8c6347e3f89f56 GIT binary patch literal 404921 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

    o381!uxed?OOY zeUvj&_ouTj3Tz|DR`=d2QYXn~>@jP}J@FO#b)GAf1sqrzM)lau4RpM>z?5aM^QJuM zsh#h*9%`1x|DF`jJr*H4;RX@v2*wCKv$U7Gxp@zv_r|Nwn|RE<^8KcuY725*0KPh` z&0bgzI5U$d6B){#9>ApX)N*M%L@!n>as}8s_*MEA8C0-YLBnaRx)A6#zmF+jprYjI zysA6WHB15*=r-!8?Kz`S_dit(0*UsBrZ(`}ZVd-rxdHP$SF_GOSw=SYB$oQ1Tj zwXt*KG?`=S@wWLe94_8}saN$$K)asY*X2?6Wk(!Ss+6@t{`x_cX6-$n1Zi~%u%rMb z`{9PO>~`&5l&Wv;sOsWfqYA%mr6Y;FsHH`lKYV8zd$kiNyIutJ?ePpwI!*=@u0HyW zDyeyBD}^t8uj0ryA>Ev1_RR#$zyPQ%NW!e_T@Eg3C^pwGKh4jNwain;gY&A;_8(Q! zZnaUZpRsB9m~ykXu`F!;P-LJahVc$NzP{9zGV+_~FbBk^=scKS^p7&tP3;kHJTW8?^8COvD zJwJNaBz^Wc7*Qc743cO2&+z=)U<4l6V1bN!EG`$ZL+V=}r(DlaQ*Sv(top0x!tsOOSJl0F@IDm$^F8 zuT=9z8xnhoLLKUL#dXb=2P~HJ)PZyJTLs?1dCmY%^scP|Fj8xg!oqR5YVrj*~`}yh}QBwu(Q&@+-gtH9H>&1q% z+R{5bk>{76@dg-3KndYg9^5ri=2gdLk^)O^ri8Lb+SA>i3<8XbibEB-uX;NTXtK~q z-0G2)=j%<#DePu*S{4sLT&6()Z|Mx$uT(o=PP01g={>*tz#cCE4QD|1qCgP190XrV zDzl&$ix5#hG>ZEa!a!}LwDHFp<-gDJUw^ub*>rnzuNUX{1e<{57&tz(-fvxQZT!1# zNFjXwMFHwoTQ9?506^dnEAm!6#>0Kx5J(v>)otkjCB7ZmUg310Z#BmG&Hci@! z{CQ;6Z0977-8uxk>YO+57?5~v|A~6z*GW5E46;i!fxxzOEkImfnkjact>{BpR9#)} z-=;PUw`e9a`ylllCem5FWkg4%V5U)RNI2!(T}FNQBtgYPg*ooq9xnPTZS}j^o9Nwx zo>=O+lRO*QlQsrRE_5ElG*6NdpmMIqmnqM$kLQo<)D`2-tT|Lh|8$EHKYMgSqfpF?-vvH){sSM}NQ1AU}lWV&Av#h4IGOqYOYgHB9mqbWpheAqDNkSjEzN-oGlm zSDga1pU10auUJ+!evOR`NqOQB&pp?Zi9_aqqBqu7ir0h!e6I+w$HmpE=bc1t`CV$y z`cDGKQm-Y~H?p_}U28~D!p|)KdB84Aum3keufnx(a2OC2#^?GCGg#K}2oONH<_}dc zriEl3-%%-oY3nXcjrT$eVI(n z60<7~4v`qx4UYV`77$T5^^ju&>QYknN6&?ii1#~sl~rA&wdh;!01?sHmY(0Tb1ZWcV`N5Z?oEfQ=S$g9OqQqt39iWU&N>jR2 zae|%P0I-MgjY$lw?>l!Q&8XQa`G$39vTG9#<*VCFs@PD1UcC39;v_DfTQ<@omW=Hq z!NQT~#9YzMgcuaGb3C|C#*(Tu^6Jtsn?;`SI!y!dk=gzYYjHd2zNNAMYf{gj!4iRv znAkSkxHncU8ePbGt^?`N;3O2gatR+Bfw-JKACj*vG=eJL}x%j}>1nzuE{D zWo6917~N7N-#Lx>y=$vs&TbX`q9jGdrdH*Y1M|#4W7T9=$j$u8V3~s2Buk9lpp{x432~70DBfjZAswJ{*giZ4I6323dc& zwB^&PZTt&i`kF0&eh4L%Af`A@Z?Chi#^(A@)ep7jvUJp{!I-tWbrK96H-#o%6^rd* zSABCtrbqaoO#_zYi0(X7^wIa87z%B!qqssJa8*k|$SjxRQonNbMKmi}CNub|ZR?sa{qp}#5e`nMAct{;{wi60^S!jW9w?l}gvR~-fKHVPNsHsbY;xB@~ASu2z4 z)OXoeNZ*aR-*!nCdnV#bo>$MiTvD!S+AjrpAy@OnF4YdRNJWnFU-7@*S5oUL;q-`c zQasOVR==7wQ^D8>h*>ON#5+w_Fjz+=2`3NpI(l?jWTqXl{-6dZDgAe2QAHR>q#k^H zJlB_4|1}n21u6t{Z#b~&y?yOitU)<7r`&!9#h9)q?iTOik%cp6$^G-j z-u%9k7Uml;9#cMlM3||*Qt`ZwOUOvIm9fX~WA0fAHpu;Hw_ab`C{9P=Xk8T|^98sm zSem~_QiFQlzYz>SiS+*&wXF{t9#+O2xpfG=$qc(%9zd1qSuV1333&l6+RD@i(Y$k8 zpe*hnSt`;)@FT@!s4R3LmGYb=@_u=|(ZPD#wdPd`LNmGr1ZO#Kr4u^}y;ox6(RgRA z+kx1{9RCxHj3h_c@&Wx!c)et?FXa857l7gV{cwp(I`?;=UUHLUwWS2wnIrDWvsm0) z@V3MW)9p$y!;I(SJH7&rzLu^&=YSb32il*tTds}d9jOu*SvCSZzS(|_wL*^ZP6lLJk;gzk!JI+?mQ&b)G?WFDC#xX5n+8>rwsYZ;i z`X-H$Ir}X4x2ev45mA`INXvwyHuV6CEL>tw`oJs8J>e$Hi*UC6?IR}VCK>^A{4r_x za?Wl=H5ou-ssFAf~-IX5+7j8P=xA1&Wh$MEjj14I{NZ>r9{V1xXdG5r6r_T}+V@8AEW)Gh6@lu%TZkQVz=7imKx z%UC1p7!yKcFu84(kYvj;MRsFsGh-h&S+ZuEVTK_)W5|pd%NTxd_w&8?)?NGEd;9A> zk9lWa%Q?@pJzwXwNmNl^PjyaER?o6>*&S$$4<7k}CtwU(vTh(c6RbMt$g8#1iLbfK zh>d^--%H9FP4rxC33c@8b61fjR9=*+_-q?5XZJ({*PY^hb%udNytKI2p0-||mjyBh zCtyGFBufDSc!q1=;-eLMEItzGdF!X~*rzr`h0OoCHCe55VXkd$<$w~P)wLn6kV;X` z#EYR`pwb7h61_Ysr*6qc0tZHP0f^LF>TS#Wd_qUqD<5FOgnKZ%6_(3#jMc_yfb)TD zP-l1PnaQA`5*&c^f#0X{X|aqNK(&l=U!FaSEcKb|VYJ~d^UEYkc#bu{0F>#%wAOe@ z)fxvGk`&|WzYg6g@&8&gKJVxK$;8>9FQcOKyJ}|mp|Ez~8d57|(qli*QAA(~f^5&(4z^Bt{UR)A)f-lvQ8{+(J42(v ziPYVZ=fNVKhG6`W-RdPb)fY;kOD0QRKzC|!Aje{^BJ%=M3Xo~mn@?)4&djcwP46GH zUKw&(3-O{YGy;y2gD_*x$tA=waqeURuNUh1VxttAfv&rF*1>4BxKnR#{5;DnU?j3F zMn}|AJl1L%yykLs)>8-Q`?biI2~#t> zRqtv@*CowzR}*fF)C>EV_QwTZ&K-mSFdPf`72akTm$3EB(t^Fl(uaj$KIwYkvNrs4 zAneuw!b75y*w?|qSBU(lIP}#Qs@&X9o;-PL%gppXg-&W#smkQ(LJjl85W@U^NHLKi zi!*#9;l-XXlqI`7SUJtjZ$vs(Hn|Rt7=fgO7obc(3&JeBGJIavD_XZ0kGvYf-==Ov>9xhxm ze#>Uz@Kut15moIed^5@ZEb_e8C(XAY8cN9Raa%_6@;+FNkd+yc5;xB>UeOwH8t@rV zyEEBwEK<)&bvzN*G*_>olY3t&Z@s^ro0|H{=Twn}9y^$&%C;{mWB*`ffm|GLJ8w1y z<~^U590jg@+yDO2tpwunwx?ZVHW74ipPaPe{$2c3eNr%fc{BUA#AbNc&f;cI__S=n znB~&`+4d~o$3DflrqoKMjDt2l`XXTuA0+ebRcvm78 zH8-Y!zw}c|8|X^ieL~G@+CnBs8eIgG2hIT0q<(L(tRAIgZkvV@tiNn$A(IeV5kw4u ztCYHim4vIzd@i9W2h4?v9&p#QwnkRaAm}Ju6;pQf%~O%R49T@axz>0C0^pl~*SpY* z=V?p)>qVXC&nH#7B(6}=q$s@@T6^47piYxl+%C-A2?AX!WAsPT?b<2~-L|FjkUVCh z*isNJRV)iIWlmN_`W?~x!nD}mXsrEXB*Zt3|EgIXjaiSJPDa-++}@@PTprl_+6 z8KDo7V!+y2qwl(ceHB!g#Hu>q-YexzG13s_w2}m-YgoUJHKpaHK|O%Q*S!0^G7Nwd zSQE3N&v|55M4{NI;0WcZ-Z0JMsyL*z)RbEVQ0!SvnKWx7;Y!B8?X=}z*uB9liPJy= z*Ox0lCY5AT6+-UoauyjDBM`3f)bie(Lo+YIsX!8JRAOe?>6!=SO!~0|{fRKvlgunj zW9l^3cMKPh5%EzSCm`xUdEq%EmA-(X%MVkqOKR}Y3SOV zTDhOY0gbd%&Wv%E+OB>$#?s--zj_xE%oQpi`x3EIudqk};D;*h5DFy1T+Ohq=DiiA z*6ZE!fhg(|e*q4-@?tlfYmPs#`uJa{%eT3c7B)6E7dimpyPSO<6;NyGnGAB_ydp<@ zx(Ocvf;o%zU~ay@XL%>A82&8E+y8`U+|^(qh9L3cv#9%?lkSNPnl=}SdsgKH8eoe@k_M`+vH`Ik1}|4738m1|Rb}bnwxpo8 z1t52j3CW8Su@S#X5d&H4aLTm$70qA#o^t(9me&Tf&8Rc7*gX#|d=lu^1UWGL-s;$A zpq3M&ej-V5dRV;8;Gv~BauMjSW*nQ}zO0}91F9{x@?pv2#6>E482WN%#s6Ja*QA7u z4%~Ng;@H1d!=D8G`li6fyUOq6W80VCl&^x^OI$6x-r56Kkp^S$!m36I`)Q-9B(Lu& z0pXE8dpf5uut;2(v$(U6_bw={Ro)7j!4EWape+ZLEk(lTYyEM4-*gE0_fYp67G<0W zmoeKMl{AtgdrR32s~Ak2vOuZfJ=;Z=g5>lD!$VZilU!Rj=6jl-F2*}B!<#^y$LH^q55rh@;sFa4p1 zb3Nw4`guwA4z4fjIEGiMSB0@t63t^#_NbmN`hHZ&dE|v0ns=`cdMk?snn@a66*Nh- zPPp{88)BtQl(z+82v#Fyf%o2_)o!uH^@TbubYkRNTx8huhoVOQf=3upfZeH_w) zvh{Bl`@)7miHp_ho;I=mTLQlj_Q0&;Hgqf9Ris&Bw zv{zFMcd_@FYJ#Uwu0|nl|4f$JjnLH!Uf!YKGPwt{4xfgzu1jyA92JsxeF-o*)cCC8 zeZI-425#FAoXzgBM_wHK;?LS-Z!>a{*gz#ulvtc9skmF;e$1|F zwnHH%X7(s9a@2h^o?z8V)gh&-Oc9Sw)oIVP3tZuN!HOgHd4)sTf2eP0YG3~H*!@oe z9GA}JIo>*_U|#NBbIxDW>Wjtvi(NQwcv#(Y5AtGMvtz-RnI_&7r_Y@`+MS&2w-1H3 z0GMQRk0@AJ;(KaZHiq~9@KFlrx;eBpwem>1k^X!OEz*aV)?M*~JTij{3$O;G0Y|w; zP=a3fp%Sn(EEF|ONB6=rByz~l2B6mcR=lt41ak9?ErU_!xQpv_rL&GK-Fo6k(l;TU z&A!dkMO#?$o63jIei!vwFy@O*vbnk07YXPjl+L_4;O3!%!{H3R47jr{$i%F6A3{;o@O+unkfzzwPjshx$)P z{~yb2S0+Xisz%yY72_l5W!t~lpqBo)5-$_MGDvAH2_@LJ3tj*S;%7CD((Bxz*a*J${$0O)shjs#0{KIc7?( zH~&-c=rPBy7=jvvKNBK4a_rBD0&P&6jzxd@p7ofPyfs238ouJx?H(wJhg^9AK zoikIpjjfr;Xp5=Sq3Cw$Om3en`eO66|aFfzX z{eoo5B{#5nc>oMyn7r)5!KjXD7i$kuQf1=k`)M1!XgimjILhVn12g6$hI0ZU@Jqk( z*l;;rybP<@*=>l90l`(}@V{wjt=X!A8 z5=%|fqgLFv=8HBUfOCD_Jje)<~$neV~-6@QX^>o>NabcRYn_N^!dyo$)iV zya8Dx%zLxv&sLZq85YeZ}%3lY)C46Li|2eHldZv-SYJ(1T4|XaJawrxN75*I-T|_~YbnI(-(n3!sc`V)brh?+Emdsa7|%K}zSh z34VoV-Q3yU;kihygn{?F^O!O7C`U!i$Rt=OxBikgM_4=rn{xI=y5-u z<5yFQ(J8NMs2AcWr7=S|bqwVmTzO2Lw)*$Y5l2)XbIVgV0zAl_O*X5Q2lt=tkoDEi ziFOhOE>lvRZu8AW*z$Nm*1UIKpDrARn>l%!Nm-K zy|q^W%cL2pp#v}mrTzWS0?Dg>v4ytuKZlZEMf`%zG}oq04+~+Qc-NkM143T^VJZP4 z$!}hGC(;$qc_H>?z9BH{)Oy4)l|hIJxno$GjY%KsQ+z|T>Iw;vhCUm5{1n3q_mpkx zmWU2{*2%azn&K}@+~l1EHh?BJP}vcEA^yy#d~3dIrXGybJISwGBKl^X*lL z5UpOO2Ya9E*l9LL=ssKuzwoen63%R-@c7>8ofhde5&zn9ole?3tyz#*#48@t{lG74k-ghTWjfzzjYWZs%+(W{mYG89%-UrI&aQ^R!NHh(ZPvHN-@HF@ z=KTF{#jC;70h)mh|EV}B?=uI#S_9qc)qWz+16u9$NdM3sYw04UuQkUQOtdv`tKSRA z^%Cf{lf(qbAXh_n-HeM`L(qAS7*19GXoTxNv%FaxEwl&h`=B2N=ax#9OgafKhyPEZ4L<50s2OhgFTP zA`n7(ee5_55{J_vR}(*~q;sa;j`2qFKEdg%1+^%1bfj@2EUz#3KeJkh5NHl(WVQAn0h`QVdIqC8KMF@XkXkTW= zeAVDk3%wuCY@lo_$z5Df1ATO<#e0{14sJRLkZT+)S9Nyp_~5QV6;RQ|byBAj4Cl~E zrYpkIt7@6GlclLB`&k4D&9<*hw(@(&;#(^e8_~HJ0WHb4&Q&bwzU7^euvGDm zQRAHix4ET9DK*I*?2%E~xPUQ99~#(AId|Av$s*^WPU)()emiFZy4609e=Wc~6hZ6i zFR*}?I$WR>`k)g_kuopQfR>}%QzovN?D}92{#f&FFb}d!C*YV;CwRrz&uNqy~ zADC$2DX(e# zsLDk1&ikGNUdl{@Tc?M&h+E@v4H9o-o0LX7>HLCd8mmDl~<2BFO-L;0uFQ};9Lr5 zS>;_J2*`{T13scEy*K;9 z;M+?hkgSQ)xI}2~$O2ra#mQ_19+h0Naz%O?WB5WS6aiWO5j4HBq-l6-P9vwLj1bYF zFZNF|%wJ>j>B0+8DEe)-GAbbStSr@z_J{&-1UGBt1Yj7C8QUr`<72Ff1rXdNv+4ZY zWYx`O{;jLwYNV875sC+tcqYUB#fKy2)C;UecFK8W7{04Rlz&%K)Myf{eAx%r01 zMp{`v7n;Rh0AEK3TtvDONCWY9=z{10^fm2b<9tBaPm`yVFNcC=6`j*fpj~T77TgIE8*VGxTfZ2)xySB~vJ-q+b5hVvQsU)Y6JTN(lN67#H zP^)4z(x~%vq^uhi8oyxPBi_V3fXd4;$*`qH#V`p;E9N5bm5vaBlVs;w?;q%az`atp zl55nyDJ1^Ol}2q|uk^Y|G}oOdGA=Zhi6|Pfm~9fq^c^>obD57gLUd$Kh)u#K;k2bN z7%2dyF+N#vqJSx;-U2wfRK)2 z-}TAD(0VXH&7K%y4rj)G4B!FRqQamK8RQuK63F!IQM~W1lTQ86i?v9iTX@oal@6w} z8sCDyLi(^9K45W&M(O>xb4l|w{4KW6fOmRkWW&R${jvQzZckXD6wAKEy}e|k-qYLz5+C7Nt4-`*)&`L%cGruir_VDL-N)KyU=UmZc7EC^}lH$#6 zOZBfPaPMyrPv^ZKIu0(#Q)>@#Q@f;o#9+YMx)AG@-QpE{AK~equ`Q@99dD8=05fS1 zFfK`d_<#e-2YaH@<~of;rWLgRdvHRU2P4 zQTc#tU}U?04}Do2CWz^bW$<<46yNwvxAW`P7Gl#B3l#JyNhMA>WX}$v^x0SA3F)dN zooAm8QnlRlo$mq}c)^5g=Hu-B{EBxCmLK0EF5fm&IBZ*+9_6J5j^r!Y)u;b^DwWMV;y3MLH9y**%A~vdSuGZu~+waS~>!;`K9LaKjL zIQZ-K{=w5h?vvg_=p-HR(+>n~VKXE=9a5^s3}3MnK(Qt0a`in?c`o3W3x}2-Y5T{Z ztaBaPS|N7f1>>d?9$}vj&hB55G$=1k53YU_N;3&;(6CTAtY0iy*8dh#zmjXcYX#ln z(c4%cP(GuMujlcGRN{$_m@+qCS5wy7oP*N5M1nnJt)Y$NtQWC@)XcuwPFo{B)C7ES z5W06tiMO3KJ?+pY>{J9C{ZW=gvv1)o?jjbnE4E7O)o-`1@VG34c*|VTDL&1P0Fo_h z_c|Y#M#_H~>-|Hau;a@o5kjKZ(u*7+2UH$nEsK*q5U{sMOR}or)0d7tL&<>0T^~y< z=zDcsDt(j|84#V?AL}V}qZQ0~vzK!MH|y+2?dh>@^*`&Ez|S>4ZO!a-g?=0&D_Hf* zEaj|*vI5gD9mM`Qm8R`c0BH<@bAa{oh* z)|O3xlmB#H4V<2&&Y0wZk4VE8LinyDJ+$!_^v}9EZ)Ei;j5HOD83_dhr&S%=&HDYlO%ykWplP@#~(7T*dpzH#yXz><$GMX97B-^BPd+2#U#0W8C3Pn@Jlp5gx_E_nMaOYPxA>F*%Xot^&;JOL!FOwq?6D zKmheBRvPu1w?e4jGzUt#hZt5NbCG28-eqaJ)9lfyu@EnSKDpp+UVcl2ma3JIV{OrS zZSVogcO(JS>^nio3Yov8wsX-#&5WRzsOFInvN95am27KPldm)=;7p#Q)0=sp@Wdl+ zx5Uc>GPFxI{GA#?5k4QkA7sp{;XM|gtq{4NL3GANjG}RqSE|hyn2W*90ziC1%p)KL zIqpC33s}!psIMs ze{E=8j5zZ3gamubTlJdQ?uvUuP-1J^s4FqSt@Mn%#)-KKM%5TK*>@^9s!%-?D{vo( z4N5&Z`OWP=^kqy2V-Fr5J=kGw=tDhG>V0!&7wB_&4*zETQEH@a&9b^!0<)HtY#piX z&&!tgR;F7nGd%FCE2k3Dtb7~YXS{jRCmGT!_X4j*0Z6s=6ajgxnb8)8(^n z`i+eH-~H?kpB4#BfUZ{RBkInw4z-OYHt}3Nmyzl*re4J8l>Mz)Unvm z*Iz@)We8R*KxwCh;aB|*93>X>nP%6fvCj9JXp0tv@^eVUdnJGoj68Ohrh9zc-(liN z4SeE6J*)OV@Y=L^c7TOly1|z*;V21#CNGgrZ6GpUQmiG@y@vrpG(wCH3UHV}O--IOP95tY?JUKC z_2&g(AXv$XHvQrgtO$MPTXoz*QE9s4K7N zt@0XD)oktXm8pP&U4?uo%TYo@3xqSIY7H0Pp6W!P6zAg}A zvMH6Or(D7!eFRY;oTLrGOALCzZb^_R(?&b^A4DnZBTSE7_c8c40I^nd5x+#EZ-)%A zRdOcmO6}eWn~Eor4uj-D=9 zV{1{aisStm>Hgi4r6)Z|+F()OYYOaY&CX#l)uJQ)8OIG37S)i*zY)aC5 zs)k2#AB9Z7rr%5^RjM%AB_OMT*{0=#UNqE|s>Ur!tPbEy1;@I=|F685U;vGLK-cUq7q?Q-uv0zhKOdZN? zfWF7z-BF8-6?mp9zXx_b)Rej~8F{rG`6`qp7~SWY!K!O}7`vT1@;R>wV!(zuS*XSw z`H#40R{{eAH)io?3@uB&Y|Fwtd7_GZVO}iIzm(okq=SPc8>`CGvF+LShL6Z+T8hwi z%58VHvlfwKjY_25BDNfHI96YYF zyXC%ZL=`yY+5mIZ(BxABBksb#FLtc^WN~z^TT(8V??LEu-LJQDW&F@{h&;B`4fM0{ zeD+*VAiOySD?y4L$}FX|pn>rp@}DIjpN1u8bPvH#nT)s(w|kq&6o&PQq|=mpL+*9f zTq~7!p|uYfh%~*0t=?}bH$N`a zT_=I1-X-L~J#V}2e@~+L`Tle&;fTwWNiHwUvbdGb2Mf1a0doLytdB6G$ks}=OfJIv zcWk}C*55z*wz_zq;K74exvNJ3j$KUmcJOc^iQpkZ6RxlOu#Uao^`H-l%f3ogdvYGA zRqpXrrkD4E4CcYSVr}m4x$Kh!IMQ~f1cncKz!NQpS^7<%|09FZBmkUQiVlGqhF*V) z>L@-$>*`HpLq{-J z)`h$Qe~rj-(|KI8*QNf&Cl>7K!ssaX)@z=A8-Cy0^dEWo>0uXuT%KMAQ`9>f)sGFI zoG0^hMiE! zSPyKbDS8YTbHIWWR>K+gpq3#PA-MZDtqJ~Q1OMJz;0bhDy4P!zW`6QDGrNB;T{1V! z9iT8zje3%dLq zVu<6lDm~&5j)xm03Z@p{_NsZo2J+v4-SLeoD>xTsk=6GJR8v$t4@lh9QInH9-hPM^ z87mT%!6!Z368e~~8!^)-VqGqFtw3ksSpTRuT%p`!y%9z#UMYQ28-C&ailk&~&5Km^ zv!r@nj;_(iWbM6ozvKP)t|)-V&c}cbJ~`agAVZhOr3Ou)#4XcdX`s$JRl{?Hl(F0G zIZb0J=FrIxrD0be=Ndms5V2~!_PCH@-5AQ%qlzMkHof&)aVP9=($Un+9e`>&>NwYI z*F9XSL8?Cp*0?B43%U4Dcpz z5xl(=$YjkM-Bfb!dWj94%LY7h08l+JkP)Rzw{tb*1hAI^!9)Ym(I)x*4eGtj0<73JR>-E`0JOu8!ac%sQfdvqsh z5+1?7glz^6OC<|%gvVjCa#qC8(H$P3&>WQp|EhoyW1}3JHsWcizyirv-b!}iGuex>ksfn= zZFJDQ^VPhn0JV-6H9nsqSI?2%cK01pyvg;NbLIrn+Z3T|*5N_pt3abe69kzlcs^!SZ zO4t84S1D9?@lUk-c4T)W`Ojw>TTGdRsJ&ua0+C?*a_D0_E2~PyXoc;dR5gH)wE9^x z4iiEunGS1&6|Zfyy<49OELPP4>4>HO%8is>XR!j(zG}yfb2lq+J|W#-7gVMQLi7(B zUs>uUh%Vi?tI*0dR4oq`CV!NyVpakNLm&_-H#eY}(4!us*M~mSY%4Cz>-<+fn9Tot zuroEf67zZ;QkUMip3+F>0?AfL|0Feanso-J!G=vHfKR6IKbNemXA!o5PICOH(~orDu3(l z@SQJx_=f#-`VmsH_C?~e=e*an9KJS7{|Kr9m&)}GS7l}8P0YzbdKTUb-XgKa4*@7r zt|v>vGM?SI0k#B`TWsv7a%HfArK|Rj0b%@hXXRw*yHfdq47jYBAl5(>ZKy92ZR+l=waXkvF#;TsD zho|mxH5r`d(LvPnjO`qq!=ye^@jLS5zsV`OegJsRn?M_KF>j6a4i13ju*tsSIiaPy zFixQrkgjlV?gEMkCyhHrZM%a?c!5;TAck3Y|GZvU#ce?YAugbOI4`^$~22w7lN43P`iCHqau$cDgy_0mmgs?G@b6 z4LE(G{Gsd>-HEuJ(nZ)!aHWG*gok0t1frRdJKe`aB=Lc@z z`Om%C(O8#eCdyzB`Qo!5dYl8khrTO7YHJqebjCg1RlnFEAvtvhQ+fa0*S&#$FBIP< z;DIM()@|!8DKV6AenP~{uqW*)0vmI_e->IXEck<+Y9qk~+++x3?WZn~;d1Kqlp_nV z9ta!2cU&WFVJtSJO7;Me@f5v71-AAbtiOq>_#bK7327iy0drT^qyd>}|EtVwf?O_l zp?K1s#N}(;1y(oAo1Q{Ak`GX!AMyyIFit79AnCbVBh!FYT#_3@VDu^aCVLBn?w~fM zXHCKl^D4bK;-kuUO%-lDi|9K@5514D%wx|UT@b(q{s)A@by)(>AKq9n@u_0R1M} z=w_dP-nB(OhPb{|ccBb@g`~8fm+THR$XCxCUX8m!IrL3^)} z^sm@j!BkkW#iTwUWUrUoeX34C!THuedB1$I&kOQ?w2a=hwB_57c~-@piU3@DY}e!5 zS42W+Uno#s-B|F(G~qu=V0HskrVu042JGbKf%NsGs>Khbra*R1BX;4+1qBZX3_00M z6)C>fW$^hiSWu;A1XuAbzNw^6e7KWVB2*MxZXXMFB%jGu?PdI zTEU}P@<-`%b+^?%DWos+3hAwM_m8g%-V&uQqjEmIAGqCOF7hDJy1al=0+~tZ9QCp) z(C+WeUm8=dxm*g>GOv#k2=(~w^_PE}Z27~jJgvK)>P2l(1047&pw9y=Q;rfKw)D8U9HK$a}A=(vjpgiLqr8C}V^#LtkP=JSsG`&~umAe^S z@wr=sEf=Gz5&F+l`CmFkr~Nkr$MOT-M$VbK-2(%y?C7< z-5L#NaF@g6WYSyvK9cDK3Q{`TdEpqeyertOI&tY_BjjRo~Ws^pn2~wEE5Qe176&9iD_LW71Lx@>7PmWL)pV zCf{;{`-RoMmYFCb!Yz&%NM&xQS!_;yBYWMAV+d25GN!LS()9Oe^69o8)>^uwZkA6) z7CRsCF z8Fgd^UZ6tdZ|8G&V%z(+NAGzx#D|XjyyS|-+yt=P^ws@sb!$9=+`0X0Qa!aT3^yx< zv&4z&GG-y7gNVXkr0fE~)Z_7u!`;Dwr zogUlL8xISc^ZG0@+AGqo`L)3L28u_hR`lH;)*U5*(XtXr_kh#Vy^F z>U#E40W_hbO~|SUDoO`>21G?f2r{tqBU_Xd8R~kl`U8%nPPL5CuLg6soL_NyLgi&n zUK!THGmLAH%*5}lQ2lubf4Z!9FK_?-{?Bty?W`_e=J81_IhSmZYfS`4Iumbd3}4%y zgzec00YsKYxhi7b{g^-`me0i#xA(_U)G+wbDDDLnw08B5WEJ@HY;A(88yl~h1y@O4wOmv=Snq!xI((^sIeSgS(`9b< zG#=G1y}yO#16-9m>qDW~6}6HA70YUdrQ^b2IpBooofpB+|jg}a+~0sVF@5Cb>E zRq3D6bZ1xn2h}vo!>ckO^}61;1%$+X#Q#QWBOVx~r(9*>1w?#62R9jsrl z2lFC+UgNK|=BphYl$W_%vr_?!!dp+G^M)t;ZF^8qa!(t0nlV{0*HnK-YHYYR7jh3nR#I;is{TmlCRpi?y+_nFuHph{klAe7FLAo!s8wmLzN z4M?D;b^&U&R@TaEgHORZV2Ie`&k+Kn1G?r3_WS>D#Dgq}yRqeoM!?nu(WB9QMlw~4 zo;ZyS(CdG(5&!pAlOXdxt08k}Y52 za@-_1Oe~3&({ChX%~q|#prb0NuSODBxbEY_<=tQkuHGuro-#`r@2!fG^A<##F!J6& zMMrz9Gzwa289wYg>O$oBU48Y=8U3Zw$!qUlZ^A`IZ`*S?zx2YY(S zn#my07f>cAM{0B`2YqX^ADe>ol4Khwxf+J#1OZ!xY%@b)3*u!=4_4;Gyu|%`yj%=)Lzn!W&E)m9Y zrGQ*{!k;*(hdhMh4aN@W6zzUbg!fa6eR=2dJeEeSPZ2FVEtO_U>~_7ECmaRPC!K4~ z=f;ZVeuPBrfbK6AE->sTk@Hxd^pTFW=-}+Wh+OV!8SOHhwFp<9Y6z2?!q% za4PacQDxmG4shGw?a|c*ybpP-g0VUqNNHUL#KrXFbHvu#fh%)9QBQvc02|LhNmk{! zn!dD-2uzDD`Uq&$`NCr|&011nz^`d6D(p`;@0VTtZcoWA?jc9zAxD)VN7WQyqGRF# ztQw8a9Al1M{(+xGUtT=l7=6rptM%npswTTAkrEA>hVIWi>0%W^v7Pu<&QFlx7@% zrvgQs;%SylJI`8O8b32~79j&m-n3VA{`J|$dUfyHN^2{jSNqCfK#OaUAV}_&2O9#@ zxYm)K<#S_45I*WxZ88@KLM&4&XZ=A-KzC3h;MRehrf3sye1y_irbnNe~6n`rXEHj%~3bPQtFyleP5M#l4rBxO_{X1(wfM?=Y+GMGB(8Kzd z1$9GkfoZG(NgW7ZmgO_C&YAd@qVw!>(Ouy~T{F(nI88z{-8(JEjDAoqIT^N~7sYglX(2Y*gLK`G8o(iBBny?c8}x{j$e3iL1NFE&&k!9U#*hTvH3yu#=Swv*&qO%pH{(toi(1zz!1Za`&fqu z>AIO}%}p)Fx77R7*wYUTM6AuvyY9%nGN!VZOyMjSP}J3Ehg0L5=&sg#%nRl-)fl>V zc-m{lUeGz8n*4VZH7Gsphx}>mTp;Gij1gu%pZBvHFX0FX{y8*S=>$~YQ zt};;Yen9(I#rFqhc6*}BP+taU_J4(mJOtMSno6Tz0=Fuc_5t@U+P5WFva9mre*xdW zcp&qeT3Vg}ngW{w_wm*=wd)MLIRu|Jum}E;sd2xE4B*4(=H;bT;5M!LHeqc)9wSQhjIaPOM!{#k5Zl?Fq)zRcvhaGj&NvL;n@ z)VdZuu#DObT;IzK_h{FS#TcqCx9|4m{cJMVRzujl%PVj(!$@lmx{}2E_~e|=^ItK* zaq|#DQh9aJjx?KO)_(G*IbGfY)Bm{_z~39EpEY3m?FEib&B)H`g!jGf@le6xOitNe zG6WmBK#QN%$_4MB*89fKnmqf!DU)`f)DsSH&H^|mm5y*VBZ83yZUf0n7Oru)#`-G~ zNjH)|KZ3eGzHjh+0q8}H25$R}g+^CGz6ac$Ylm0eg7J2Riwb~r;vfF1y??PCfB032 z+IP9Ne8sdagUeVd>hrlm$qW4hJ(g}NW*Grg*+yE;(KZ$*jDzgS*Iziu)Gc#l3+yJw z&q)y{p;ML-rpPhEvJT+y7(Tnj_A+nQcuKHXX!1K$US&>Y09R7U0PXhentB}(`F@{x zOk(gWO$)JSTT6757|rmQ;c%5Pg7Opp@AfEaap#qem3dHLYq&(jsy1yW&=FPzn}Fb3 z6G=e~T7~`$*5AGlKS5HUQeY)~0g$XpY`Hs@g)8e=49ci$UO3@>t$3=};!I2!sMlQt zVje)ccquh@wAac`ieL#C)Q%qL*?C8GQdL0M(4eV*Z_y_zA=n^SwK+mo=}iRH>!Eki zoQ2ia-Mq2102@;3p4lvYj=-q@Ec>$3c%pvs_mz?amC=_f(T4h!o~4~hdXn`b@Ozaf z7V~GkM>cux$k})J?sJ}8B7Ot3Y%=C2JOmo(W_$G7TT8}TuhxD-RjpEIP1aR-cd6_j zZrjh|_E*TezO{f}`EI&v;z?3xWRs1}KvH@@qtiH^ab@uiNr(OnNAIEQBDH0xENGh_ z(oXHpsqT;m>`geo<EF;dhH;NyP}oE~>vtY0 z`H>w1g_*+UQ$=s8Gvco`rNsukS=YO!ZWC)0x2mO><*K>#b+l~e(JGkz^i_OI%)1I5|`cGCFduH|~ekf8Ko?diqi+dKo zTY%`GBkdG+{t2s8Rk@ziL?=;V8dnXHY3%)W-HPAm5ry-cQv3lI;A{b+{kGK@kDVnR zV&ntm#JAPYytM9blN@5dLYF$SIo)c({oi7=e=$wJd)SJ;U{O_KjEG&VgzB3ND#s@* zZ7HB+s(6h<#}euSVsBfFMfH<${sFPdDiKN7fZzdKn5J6KEYQv7(UF5TxA{3A5*5RL zodo#BB7F11)57YR{_-Xe>M{-bsz27GrTng^+nD(?gJvO3+#zaD)?B=75GG3v;&(jZ zy`W0K8S8_oFL2(wIPtQuh`dw$uc-##dIttWDtNWRj? z!-O6b<=$Hx$}7{$jiXBcB#SHN`uV#Hq#hell8lvI$G1NT#Vnton(&yFxvHGviBamEFova3Lyt+Xv5^S`gt(MSRR<^3k zFukK1060Tb-r9F;5j)oXfU)7YocfZwQGJ=c>x$-6L962(G| z$kqMgx_|QqeKq>K4S=no6_pQ#kd3{|4ikiY$(BXr@XGenvJ7?B8*BeE_m{fN@wr0$ zn8Bm+_BkLslW?EGJPu3h8(ZMeL@1`vGjr5L**3*Ohd27TSzdt z<(|0C@8HzL2HZoA&zUn_52@B`dqH$lGI8hKVsK)E?TgLqo@jcV?mLvSkK+4#>b+H> zrw>WQei+^fLsTqPz++Vdq?W_df#6RYDDBLMeU%UWgVFrW91cx$0iLzA6e|2&-bV-Y{tweUsX(GmWY=t|YVCLjdZMZ|^mp~F(A*f%j z%wJ_nxr8%iw_Fb!A{MHW!SnwZ#r~%qht6>2Qla$tw?SDhQTau2d$d2$Z-~h$aZA2>d?w{oR?#xp!{e=AT{| zALZeB&U4QDyw66p_7;CQ6*zdLWRr?0)OVTaXFeJ`2u?;7bVW}t-&lTRec&~*H{Tlz zDbm{ocfld$-L`sh3bzq*e(M0CnmwK+x932Y5751VO1{l*FtCI4!+kA&>X)C~pSSq+ zYYh)@(aQU%Mp#sK<>f9_pVFd>I{Qyi2Ue{ti2MNfezwF#%(sAxi>|$qce&mlV_P

    xohu^Pcr;;9q`Xz7Q^k5>+vhyv)12sOhwkh77|+hKe~iN_P4aR$B(p}O}p^( zjcLe+;n;@tqg()A%PN9pJ5vMwyd;UtkD*BZKkdMum-4s25>$ar&J0Kx|F^xR(g;CD zne5(w`}Ymxd7p;K-D*JuG2 z7Y`3$QLc)4fFkIB+K^#iBs>ui)SY5&mOt$&e6wD?KtZ*~RtD#JwO{|X)O4%J$q_g2 z=hKec+kw80#O|^2ao2E}kcM0=#of1i|Kk+~;AR-MOE$#bpda|@i~sGa$iM7tR)nS8 zzXfwWJuMyd5<`Y7MauM{AfqE$Bdplu-$Q=%5XcYv3ro#^`#Q9TKhwF<{?6j@&0_!d zlK#zST-b?XpsUoHyy|^~MiKvD?!tf3g!|{K7B07EY-|i@+2bGQl71@$UzN?@yu=?q zTuXG-RT95a-liW>loCW3T)Azw(*O40K_xKv%L0ABe0~x(arR?D`}3N96Ql-02f63J z{sg1R-!IYl0*t+695q&`mnR#u~Y1%-uO!<*+LtVsUtGsv)x`hhC~|8^zKQsEb9##^Lq@^y?#1eWB2!q|5o>(Xt;$K(#zw;|M<>7*m~Jh(i$4c&t<5ke?A2J=8+9nJMr-W zoNrt)UiGhEgZ7K6-bX+>t={>mJy}XK``^P&GZ0prkjC79jm`{!Y?vIa4#hVs{b_+S zKJ~>t>2zxoLC?1KXfWsP8_Po>%$lFxO%-SN`rsWs>p-Oyw#_;4_d4nGmfl>&$uLx) z>dX#fu$b(o0e71j2|rIRel1IMs)rXA!Z@LcC+|@v$A+BOIk$V=8H*?|>!z{;t`tAh zwiT?oQ!THK2+{x-Eyh}Id(^&ph%O=h?ia0)kkZhD<=2(Q>@4wgK79GXGHqBlg}DWe zc`ciLuz6iaiBWnjF}M=5+Fv;ZzGD+Q)!}A%OhZ$kXXA?sx9cy;-AoIQh4g0FFWCzD z9)CZZwcV=j(uU0FP?J(XQ}VKB4#jigADgu$y{WRRSS4J|%ZX@`!`$cfNG{ zS5dyNmuHR^Lk;*?;d1}@yaz-(`|%i9!^R|=J$u!@d=5g3@C%|mY=nhVf2WNaaCi1P zt*HTXyB>1TBi*mGXQ>M9+%BkbXBG#j-Teuj1HNFn4`tB0W>?=yr==Had8-Za?RQ75 z1v~?)Q2*FG|D65`=JX1_VVpq3jpS!*6nnf*^WcnMI;?HLnzSHH6tEVSp z;WD?y1h;~s*_%nCXPWy_MI|VM1c%`=GD1G6Yp8sl>309i={g>&XayyMSP@~*gA*z? zBGEq+8^ck+z3?g|fx+jFY}cwO(7j}108C7CweIZpf*dv$Mwo1-hc$h;a^1>^RdPC` z4YA~v-w_P>RqdhWkr!|JLQKm&+(|+iYe0T$Ih(hc0$gsmfDO!UDBsj$$1 z&|BLEMerCB-VkA`az@a=G2^M=I)M^2RpVA)$omCCQ^U;h+(YQWerFF~KOhNajXjw^ zQ@$1fDr26YuWtF+6V!zbw*q8r-22Rn=3j&{{POM|hq)4qD9By?`mp95E4r)STh!Cj z&|7CeIt{51)?rrd?LVp7-$Jbe5!Tv9nq15_A$hPHlL-mANV+IKgZk|qX-;hTC}^+Hd6cZmW(-=!kT!sFq6Q2Hut^JPuMnaRjk^$$Bp$yrlxfPHh>JQ%4U|A&W)BS-UhqzxdhcP}_!|@*%dFY%q*z-%!kI!JgERv)nV)Ti{Dn>Ty z&!$#ZhVE9{m(3Kcg*;$u_s`9HP=a;U_Oom^r@j1=cB1GDN)-A!*C!CkEY{R_U{C8i z>dVCd8R22@b%cij!Vehul^OaeG7aR_HZ%NpZ&x}9!P7Dw)Zq^o1^GH_OM$|1{=4%G zm&r_iw1VBWOsp$!@Re&l26_5ZRd&Ch5f6lhl{vr#mEN<6^R@@`l<*D;hi?#qrxEYu z#(YO|QEiEgx|91lm9OQ&XC)$2`*joo8%)ZO_4~Og4PHPpLL0@h{UR?xUi^3uqPkHT zLGs=aR`?lFONT#YOZIt%Zra%|;oP~2|Cw-zKylR`fz)5p($uws-6-s9i`aYICllqLqk@r6BW4 zLdh?`bHifPK|748kzd3Hy9Nluai=n4I<{nCAPq`$FG;OG`s_cx$~VugMQq33zzFO| zTw<}_Tg9?Yy!6-MRXWId&Y81+M|Wd?72dhWVJWLq;qCgDjc`#u9L%bJ1JrgvD~lA? z-#iOi#^6rJwI9!QJMnEn;FCIhBFxUzXN{T!j;ZU>ax!)L@6u#O!fdUA4Out*m$+ zomOE0vngV&+Ush5;#dP9Dfx$_cQ}hn?#l!j;XdjAnM*?lY4z4BF_d6lIvvp;c@}4X zg1j*1DlFvG+3hUMw+{J#EpAUA2$$b|R^ln)7}?`Qvtp+X+LrC<6naSduX_F2 zPcZDpSncR7Nc_V?1CgWA&#b|6s>X03rvB&Vh_Q;pQk7KqqW&=%5d?7xjj`7$_n`uu zcmggy?!61B(0p@2|9E#}wBVa*zYY>J5DSlp0Md#m`I=w92!+d62Z;y==4o=TBYhGg zBojn!DyE4b?h1{zdnE*1p!t|Of4M&%p)WWvSKIEm`u-gTeWO2q<@VbI55g|odPTkD zf&C_S!Y?MNeW_YL;_Ez%>fN^@!<(Tssra-n@8P}ptE@oILQkLa+9ATUx2)u`_=V$0 zM+7v_bjDrz04<{jlM7evI&jJwB(qJ_N`&wjNbMF?&qE@^y5n}b!7u>U{dDag0y2q& z=FR5X)GAxRcvNF8I9=2r=zj6MVd0nM#9S09)9T4d_QqkAHR*MJj4 z%0s=tuB~51|4to{f8qnkNtQoK*waU|f-+mOi=)RzJZB;+Z%!NV#Fo&RTkwaR;@|2z zWhsbaRO*`o(9OCl8H#>TkQ}!L_foWix-H)`>z>Fymwm@^Aawp>L*D&A@TN zUUhh$Bxky~*ZpE$upQ?)k5H|$=LJhWT%S@(*dw$n4mLZd$yrrEqYxd^#-Q}WgU@S4t1V?F<4T|p>cF|epKxpU-bk5 zIXiFcNQND$fRoT_53p;v0u2a9>q`V=dK6H!V-Aymyqc`k{qQ_r&6o$KpqpQ(PJ^a( z8VZYs9+_)%!P-u8^Gcib&XWYt-rPhuU{LTP7JBvsItE7ZriGVIKqx(UK15x)1 zKtJ}kYdD)L8m0DVZf#f-%+>e4z`fO)PgDB3?TB~+apBhH+IlG@rq3WvO162OR&DC` z-Y;nz<5x0(t)vF%e)bJb80ogeG@jhcJn#-U0QdoVw6`PT$(SYJGZa(fO?%mj?;Sop zw?rvy%lu3i&6@wM@eE%;e5P%YcTrOLTvX6+bK0GcP8d(zbE_@9nP)1Ws!i2A{ZP>_ z8aZWN0;vYg9^{*6VrN+|lrp`Aes?OZk#MuTu{bY^GiaI*_*E_UP*E*Q21z6PWi8MN{~c4%VG zU;LC#Fg#(gW+cLyq><8b{!QOqJW0ke?}sOaJ=`tZI#?WQ z50(qc9;o`Y3;J9S@vr=9)`lopJ^%$2dykfr?tG4S7qaI{Kcsn-)=$ zXq^~O%NL=T}@L1z+tn~(G4XiMKkTF^7 z_hu|HuP>nB->|qE%%mwa(qSHv((hG`D7`@P(8Ykl;W82pR*VMkGW^#a5RWrV!_Um! z!Zs}?8Y0DqX_AgkEg+;cixXYZtpS1Rc9k^ctgY9T8}&PMf+XX5dAZAI1}dZg%b9Hr z?e$x9+<-^$^q8yT$&5+PnCbJ}b+n#CCP?p?n!JW%08>4$dB8!5uGF-Kqf)#WDsO5% zj(0cTXHag{SBobEPS+Gz1@*{Z$~1q{_y9o4CRf^0GyMCt%mX4+q!lQU&%1P zWr|XUq^>*F3`dDo%{J3?OUF3DMqGBHPkJNelym=QmlyF3v&VXD;^}dJ3Vi)6&t-7;&!eG5BSbh z8dDXYi~wXJW`t0{{C!@1$Z_Y%S3$)ijlCbWUzj^=l6Cb{K-Pa?e)u(XGfFrm%^wih zoQcx}f)hG>F`0S;-o6*Ud!y=S!PGrUnxinUQD5Ya#MC+x)8TNxH?MaEeyxLVO^LSp zD??2A1Ge%j3Eq9TMtAcmc+*i&>h7ardJ4RRQwOoLxqlNJ$E$g8DY~yjfWVs}OAP8z zS_g?s&M)=Yo9neFsX?>!+y__RD9tCug#-c)%%z6}yPa05FP0D~sD@DWSamTJCuU2U z= z06fnXcNLS-uwEPTxE*YLwAv*Y{Yw?gDug zjblAgv|Z=g}XSreQJ@Gxu9VpYb$_7LaI<9#Ir8t3zdlJjTnIQ!f#HZT1i zHeCb&0k5fZ%7GpNT5q*sQgWS?ey>y3nFJQ5ZU^(NUu)~|ZyTp4N`>|Gd5}8=d0g-3 zrh;DSzA5J-MvNi***a!DcI}*qZkAE+$qn^0y=^kgT3lwQ#viCdI#EH0v-a zZ80Aiw29gG$m`&lhs(~#VblA~YT2Acg+(JPUNi#tp6a5bza7xRBvq!{NzUenJ#wg< zqRnmDi8sF=&~dSvOYg1e$27F=w>G_2y{;=du-KJM&}Eda)R|XK7DDLW*uQa*&!Xt@ zMIkUq&M&9vJW|E7bJ(GST#$2fxkQYB+NFB7-e6tH`crCjVxf7G2wJLy53K2eNUzyAuQrF7f;cRLyd@jzOY_m5bhxmp)NwORK} zkGod0B<;O_>F0nE^A`ao5*MFDP(i7n`f4;WJ5;h*s(_rxE5ItN$8PC4Q$yuBDk4B$ zZp=SxI#HUj7o#Pp2Yg}I3Ge9}-B8eQynTdsC4##qV>d?2<|atRL1>^C)6TxS22Svs z=_%)4HjzPShNWWkgq5s9oR2z zOcJcpKcyLxs10qdZ4t9~PoEQU1mvv=S@?Y-yQiIP8qOHArS}}}K9oEkORC(j0Ji(h zOXVhck-qRxZp$@%TkA!SZ`SCDnhg;sSvMLUpf4NKj3g>vT`J;0+R63zzZ`LUeEEP6 z-|C2($c}J*9BzDyW&I;HxvxHs39xEs0x4xQsd2bAUUf(0GwyAk%o!+8>9|Gy(eZZlypk_?0{FD@WCljwz+)AV zV`S(Z-V6*Ze(MJ~^NmihJqa`lYb-r0>y zG}r6u2gGDK5U1N$h$*_ub&#zc3wgNoeF>P`4H*Jk^~>8q(b0RonlM8A+ICY=IMMD~ z<>Ac{o}to&@9yomU(au!C!!pA>0WuETd%B0^i&~vnA`O>TyW`YhglGd2B=BCd4N3J z$Q*ukNSG7or)E?u^Ypo_F~sFLwp5}6M`soone|&YBYYa1@=uW z?xLeiiw4>Hc|g5vl^p3c&o|NT@^#8^0K%0W4=E+rw98WW9nWE-Ix1}7xR!KWOC-t2 zJHV<5}2?C0WO-UL&7_u zKmTN^)^!+h1nK~8y-p-ZElb#CH8r&(zpP&QjNK_DRlV05I$5~p;!v|P97gQJHS{Ro zakg^U4JxhNrWGgZD6P96Wv63+>EyJk?VzR7#Zr54q)khFcubCRTj)^%`l934tzrGv zAfpDvEm;zYi+ukIL@iJc? z*O+>ne9Zbn{`3R0mh1b776J^f0luDNRwuJzM2fXn5Dnwp#eC z0{1@A>gAc@4N(}RKlJZPQ0Cq~}Jqe{9?)BD-^+SOi_0wOFZxi#2GgRp3`d1q>~IE-O%1Yu294+@XGr3G@X;v zz%ZxDU})<*s^PSDb)IwW$4QckHiyjSYB#)vWWbFO&Y3CiEsGd!Ypd6?3R|9gIiF7A zYN_<-BKh$4FdbAN|5%}P(TAGUQ+5trG=dcS5;pv~IRT_oODCWhmm99OLQcOIo^q)? znOksRcr%hF0TzuVhvTWIYE(@5{N&B6xRD4Qarv2+y3NmRgnS{#A+D|opP(8x?u(4H}HodEz~=> zK&-8<2SjrX1@k$~RvMm^uf4BwfM8)PQ|NklT+;&bCYSb6hIj;|txTkp$csK2c$#r6 z?EbP5p-Fc4Yz5$q{7Q6Z-W9GLKWFlRnj1Ks6xzPCweX>6SS_XITJov4xY$BAW$9vsyI8I6mP?VL8wcER`m* zg$~aPJzQ_j9PjVzGOZZAQqMEhVg?Zkgul_O-NdfS;7J#ESv*p`9bDjdhq+0`6mxI7>m{w5#UtEq2%u;TLd9_xW`5kMI!j`j~S8O`5YaW zt|#I0gn48hh|=g0pd?rGg*+p2NWR3+E@pi4-+MBOdW6+xy5Y>#G=s(o?XoANl0c;# z<_2N-$V61(w@LpGI3M8ZclRv7}=n%nOmJ?BAsmgayn=skBp&@Eo` z4JsT~ygsC{^;C6+=Af76gJN0^W>&%yVRsdMGd*xMuL;SQX?hpWbZmmc1q4!xS(mZ3 zZqR=BH$F{f*Aw1dw3+_R!6<7EcqrZR*_Th&_$|Oa-f}N=Bw-{!PLuHbXoc_b4T&_L zvbM-g&;{2OO0-Q3_?@O*E_Cwg2nc^Jk=SmP>=Y9ZluMEK;gHSkh2LL`85 zW&K=HJEOC$4T92bUIgY`vZTUQsg+dH@OziMnv6^D{Vp1iNaU3Zp;cDO=IXdV0tS{o zfUBdDkkt}deM;$~j-lX5l8mPNi|2lR zm&IZ5CtrPJtCJ+}%-b`H=2}kUf&BF=?qXIR_~fCo#B0~Dn}QiVOVr3tGe*ue>-{pV zbymc&Lz&3(>_fy=RyD5;o0}|NV03Kb=+rAP>vhcjsGW{+*(HD@&LFq`%3-;W=kd)x z<&H-UWS61?6najS(#m$oFTbi;?H>oGtsu9RgLQdYt*O^v@Jq%k1>kW9@W;=T-U-ON z?0Z~M_As4~VZ1K0I*-ZVU32T6mFSegK=Li7*F}Fi-9H)^B(@!^@AH*1w^A6A^`swcke;~)U(3;rp?NlE=f&r@$+P1sFHw^K*u zKu2kcMApM&7ulbg6)W{Y!t$vl+bS6y!eD3WJ)|ZI0rXl*$yv|qWbvwmrmD(=XXT6U z6W#8Yue48!3U6NObq?F@A4mYHIa-YKdUQ&zlzwJ(dECd+t)t+IdwbXv7oV7!G#M2773di>O3sEPY?b_H3%w+Nf3c9%3GoaU zc6j0mX{67nGy*Nn=&2zZ*8;pMPmEP(^8PWGeJ1$iM$#1b&QlyJVTKgfIVbwvRf>4X5 z-}`DVp7RW(#o^unCs zugnzK_FyJ+$2U{DO#JAS$~b0*LZm$T9qpp0hL;EGuf|EJ1x;2sBUP6(=Vx#B)L9|v zLPbaoq}^IweS6wEiYSW~$2a40gMK|90S@FBL+VfR`_d)l7~PY*7pN3vs%T!@S`4p! z3=((`9cmuz=hoo}Ya0e1b>6bS^ggtA+L7#eh4`{BX=P?s%j+k0;?c`ktoCkg4g>8J zInhE{Iq+bUAeDi+O+|Mad2KJ1(e&evRQ8`H!7Ln&r!O-AbaVnPaXWRFnDbs$i^eBF z^l`A};Bc~GLaJ!vs+!#>S6_p$^YW|A)iH8U*xid%_VbPVJOPEwXR6DS-Q6VcDZBSN zxaniYFRnOKKue7Z!$=D_bL=aKx0vV=kU22!ylL*NXq?$!rR!eteL$Qvk_;Y{zl_Su z(<4`lw4bgA%vL%_@g9R7mZ-NBXxf}r3Q@QZp|_JhcSKC2F9HtjaH#Fjo0JA2JpVnp zs0&2pEf>zeF~5L#by1GdVNREpYfY2h`dW{(OWkn!*m|f!r^~wcApxHqJyE}578|ie zm5**Rvk{>y190wJvP?0iPo6PLSF{0_V$O>COQ~snxx$aGrqr)`&t3$KZZXxvQF>D{ z>vOCEOsM|s;w4nA6c%=nq-+|KO)ZwrN-SKh>f72hy`wl{U6jWj8)bRRiWA=npK|qb zuyIzUAt}M;T$ryr;>A#rSob(C6-6i{hZ4D8Q3e`;`g(`C1^gMVx~w~Wm;m`zeH&oQ zOFOA~c`s&Gblo(%Y53KAe(~b^93#d~*YTmdqusnBH&TftCkBW->YVAmx6BrcC()Sz zFMtdGV!0JagFr8EEi02zRFzk>Lyn!NwCbjN7eu;5#1MVw$HR5!nOvR&oxD|({Ax6c z{LGuTA+uIlbMYD*+^P;Ua!MEHCkw9H3}bYgt*9gNIa6Z2B%246YR+m*nv*y$mW8>n zf43b)`ND_1>_0TE2txDE>^6aAry_F3B56&6(w|gx0*L&)E+`N=-sbnX0bxlIHIahk z!BnqnSpj?TCiCYC0r0&~*RvT}$A$Gzx*@}kB@vZu&IrM1m^ie}0M@R4+Gj}K4e$@`?sE6W2xkEfgSM{}B{udwaKfblyH`KMQA z%YEnE!1>G_*?4a^o@pzRWb*-WrJOd}XvxeMJI+z}MW3E6T;@$E+RW-J+Hz!`QgK?* zdCc_ow0_>>>8s+dl8pJ&VmJ5vA7gNo+~-$Crg= z7T24C6i7i@U&BL2l8d|O@`1fcS)G^rTnYH=){vqwR5$04#b+hz$&g0iAEFCkkD{q+0!?31Jk zwY=&D9f_1bWs%g0uwN%9~>I#0&(@nHg&$etH>49WKe*h zCWiQ)iHO8|yd*%+L!Icrdh@lj5WpLn3!8NLtja(10_$n8!&we|*S+`$Vah`L$MofE zP7ia;p=j#ieSteYCYjZyHG8UGlym0Uyj{l}xs)C)Fz=-g25E5MtU82h@NDvOZ_Ez} zAJF7ShA-U3a|&92_LL&ct9}+HRg(rn$z%SRSZFIKAOK6+5T|q4z{QIySIW~UiUba% z4IV=~G^G36v{$%0(rvZdf*add@WB~+ZEOiqkHwgtDSa>Il*)nnt$bXR3!oSZymcp? zl!}@dHh0=Vz=Eq{l-fub4H33S-$HwD=yQSbVAH}$7=s#w@5?*;OPic*BTb#QJ5gJR z7C*CF(~AlR{e`E&^Nigjn;r7{}|AE1SWKR z9OoWi=S*B~d1W5$psK(8LX~uAJ0LIzmbQAc!GJQkL?6!nmu3^09D~|cy^a;Ywj4A( zQEpWw_twD3NOKEz>zP}C6V)w9RcKo0Qk76a9bZOS$9N{B1W;R$9udCL&0NmN2|GiC>< z@sF?Db>Iqc^mYrB-jp33j;_%WPFRNKgx=3KX59?*4;@?CAvKxy@wP<6w98T-i5k+p z13V6=Z!WJkUSV|KL-I^u!T{u9Uul>|h*4SzVL(-rpZMneh=ihz319v5bUd<^>0}k` zL>68ZU8_nDmhP#HIs#X%FKhl%$@L$2pEr=O4woBcoo7;lzP?K0MfBhkFECx)hdCvm zP?|BGw2xR$)ZhT~UMlE>=su&G;?!|6%!&I(H#s>*iXP`VIORm#N~Z3$U`8GZ-lTGNJN8yICY;VsiL8g_YMp``@0MHfo$w& z7c0gT6x8G>I^)jpHbIz#@I67HO0y3NutAvqPQ&EiWoO2oxT#Fm_(}n_S^jN9-ue~t z^BuO}Nfe9GZDhnOwW%b7k3pZk(MQ1Hq3yFG_e$7S;{eg-xQ4ZdPS8fg*mbM$?)08K z>v}VwDX;M$EGR#u_DnosL_YT+DKkqV6Vb3n?t2(kBpQ%V+cX&q)Hvaaw@thmtngvd zan$?`TORm^06CR`(@>rM6Cq%g+HZiP>({p)qD9riE^ElNRzB1{T-^F^lw83mx z1IjB3Xo0qLYCrB@8e&eVB_O0o1ZQ`=3@L`fxSDKaqf!7kZyTUAo8xuw_h(->vH4+NS}DI=BYXfN_1JJ2U_PHJP*`LZSF)Dvy{cs7Td)I@65yIi3>0&%LC=-Z&%D%djNyQ^4 zG{6W+v8HOZFl5h%Y2hPX85A}j)J54MHiQ#i%I3%&Ij#=_DDsC95-!g9hNHz0sFC-x z4G{0LL|C?f=kq8sQYSz*DVJfwcdOuc@|Pw!tejJVyQ#79V(qczt+;I zYsXA^(IrVt;1ZPATdq57&IWl(9lql=KxW@IkO>o)vLQK9D8@)4ECNd7(il~IHe1$1 za5Zh6B(Dm|`FbW7k_8ZWx4zK|NP(BL@ETBem}x!p+D7ii?TJ39SoqP|lxYjBR6ZT8 zPrO4kLW>O?y|g=Ll^(SF?r0?aRGmed`=B+sN=~P`+~)gQ+ZMET?Hmi*)7pSEF3WKL z5pzce-e-LLgmKc$SZApFn{DqnV^`%)Qmc_bZh!> zF`^8kNO|Zi5y07k?*(Wa5mW0ozb?@Q{d6V3n-t)dlj{a7J@gn|wpzvzakzpVnQ85$ zzjT=vy@0szf%E!|xXeaPd7Ky+N=c#18lH&m!!KbYx@$;3;{Tr0sr<6fItzW4;?ynY z%K}>tzpQd;*z~zSbu_WsS|*D>4)sdWWw`gvH?Jt+~%Ya&o4>)FzuBdR$ zH*6F~28H_lsQB}3vJ1CVAedp~qtbRyTEy!Fi1vlWg3dyJ_Z}^#ROoJkkx|p@RltY{ zHKE_LRkU@X@2M@v)6k!Ul;u~&BOg>4l9k(%)bgfht9_}*3vE`8&ZChYs&4<}1u{v% z={A=Roxz3>uL&UwQ;)|j@#eWJw(I>5O=1~^uPLoz_*-T><1Ai9oIE()Hu3VOk6KjO zMz7UvC&3(HM%NbuXZ+u_-FzSjd$)=7QP8u6o-I!`l?eb%%M65 z!(g0j^CEe`qab>gHK$=axRBDO95UScj94YX8aVB)2nSujL{HqULqUgs?~`1IuehvF zfo?jh3fQJweq3m;)YotssKY!CZqRo-F6~;W&9fXQv+B_4%75QPiP$#Dt`(rlmbDpA zw4U>8S2kQgx|N20w0fj_eq1T{$QOTz$q+9FTJMsJtg(a6ukC|(8~yDQ@$UVynXfb3 zdt?b;D%(%671KmhsI{82bA31L+s}Fh9D6S1a`gPk01s%;U49t*SAy}-OPz`P!uxOc z< zs8paw^@sOvpog8hb^92~$f_rcNRmkOWy|e@%|M#u=}zSCM!Q;3Ovj&BiYzc30Sm?1 z+`fjjkufx1I^drwGy9=X1WDMCp}-n9G-~?OrTX)m*220Bh=bms!4$xv5NLMa{{LCe z`u`AyCjpJGY?T8iu)7rgUjZaw*Zzou1Tb?h&LVwtUqxGNKd#| z>;V-2z)Az;9gHI_FCV$08%YdL%RJOD`klQ;KS~R-A2+*)g%2xRw|0MSfi$?4c@0aD z^8W+60V40??QL+`H=6yg61M%5aHPjA&epO96*V@O+%pp`(wzGLGvT1yxv;PhF$wB} z0a^?ErhsoGYka%%dy@=lvO8R-{}Y=?22Nqz@9r!T*i9VU)0t^_ZbWt={@1%-{#;N3 zuO{wNw5Z=%cZAh~S-afBv}ohP1F9`Yq(4t0IkFOMj`>?_^!eh*;FdDJuo_`fL1-m{ z9TzWXCcU~vFvB=gFBTHsoRHDkgT;0=1R`WC5f@gXW1jnIWOY97&cyccD@ojx$K!rT z&cXkHVnt`U-}`!c=MDSsmm?5$@_K7`u4M>a4UcJiL#&LaQgNxZsqTH9#k1JwjzZp? z6%+m*OKKI&wg&+PG(?<+relpEJiZDFwc=;yRtTSh5%uv#P z=U`R6h~uJrq9vQF26?}T&bIvj^&dCS9tKW!Rq$qPRy}39G7U-WmeiSQ`0aSXk*;n0ioW0|jISt-yW(;tk+ zpSASvTWl_uTs_>Ai;h#mO-U zM52{eai)i`3uGq=23GHZ@`nUd1sqJ7Dh@LuLf}Ppb~obx^L<6nzLOX^xaAM7QcWDG zA0HP8M@v!~tl<;Y08!6>u;Y-Iofjv0Ym#ycsg{R(a5~-!Y3+A=ThMqBvw zL{31Xpyl|a_e1jR^6ppZ+I__Q9=<8Q!m}^Es+WtCp5xSA z$yfT3?pW!fIdtAX+fr<7d|ESJy@VOHr93YAdoW^=H@fds$I(_XSJ2<5k(r%q56B(Q z$op~t-!Y3Wzwfr1>NyIOxYm}PGZl>9TB)2(3{P?<^Rl1l`JKWZ;DPuriDH`QxGICN_^^8b3%zx~PE zpw}MwAzB-&_{`Rm35q$>DXR364KyUi8T-H7?-P4=x(mJWk)#=MJ%SZt3cQan(W-*d zP;0pEeX3E%^I(2Q10NpUADgq+iu*skOQn-fR3>kZlDPlESDlwQne#(Ep#}GckLp-@ zo{zF8M2}pGezw?_hW$eS{qTjdO7(?~YyCL`cG^uZL;cUwp`j8gA%7K~w_dM%3fB7D zR1~gANlDEwEZmCxq&ZG#K^9mcf@-tson>0rfs29RC@KwdX^Qx=SkOa?hIhnNy+Zkm8j!F8?`qUP+Z9xC9u)(s zL!rzrEp+=C@Cdy{c(^kYbWWifVizp-O(l5VyBm{3k$Sxv^K8bKY zA+Gx&3$aV5{jvA>BOsG$iV8B(!~f^^3r7f3>$1SzB=-(^~JU-^b`Ml40YfkahscyV7KGM z6g=B@Dh0hL0|?4|l0o{PSB8q>BNq5hf3{z^wzmt1uu4DrWnpNiXGLLQ&#Gp{_FGUw zX2J5eA>tn|wH>)(Ns6hwB;yH*71pNajgsD2Su4LDu1N0@-ptAVIv#7?){(O=s*pz& z1}c?*y?hzxr1AFRaAywRLZSVzay~vjSiEW4_Tqsyh_!ID=f}|Qmr@`Ij(pb-quYr8 z`MO0$97c!I&BC+%dwZ0RVLyRx+g~k01A^GrHJL=yQrC972yspLw=iZb_N68#XFI(^ z9fsco_rYmVhQD(E;qko96r9M511nKq#%(x0^S(2SFX*Nbd;uMHN^`3RXE z=CIU0_G95$++*lqJm)UAA+#o2B0m4mD@OO=Dzfq_ zvgZ`2it+;CywP$X5_^6tNV}hgRN{|Wu1Apc3y**`s+VSIrOy+78u4!*QpQU9ql2(Y zi}_1L+d}zI{}8l;w`gj{3qYl)34%QTD3ciMuD^|hx4zJ2aQ&Yiuzfg!Bye16A6}us z^&@SUGotWT1DncZ*o(Up-ina*63&mG6^HCi>%lVgt!|tK|FtDU2peh%s)NOw?Nk~^ z#R&b}Ur&`An7hVg>rgA|vW`bs)x}M{P@Ujt^J#oMk?QLpqXrjP>pndbwCwZG552=6 zy_PiQMO1B`TGwg!f7HEqJeTeJKYpjAk~EPrnzBpainJjU}lj^|-Fag4kVbJH|- z6M~bwj@wmhbrza5D9VNB&f8wT`RjGt5+rMQgvi($UBV9cAedO(pZG)$6v%7?ZZ3AC zQ8f(g`>_^yDht;(%=H`@dMPy?5pKA7jViDpok$JESU*Aa1AQk+%C7^{5JNb-lsE4& zX@0PIQ3ss8BcZ&1>G_9^;QZT859I%Pm7;KZ(hU^aSUGHgA}G5J+^(jiSwTzkRD{%N zmF~K1{p*J{!q*ylrDKrw;R|avv>Sr`uCC$d9UmL3A>~<)e(^}@^=kIiA0I3xKj~!8 z?G?=Po!isT>lpIo*ao;*D52QtVK)K`GfH8*IP|dxZ@~e*#=nrmkY?-||9tfr;zg$~ zCg34f?fqaKy#2PvB{is0|DO!Fw`ka*{q4ciO5nK|1}nz3V%YJwO83X>A7%u>j-(14 zZq#DL>fp?Po24q^(G0dOW&}C^>mo)L@MFz)_%Yn#gR+^-zNnHYPXxapDO9FJ=^(aQ z+<@bB|MBkEzP(^92+h?dHJ9brV)EF3H$f;H{;Q+|qmvW#9J75MYr%GaT`FJ4fxf^LJgeB)IOg86z4_4(c!bgKD5oW+ zT!z8P^PbqGOoOVaend?*6A=D*W!MJN!wN+ePkLjZ$eH_sj~`h8uo3b9ndxxO*Zl8H z$1qDd4hIqI#KGmo=OByk8R+|`Y<%+@!D+-VsNJ>$+r~=T#p^~%`FQP;14EljU`@;| zSM$QSC5Nj&tr?g}>2h6P{5o3D5MMLi-$b6;oWafD7?T?pXDQxn5<;UyY}BsJN7PWZ ztZ2rTE+x%(aHRe;t+T!F(|LTEmAB)6T*Ds1DP6q=w)!%qQ|;P_x#{Yu0SW&5!Jky^F*o`q)&<=iGD!g8^m+jaOp{TX$Yc| zWId8{K6AVolKM7Gsu@?_+wZ{4?vJhgMX?X1Jhl1beLR{KPhPcooV;`?YVu(925t@~ zHq2M}*8VB&C{iwukY&hcPK}OaS$Lr3``Vk{OF8T?7T^E)Yae_d$g~`|3rKrr zk|*bxI!-{C_G`RKR<9b}(GumNG8W@K0s@6iFW7$>Eorb50*DEAS+inV&-ZJZ+#)9^F^Ikkg&l=i)~1>ua>vhC4EWLFM{S9PQE78B zTGNZKat*RwhEmpj;s8|6rq5BZG>Gpg87qGlA&JbdW%TZ$_)G7y6SPZG-p>ok35DOC zjBD^mgUy7kOCT;y|10_ITUuDmVo6}ViMy{MnNB`#-mteZmGwqo#*Ag_FF`a91t+DV zi12Va8(a5#5i)e0MiJmtW%??iw8w`f2*RZ4*8~=>S~< z;_2BRe=)ZC?+6jt8b-#s0nRQjfslvWTo{k- zW!@mcwmo>+ZRbIbrW|FBA_EKV?ZjzyyzOeI3VN3R=?zi-QxU$^wac~a*mwR@DNSvz z%d}MQtsjws?KqlZ*tn%Jb%5f09V%k0JFWS^x*F)jxGb%nt9;S9r_wbWz>rPfygxT^ z%W*5$H+5O&HpY7btAtlGji= z^&WGHDHJuH5C-b+1$js@vOi31cSRU9ederRz<2@R&ia0H%l`Ziwc*vhVEMLr(MdYP zxY*Y(i6q?>Uu<$KCYPnFbcblFJ0%(QKed>p4jK1&SLMFG9b-d+VK`3xYYyr|h|RGa zV*hw=*Cg(P27~%8A5m0p&4}wN=$q!wQK3OEf@La@$4}Pjlmf0rL+cT&9jjaxqQ8cUhzK`g zOv9ansDP62Pxl`lFt*M$>z)D+IDP)Ra~Q@zzvww0sbitEiN0$Bf`lo~euQ z`Z2S3VVCmNhDDIi;nu%P9Q*~qJYWNTRMM#L>2UxyiOF0nW@(**NR7{t+9QO&_T1Mr zAZ0WzB^OaeoEHy{+^gX<3=8}g68gM9|IksDh(A2ODFU_eMb1kxK(v`yAo^MekLQv4 zW2aW|T1tSf=|3#~^Yd#VNgTcNd&sdpRE6lod_Dfx!0%sz#Rx3WOxupSoDa7w0>4L_ zq|vm!2g1fIo^rP0pBnDl-#Gcgvy`44LDPV=hod1#kLP8?kU2Uj{BUgQQUHf%w-SW z+s7yZ<%2Im=$Q{TKGXfBPxO~y3CIDn%tK5LDC9%J!-fAZ9>9~O*hy#VzuGpq5XI7| zRj7u$2$(3nDYFd53;ultyC^0h%pgW7Y2w&fvF~`^+rA%PfHw+JshV+_tj8-?QvyTAJyLW^I{jcpLZ8X-S4?5hCb^1`n^HM(Uf_#AN;3YlLX= zB#6zcg8VR^cc)8>{%*uhHxumA>w?*Gz4b)rJFoHW8&)ETg68JuXc%AQ`xjMUVl`_u zdM|eZKvArL^InOrJ_)*-gh>Y5n|w z=*clbo(>#E?Z@Zz(T67@d)m|-fkr^zZuysITkZ@}!6@2+oz!VEM8)b|Ja`oQR3Ido z%#AuFR-k$iZsWxA0~j!^xEb^qysEA@_Nu+0`n6Ln8GeobtV=>%8)whu^jZxH;zsaa zt~TJpZmJm~ih;quE*DuvpofecNU}VGf@Fg75HorENGz*Zum>`il*6yAV4X;PDKpzc z3^b!S2bt_Y_b!``71t3U?!Z@hdeHnnqUX*O3ycx|XU60|)QWJN7H0a9ZI~9+*bWDN zdR4_fOjf?9El|m#M~tS4sW)acMHeec#LdMMmj3B~bA1-E+Tf4>=RDbeco_&pT3YsN zXzCBAB)E5B*(bZvcq?%)r1YSmk+De{)e--b^Rt+ar<5;RF1GOlnN}sp_;tM=tp`%h z>&^TI0EYi&?RF>UPZX{(G&s5lKNaxx1i(&%;3i`>$V}Ck> zOeyit3`MB{Xblh>+Vj8$wV~pOlNPD!j0M)1IsA@dOG1WE9DBG6`_s&hL)$l4m^H-R z6T;k|L+~`$txpSo@)Yb((vV8?t}Hl&;w(kT#GnqPXBtb7`sOu%5<;&c=z}j!?$pNW zJ3<}`dhQ2peM<}T0uEEcnnNGscm706WA|^E%SdCHG&5#th0m{`ed zj>Y$g&v>zM`wC_N=qiHGsLilkV7L#-oSnId8MqKrP<5q!%ShBuJgFk2@Qp0vDOztv zOT1K@`QJD{_X!adOZo84MsynmJK-z?8`D=XFU*4w*1%*Y;)rw)<-6&|t!>L<0sWR_Jd;>p(6&|@-; zUFYu{M7bv%fSC9}EIoA^q=52%5oS6BEn$@_2DXI4zw#8Jeq+1mu%!LVZ?q!9ewLqO z9|lyqp`quQ%q9-61Rq@YR5V0ZwAEL+|4vYl=5E{Ga}kke*|4j}g!sq_2KuOrdt_g{ z&6u%PZ7g5)!hH^F>FRJMj0<2`=wXENlh6d}ZIjl`_FD$D1=&*H zIc|C>{~F;)rL-?M_TY!x7ZDtE&%pe1Z9p+&nU=C{-bI$-dH^%gU`CXM$4U#;h-e{^XuVhzpg5y z6{IyJupQ@R$J_4VPn7d-z6P$mgKO=BHYG&G^1} zqo%n8lQ!Q6M|I?x&L1`wIJyy&>2*nPAF5&>Oku)ujL@R5fhtNNE~+^ht@aL(JiG!Y zPLTF20gpwmvs_e-yjXXiDuqnAgouo_K33^;Q5vv@8vr^fhohhq*rJJ+T()DE>vp3B z;*XMtt5-6vU5f4sT9FRf(miaB^Y1elH!Uk0?j4I!Vqoj%8sgZz?&@4u)y(nNz4b@6 zhFV`WW;fZPJH3>TSU%^kesJ2pE?Uvl_;P(>OqL7o6TXk{2;mNT%vmATo9Q1*Fjg0-qbDYjK}Q?^M9&Cn+!18{RE3kdcR-BH`;~;ut+!XOCJNee z1Y`-n+P_?qa!9H^(e9l;jOIW#ZJ*l%8YDSAsAq(I0&@hg8?t<7;RmkGi)UoppDw`A zGWYz(BQjRC%{~JTlh`S3rchlfmJ~?Lb<`e9`np^)@6dW#3yX}-ARlkU4QNg_~HiMd%Y^EJA*?>X*5E=1`vQ%r<-OCn? z@P6H#ZL8IoLZsDGL!<@W7pqwVIR`u*2srlVrLV@s!l?pvsa2&VvAu<=*ZL;N_ZYS> zq@-Ae)_=LT-!2r}45B|ZN*^h*>6D6Ra#3wIWJS07U?R9vP?$AE^H(zJv~+E$OO2DA zCl(}y0l=ABou#Tn<{`FWpe+&3k~D_P2ypP@hsve`n%P{;D8I{do|N@>dyChF{c{LAP5 zbdleD%RRUpxCg+@|J^UZ4&WzG-?x+!b-nQkqs;l{8-8|~mflng2{2P~f_`1&{QYMM z5-)+Bgmk}7r~hD?6eq#QaorOuj5)t6Sov3*Ql7EYz9NwQolE~S{rKG%D)dU=NMkG}0kyR54mBGp_2WrI=w&C%q!Nof7uy&@m)d#{?b58MSe-}LYO z?fdfm^}_Dm6^xK|J|R6H;b`NyP~5Gju5LURkJWyB{n-^g4=Ubq4=QX{kdyiT&5l{O z)FVWojfEiJ|J+X&tVM^Et>Nm1Z2q;N#GqN=tN%Cl1OkR+25qzf@rx_5!t>EuLKgMJ zb@|ZV|KGiPe>lk#E(VoR=R1~N)s@J@7oRzNZ1MiOlEj2#F2o8H$5-cE9tqA@l=Q!U zg=b6Ug^nlxlXJZbVbw-3x{t?}2ipIxW>Q-6Y4mrL{JI|h2N$8>^diun@OTV^U{)v= zpSQMQ%OaFIM>03Z7!?k~#>ZYQHxGXP)Cy1Q@Fj@DwNCe}pe*G3yOp$8s=h>|JYomE z=?cH{A6J4x262Yk$5xQ*`Tk~|-nxkSQLcYuj`^S8f7vet{F}EZ016qs%l3RLiPgS$ zv`%CIyC;Oo5KF9}*Yf+Pbodt1w{TL$9m}Tu_-((x(;?<4{PW)!2gKOGT*d$8!ZaW} zZNeog|MpZ)t1hM3tK|4F_L6VT?fX0N#R)+%69U%hi@n84bG|P_KY0+m#bWnMMkLX{ z)`clcKBA+-f1}GFD_?M<`s8xd{*$-=-k)?4?jgwK>x)lAd!ybc6W?9*hS)`D^9KX z*^@*CD=5hP;)Y(7S*(7e4~UWBSkfvUJDeJg)pyVZj^4O+Rp*`mPRk~98S#fl(myJ_ zaN^AF8faZjGkN}1yF$(|YirX$PSOQl$aKF>pMBLn;4tCO zHCE-dt6+p3=B}i^-l@YIc0t7024~R5Y@8l{;r(yj2*L5CKv>=4JEH8giLiMjh_Ths z*jDFNQ)lo()@1qZdE-};^J`(coqAzccrfmY-caklw%XkJ3((Mf%fOnlF4b85k$KJ0 zws3)LJq<-bWL$tiRDQSpXr&Vy(HBSY>)onHx=@S;WYKu?;-4S-Giy()w`fsD0!XnX z!Dh_00*Aw0F~sM!EX>)qQ4LInKYnHM@n+mT7?JYy0hNj zt*tH#+!9=mS>45w5B`QC%ew)Hx4(yBDhk+r5G3aPxL(pdc=l5#N!;9cYMfgkZ$|}5 z+esqovFCJtmPQ$d_$%hZ`z{2pC0qSltKPW{>>pI9B|M`?iC>DIdnNV2<5~aM>eBpwa)Op?Vx^l0HoQYRMHK{pT_$#x0EjcXBvmLdZ_iEQp z<N##ZF5{tE6)SDImG+M88W;jusGCxVi3NbaM&kZI6b$Y{XgP$!zq8l}*)Fc7Y9Xu{9_TMoNwbc&UP#0(l1Q(3@a(fTRw}d zVmGLHdp=3`!c^|Q*7v5tyLE!BryT}jHXe&=4`a1=c;ql0>ffx84kX6AT4At@=4>nZ zoc3+o$WGJF(ukai`|iCiVDp8A-R1GDjn54Y^p?nfW^*^aK2&+kJM_aZL@{0=k>a$+XPg$Zo*a_3<;B z*$=x+Dn%Im$%fMk=M;~NkGkCI@o9R*kjYIlm)@7c(<&Edqov|FCwW_q(ro^=<75$B zz~&u3Ei*IqX(lqqH=1d_3KPv%PPy!=!#{E$!FD3Zsi%-SlhWPy?^ZnrFf1d!2o zIn?s$YEFIfmXWvz^A)&)CSMCs+tB-04=1>1vj#29>Ttj|UvA1^hVcW2LqJc=G2Uyf zn`_E&-6y_QCU}}|2&TjE0leAl(8*!DV3^vpnTU!#;E2cbKPQ;&65S3IR~4^Q(Pzu7*_+|zwz<6 zqxf#3)amtfL3QK;(-o=Rw<8OERBx({C)UbYZr4vs3w9DM>U`p&CfCf?O+um&aMLzt zeyq&*)hX7vwRgLXDJjjS5fdiqIPJ2lqq^njXxdiFjOlL4*IvQ1lR|#})s;+mvzflA z)~pdVrKWfK<=1Z=kLc|-tCpjQSsQyx!eD$}eSX-nRk6(G&7FaV#|-uD#-f7Vj+Szn z<3j^~3w4@}TPo7z_--17KHj9Q15ozk)Hb>UA#`&uX_(xD=PnOQoJn3!Ggag>G+mpU zY{5M^GhD(-KOjF^>@-sR@+{|A;kKZ`q+6Y&{#BnoiK$Od+@iYef72G`{EC<~nYZX! zN!yo4BtoMa%~YMfRMZ7cYjDcgZ=~vvY~r`FnH{`cn?Ky1yTIEJ?K?*pm~y$EEIiP{ zB3f~zv0_mu$q~YJe^IapYxeGJ5 zlW|ThFgAx&>y78B)t$f_<_!AxJq(`YSzEwB>024qTL-(Ie}RP>q|7UE}M^%)@|We2(gr-q~er$Mwfpgrxl* zmb4HPzvm;Rwn|xpH_P0F1*W~BlS7Q-@K^_DE}unjo#H~>FpEr_8{8}_jc7&Y8Dj42 z(Xcp|GW-6L)e|+F7=%K@`Nw*#D!r)5Ytwk_|;ab9fb@jg1X7 z1#7f0qvih;!cL-pgl~PlbK10C+xQ-5)}l|YAt45I36@VYD)C3Da+d6_~1xZ_a><^at5A1%tY&bh@kPhmzy$ z4}#lQB{WeRoYlI6JfBWrYHIqi{$@PTchjspUCrVv8kPpbbG2%s70=b1>y7s+R;T+k zJ<%64I#g;fD!11$*}S-m=o2Tya#g%`;Ew_@bs?rX7=?noIP{ zKHLnGEGa1T$LEVB&iklFUwX@BrD4<_vQ>g-tm;L{p2(LxI&#8 zG!MYfLLHjB@R3#P8y*0P15V^QgVzwb-!+;f`n(h9gzwxWCf|53*s@uyZCA@=8R#yd zg!A`&7#+9Xrr~$gu){rLPOuufdv5*4>V?@(M+cL-!ICkDF^=Ix{f#XziTDQ-tZ)JIu^%gG<|^(EHPotYc6XfBdg5RicI)oR zwf@yd*zsl!dOE_63o+OG`N!+phem=IYC{sHy-Z7wv(9%q8a=0RF5V;+rO?84xTbfG z)$ZeqwtY0#WqDcC*NbB%z-$-xfZb6}iH_}0slM{^H?E|h#x*ECJUi(4hcD(4SUDNQ zrn9IGUL&Sdn{{8XQUoz@RHJend`VS3SPAsXMDKV&wA%t&c4x^{!Wb|E@Nnv{cgRV= zu&M{odvmIKJI5OpPPOxm3BZ)W>xes5{rJ+ypb{2at*nnEagn((AFbMptJ|qugLXrP zz3NKLvGT^u{Sw@Ir>1hZ6=yQ=vB*br#acvsw0xm-3x;5EwNBP0YBz?=1dk_$zt$0$ zxi6$OMi*z>6wszcGb1}EH8yFPt9<-JZSUNGZA*)vWs{A`t85=9QhU658_ZKTNK4Vf zMLyu23i&-})afqMBL1YecY!z_?P1YSS!2=veutP}(C)?*Lz>a~>CH0Qh2h1ek|!PK zr-EB{I?i{N(Xh|bEDSYSbsSYcq8p9#Vs)G<=9=lHlQlLb>)%PqqCXyMncZ{Uq+WZ# z$RhoM9T<(FR&oJ4wS{Q~_BBpQ5!!`rfhPFJg~xa&zcK%QcDB+c$kL4*wCddmXCu)|zl(dF9;{PJY?F#;uW2IqZ0C;0ZFRRTXeg zH|_L(B_4MdgsnlSmXuppI$BLN-JvLCh}FKUr~R*TMj}^po8gb7xtWy5BHy=&rs+PN zkgb`##W@=c_NeEK3{fmhf*MX6Z;&i_a*CL!Kq;afGRxkUq1@IVf*M}J=#8!9YIW~B zaltv<@ljs0Xh>Y8Cq9R5wwill&dVFIuXa+88J1P zuuV6G7?(R+B2Zu&G;;5J;wMr_FB@Lp@Vqxkw%$Y!UqA^2p*qvJu+O&k&Pr#gdXo=%qJ+MVNV+sPV1 z6HDzl+cx0R$v2=#(iSD(L`C;#u#lt;u@tS~fnTODHV^T-BFR{m(-X^Kf;*e*40A`> z_!p)Oo+NI=%{w>@UN?R%LKpK~O+VRJ%gx#>S~=CByiG!2?%Yt|z{Y02D2Km^)vgG^ zoIUfglWf+*Lha4(xA>60^$C`5QD4|B6#lujawWj2(?=+PO9;gc{uzq_Vg(W(IO42j z>{_=4?;O2Wyh&Wru9c?Hyw*Pa!YmAtb$)nMXCr0YBiR!&a4nH|ZKqiu-#|JqOWKE7 zA+5egW?TF9I;VWneHzqf8ggA3<7QP}#rQPEsEs}uiEN9h8J_LT<%RK~0oQ{#ATy7+ z0xqveg9UW6t|lUJ*U;<2Li>p(0epjA_}sZ!;PG579-G)pGkDZXbUnS`ANPGdS`V%w zs1)+2IV&jjbl+ZQ!Y!LG{}n>OKv4Nqf$-@a0){)2TLc9K=pQpxmy0|;c;m)s?`-G2 zh2w88AIp4E&-Cy`dYSphEI6a%oeyVRYm=|^v6eMiF0chgjm>qDk>`B1lGxU(qJK-gb8oU} zOsM1Q9`3-Ij8@RS*7j3Z_nO!{ zau||z2Zk+;Xw}7=Gk~qCEbT z%QF$nsHZ1ohu@mCsWGe#HoB`m+nS|2-gYIzpyp^9?}N2Do&@^#j_Ko{WXdC?Utx`g z%UbRyKS0I6aAxu~iI`pKSg8_T)@i_gfX?J4p+eHM8^67;yPrDst`a6(X08@r*=IA!Hlt7w9WRG!vrJkcVSAB z9LyGJZpT&X*fy)@0Np3k#}yQ{F0WN80CIkY67pEuk^9t#kGE-D3{&SWN0l`j=a%K~ zPnYWk0{LWXR(SC01kAwdB*+1ZF>W*I9S=k=tYs|9x-g(YB&}juf2l2Mde4 zZo18k_ifV&n!<5?_^XUH{t|4z59vc5OEtSLu@+}#;~2hP_KQU!U|e0aJ{6Iklz4NL zJj@s1E>*iu9s%d$rXBLW)va8?Wrc6(98>FVcHbe3V=bN`3{-l`j&<7q$URuTGw_4% zIWVS>aXzHwi7K7JEgJx6?#hp^AY{%l$@|M;s8UP|D7*Wa)zs@gfy&wkh}HCDiF&^h zEgqL`J3+x~6$mqm$DBU~wQ0I?$Quu_xqv$E5_0FOp+E+jM`YsQ#*m%&ym8M{X%p|2 z0hltgT4^@cMX3ZP!EE(YcR0(&Yi>%+M@BNFlIUOVPY@vU*11E8_*vHkiO*EW@vH1Y$f3iA4WpW=&xhDdTAx}i z%yqGu;WOAS*L}cOM|BF%8+vY%6rtL7P}~_<%TEn7XKQ}Q^V!?gn$+sNnmak@Q6hL8QZ#Lq_qpAha+4UuQi#2gj*cDP9Kk@;a_qvxf4+&#yN8jzat5X&{7w zK-E#Dmqd;Ac>eZ|FcVDKsR@TGg+yZ>@UmmI!XH9L)@-&3J2GM|6t0vI zjg@q+@Hm$9u_31Dxs=;5{NpBk^}at2my)5trkX(;rSJG!^j2~#feapu&jL6280%i% zt-x)lOCfvQ@ZXB+A5IcmiaJO3;H&79s4-jq+wvYm(3D}m%`9?9$-h5d;YBlGzUhCc z*P(V&Ve6B9p7l7vM5Qa~@dc^&q~CF9mk)XI2kx_wV#ew6{aZESq_oCUP2!qF@)^bD z8r=f`sSUD?B{z`ZXW8#DX2_f~&1 z^%A0NX#efD_90bA*ChJ3zWCQNp3mY@ z)=3yhmia$amKZsyB*e%(9*+G_%+z)WO1W?T50xeE5CGUFMX#W9^NWl2`C>0g$6kd) z)IO5N|A~G^S{d1uNdI+F6`7MAe_W^xvsBG@U-$PYi5>kVPr+rWFr*aYI~)KV40SQ*I6D z?Lh<2F~-3fWv{kC$QBT*z%XqXxa;czQMF5dQ>HL~uvpyA<+uCE4`w-nGBSHQ-UX23 zp4o36$XyTuYQlZ?U80O*E>5e7o_2nYXj~L%gJCWqv)UK!F3cWgCjMMQeXv*wy`jHW z*=x1?%m|kS@ipYsZ&=aRibL~D`p|fzjOOsCh%ie)E06MzC-|6KP8V6^xh$z?r!bL4 z)6aZ%SAQl7$BC(FbiAz}YB2E9oS%ILvxL?17X~>F`>Li)c(RHUekGkh5Jlo0z-}o& z#F}Ey=-D!duVJQvoP$!Ar2v`Db&LiKx||VuDbCN`*Dfp`W>;;-suylOnjY_ynI%<= zVwrxml7?N{!TZEn;|;sm%)67M>-1uh<#F|0`&w49qTT%&8G^A7EEr@R-h5BbQEj*C z3LAo^rbnBvcGEs>T!Fb3lM2~w(cP2@xa8>2f%A72FpHMqE65*ADij`@9G*k6Bx6$H z1jgAM$D6G?v!zRh&1+R(NJPnEwB0|u!Gg>LFuPsp?W5y7@=6iv8+UVs_$q&nYIIM+ z-7x}sY>ITu1I5SZMJv8&3-deZ9dy)ckTRh+F`H*roOC5l<@u`wM=!l~hWd?c*}M>; zC}9YDeO1_+m!G|NNfEj9hQ*b5zw(}q8gJh(UrLO&*e1!zLAOu zW<~D8hJ*%v#%h}Y^JUSBS+^8DjeYO9TxbtFI>_)Y%rb`Y+$K@xu^I18SSM*hyaH1! zn7#h(!=tI)6DKmvOKO$xc4Hyp62X-6a<9G^0rXJ1tl!q`26>EQHHtc8Og^#lE4g;Z z)~GpHpFpm6B6z>L1(B>yIkpc%A}3y*d>aNWr8M; z15Qwh6(QUI{M^Yz*%YM}tz}XyqQ0*wGcm}N? ze0VMiUi$QVayis|)Nd=VptrSsrnw|8v|3=mb~YYv$Fd#R`7BHO=N}q?g``U2@N$JK zat{#SxpppIF5<%SO?&_rxN!FU3OEs-TdvBrRUY_~Vd3oAvj`vEH`Fsm0Z&%2fgF%b zt`^tcgBj1Wu<~PfnK1RjlmRV4Pkw{Rp!W;nt4~*t16x@9H^f)jGQXa7BN##k@1f+q ztQwPm_j5b2P+m$zr}EIoYxW>iaCQU%h)UV&l#T( zErN?PR@s02v7b=nPa#>Di!x%$`D=9+(o8tpZtx@3LD>+$U z9I1YN5gP&%^3BPbA++mSD`G&bLI~`?dMOMbBp&}}(f@j(ObEq`-Z%7s%i8;=HZ>En z;|=-R7&f8tcnL1N*`0>@GUqoUva&KJEORE95m^`ziV|GY$}HMQdKsQ)=~QgGoRT&5n2sji?10< zQ?)lNn@Ac4QPlVOJm0Mlww1eM1@qSa63j-F$QLi=4AC^P zPkSBKA zUH8VAh)*vDDB734p(I-wf$BHe4P6;p1#zAo3<^^hqCRI`%h^Crx~+&OS!#g5VIrmZ zGxOjgC03HMKE?=&jJil)8BwV!>`7m1B8LCOOF2D-c>%Z+)+*RFG=l*?5p65t#Cnd* zowI5Ff-()9zXrDmtfb!?B>P#47)sFhbwvO5ZFjN&X-f`xOM*G5WQ2?U9dq#m>`E~m zgfGiq(}nTe{KQl_ArqP+am#axmYAdszosfREUa2V{z^9()-aP5jcF?;@kOsK>G19m z>{avk(BhN0w(~9X;rv+8q;g^V$1=a5#R8l&W&CSetTa7Q?AyNHq_0+-gpid|o%h8Y zyoSw1I~uunFw{=|S5hXwgnH65W`?2MowQ!?`VZf)h{jnT;_S$W#V644MKA#V)o`og zvb{5d(>(PXbftA)u!0t~U*+c3z7Sf4CJ-+oV+Av9!>|52R)X*r5c)&Q2tCqok0hht zT_i-eSEB-S0a;TiN?rX^sbvCCSNnqB@_Ps^LMs2wn>{~Et8lqT_PI*;f2VLEMquPw zKFt@%X*O}+#LVkw!}|}p(}&0;^6s0xKR8YNZv_XSGrqI}y88OgDvzyX$$I~@g(8%t zl|~V0q0$m3UdoDydQw>YIZiP@Vr=(&@xwa3F(~Lm8Hi zGbC!AS$+r(Rzyx0Y-bao>|N5X8E9T}FVLca-(kqb>xn{KkYTgT05P@0WI~-yPg7*^ zBeu4&GxKYmK27#pI_~Zac2u;nFXOXx-DNa6$eTU5WusAg`#4umG;tdYr%=Z?TGVUb z=4$tDgUXVR%&~g&_BnHXaRpGq+D2CEAAR;ind7`NG%u)2kdsoBvmTVNej`V|Fv2|SeZekww*aGzz4FS2KE+*cU0*=28(_w4SIn=f z*bP;4OdZ@4)8;O4P=a@ehd7$tOzE$uueN~$ad7mHpR1Lsz`t6uV=|e~p@T;}E`Vy= zXdG0Dx^L4^Svh^h{aA}#TUuw3vcRLF4~M|@Jh|!kUZbppxl#pHbG6>wh0Z98Q{@rP zS_zNVaWj*hCdE*qZ;x|n^@6HM>{M-W=+=^gDoO)8Rlq5Q5_<{S6EneN_s1uR3aKpL zdlZby3*E~+dg`3pGDef{cCHdPqv-khCxdUiaOv*6=x$8i05 z%iK(M{)zN5?+ygwo@kmVi|m0jJ;#(gdsWWVi!PVkop1aiw_jPOR%Ty{Xc>)-?q%_S zV|;uIpXh{zp}$wO6DD}vWz(WQL}-&ze`(~rwvSU+M$OtXfrS(IsAm4mT9_X_Z=8MW zyyM(`z%ff+w{GG-AQUf5ZM|2`*3fRWzlo8O@>U@oKikDs*K72d)dTo!C8D#(*Rp9B zR}IVV7Z_ZapHL_;%Itek>O-Ve@E*#QO{DhENb$RIcMo#Sje3=YS16U!TO)lvSF$Es zOA_iY1vAy~M~~)=cHG?Pd8Hb{sj=2W_D<1)G#5^9tTUf~9^tYX#W%Oc0RMF2vTOAN5qpM^bY|N-qd`pf8QLkTb3)J_FIfo1TF|+~!JbR_s~&I2!9u{S?O&ZTb;PKUIr*PE|iM zYJcvr_E9_BS<8E%M7jBLCz=~IldI+Lt|pzeVT&HUC|CRBQ$1&kogC#A5##BF>zvJ2 zQQJ#1dSY!OSq`j<=!wldWHZ*iL)kc6xjK30Q8o8ZL_ME$sWmZ`Sg+Qky36#Qua zs_0O6{ym5$VhH}Ev~~RWa8Vpo9owgFj}`6EKklj12dx}(Vv@W=bx@Am9k1Aajb?t( z8;a^(a1nr+hf_3I)AAXk$_i9eDD-!@xxtt2yHxtfCsx%Ye^tItAmvQ&NWEF?Rlt8* zuMx-Ip;?&pgMmUsK7OKY`+G-YjH$?4W;^`I*YPsD@fpplIt+Ua6tWfC?aLVr+viO6 zW}eeiAg+C1{eTM#_dbiJF@6qMQAhOoHm6UPB!q$87ms?QAiCLEr?BJrs=CR`P>Ok5=>F5p@~0wY ze?n=lH`ESaldybma&rHwpyEN9_TX5d>ov|$-D~dDFCiivBx$cdK_TFv**wKQcgg?O4~f)(>y!g71d9apzoRFv=QAl-7B2G0~dq(0cAMe8s*}?w-FRZHwtd z$V1_tCsK$vKIWC17UwqVdr@}b)CB2CSvg_`iA_AcA)2(^qs|ZSbbwb`-`3G`U_E#C zboXT1aB)v$vmC$TrH9Q!odW9Q%7)2`)(mrYp2aOi1z_{CR@UDHh>HG9RzxM76XpG7Q9Xc^I_@{pRyZ*Cj-X@K6zYr!#1mU;l7K zI5iC@<3DYh6@|i|GFA|?+SLuw+h54n7|6DChyJ*DuX9(sOoMrzR@H}VD(b;}rMRR< z$*q+(1KAT%zDaa=cH8kslf62m&b9;g@!dOvCtsJJY4%Fv;NS?W^$d9nsYCCe)MFIK zuSP`s$l2XbS&b6!k$N9|b6N14N3#d!xS*{vadhY1#=cbbU<*T=HrG_=CXaE~r&>}|X|2wtZF#FFSb|wb zP4jo$eoaL4_DtNu;BDa@uTHgym62`$Ndi2kN&j5zZu)6I@Qm#1Z)hl?g+kbwu+G^z%WIIcYac) z9j9p-+t=oAz~T&PWY%|cU?O(Bx=bWona^U}HILuBs0T=>N)iGjOe z9?>_djh@nhLjX{pEZ19a^cR+fR8`l|1Lrx#W%b%oMnVybCiB8G8GGcY19zB-5{QCb zR84q$BpX*7Xx%|*(t1}wtjz0W39GwnwY+i|`vfjHXp6v1{q2|jkno1ah&g(ap8YPK zM&ins6U2DuMoq(Pix*@J%IVjSg1yB@=9PhWpxUd?o;CZtQfKQ`N z%!7Q!dLB3Q<<+duSBLGl8@b8adyb>F*{kDYhzbk2B>$8J9?FJAo7_E(ghlEiA|j+V5Xm)PnV<4IH5@w(rMemUgH`tJIO%oF>qC9q zmo&|k-{XRU8JvgWaPMsz2d0!}o778er6x0 z8e0mU)~429a%r6!z>N%lc;XW4tmSq*!A@y9ngc&tep1V&>9Ivz24~kOt}@}(CR<-S zPXm$K$H147>+2h4YTEJEHOId8?uo}9rK(q6cA3;&APVbrIigFwN%VxG2v^ipLd9tw zS;9P}hU*;@kX&X&+$r$5F3t}7bt;%Ah!W_EY>u&GAHY{tLK`+{aBYYb!X(7nE%yiC zZSmL>@OpA+8?FmHbZ!amuFSBJqotGPvv^?v$vDIKmqnVL5vItC-y~OKm{(kgzh3{6 zXh3Fm#L=QFF+@i3%`e8HWVnI*Tw5>Jg0>!?Pb7FVFw})lx;T-CrskbkSmN2Ct%{Up zEBJN({hxa4U$`_`1+lCZjJ=yX+a7DiFH*1WI2V>sNX_Hd!Oe*GzVXPDR(vE>Jy!_w z{Jmz= zeW}jmYF6ngmm;o9R=x?J8hU%Qtnk(@BXtf{gYqtC##q;VZj;6u&$?G}JmQ`DB%lfH zMlrGPt=c4owc1{E`NyO*FwIXmE_ej77KhYakx~{4Z#0@Q04|^Vz>@lwtmMq!Dn3om zyE*V?MSFySki&tZ+hC|9>2P{6!|Jwb1sX0?p~ z;CGoPQ#qqfL56=`*mhoP)^zLd&ZyR4`#d-*6;4LT7jhrH~Y|~vZ8CKFxc5JrJnCnS&&yvMXqB@ z>w8}|ec6*pAJcUiq&CZF z_ifZ#m?MpA$hl2DZ5y4ccJi%1M<&JJikzOMlI{D}&+j&u9h(LjXO!R@Q)oX>u~R7A ze*8Go{Af52&T{{SsQqTuvy=5@rFVnpNAE>;fsY1q{^#ZN_Smj$DAICHZJC$c|1mD# z1W`?w6Y^Q)+#4lX)&xo% zZ-2|xm-GUs1M#0PbUiBkx%D*z&AZhmW0Ypx5LC3?7T^t2vACStB%e>)?Am3`y!xvY z@;?M@(bx(i!wnOY)gw{3zgroQ-<%0yv~oqTfDix<+{}Qa3*2E=YU@u!k*bdlKW39x zF%i@=8pZdu*6S>IskK1A3~(*XKf2`z@XEfF7Kb>icAwfxj=(Kuq8X$6n`{`|qhh&p zDJrK`xP7V;D^52Sdeh6`(l1IOR@aP#dUg>87@db!PA1PmsdhGKX941R8Lg>yKNp9& z=>kzkk~;wDbb~cfR=mu-P5(Te$=git0M3qF zN}j%?le}Y9M@=eDDdc-e@_VVVlIoLiALx}!<1;_&qad_}0H*V$wDAbMt; z2TB+i@hTHpb2+JEn(fltm;)`tH}kicad$k}CT7vDbFgI$8W985rW$3BxwSgboO?fT zy#2trIEYsAKp*UzpBoUyDG`yX@x-RJzSmr5bX{6-0D9#Z*Wz-h+6uD0W78*FkG6@a zH{_bJ;Jp)n*YQ69Y3-yNoOwMcZWham*jxRk{QaBF8x3o>uin!Wp8Ec3Nnd`f$nEe> zW)jbkva#BQJ=s-o%RhY-n0zVO_Q;e)qy<;0(PUnG7qKAS(ze$mpu&ua@V;lMppS5> zQIlwsBUHsT6?Z`wM1H^EL_zuE>roxbJn8)z0c{5AJjVc9s%=P&Gypf2^_Jy4nL%`d zP4#T+I_|kHNy`HMncebZ?|l^1A}BH_sYDL<iKUXXZ0A0Uo}qY&>TOPO(4n<%x*!pdH~s(@}&SUUwI!f(_d|#Y&xp zt{)SPvxF#V{hq$;iO2b|rzgS(B6sf>ih&Br!vM{;6nE)LmeZ%RtrtD;G8ihHa=MSd zlk^;{AS8c8ZQD2Yu*0u`SCab}mDPvZw!YLBJ=4DNMq|~DR)IB|5A;pe1oBU6obFBU zByXFaS*X@z7J1Nx)>lp(Z=$tiD%9g+Btnh2Vtb=RbS87x}m)xFdGRJ+| zZFi6wnVBg4#_t1$n2%AejcmzV`RTprmTV;}uh3g>{8ufSzCgkcAXJGz5exv{mV}pU z_lYg^=FF54JuQQ$(-B70j)gyVPPo;S5fs2o&e>!0DLT80!!QdXn!~ zy$M_;wZO2Za5_Cxx-v`$BC11#u`qO-I#k%$uf}r`=ja#tTL3x@^=3ObIT3UykAu*eSqLedJ=%!S=4_6CpCvc*eLaGMzy43tc>C z1E(*Lhd<@1{qWMjk3b)~?*sAmFNCMFJ)x_6$L(!DN36}(gGzP$s*PU8JDCB(TkTf&xopsV{{@ikE z`oR+ii4!?L~bV=Ewqu*AI z^`YqiUuUyvbJ;B0-*)2{6VnyEvksoM;df*=dSB%E!hiWn#B712Nd9d6P+MWrB`d#O zM;+&{S@k8?17sR-+MT+I$8e5OA@-gg?ot6nZCbr`%%Ol=Qyua96g7EoCu<=z?C#Zb zr^=MuxVtX5DL7f<<=+qZ?Js3bb!1WS*|^l{hLSYS?eu9L%v}idRUaTzzIW&GNzMqf z^VQ?ZId-S|UmV$|<}l@hZ^>1^oIUnn(@d5u^R>Ibz_(q9C;JS^7ydYpI)&v%1SBLR z_raayl;p$)#79FpO%mnZZOcpj;SWx-5O{}0J|aVF0?m*)V07epZK#qogS>fIW{x~s zxbS@sV##0MY&N_TbHS3_1rK@w`Rj~S23EqVfs`#6SeUF}uBZo6`j#YHiB4s4DkUqr z1fXG{>Y6eXE3SkYSKj^8N-Jo26D)tDvwX?<3CzvSp+ezg7Yn*2PDuG*OntuM&qW$p zxS$fKh)QXZ9(0wFLbP6uHT25dThvoTIg&7yYY6!;{ea+#AMW|GGIr7@A8c&YkMo#9 z4?TG=jImOR@U}){84ef*Ap0Wh=n9Cy1W&>C?qKV}nr_cW0b;0h*KGMjknS@>htn%a z#zv~bM;jO~IxMX~FlHS)JNusp18jXH>ilA)Net1g5^RM1Xz0*cK^Ij>1L5p=$`{XM zM$${t$#2mV>T_fkw?E^<^(%NiB^W7NwU;Fj+wZd*s;aB&DN*-C~bCnMKAS)pha#l@76M0uG0Lv)6@lqsA#hr*F< zE2-!>1IKzwg&W&qf27*Y_j9$|Z=L3vz{u-(|^#qF-4r?W1}t zxK{ay5R}*MXYha%17t%ZhY22{Z1Yk_3FC`bdwN1` zCyXkh6x{K+a7zeW=(@YRBaMQnj_=9M?mMG8feK58r{FN3ba@1$+-M#ant5Iz^4>vYCwurNd5R4MV{0s519v_s0T{$o1(N%Q1L~Bo99PO#)v6<-inJGEjb1KznEZ>0gmm4d{ zy+%G(We050oqQL+*VhPLv_AfwpMR5tI?DmFk!eH%Tz*cSst>A&1x_Y!W)BGxo5FscT;}ZS6QBwm#AH0>Ue1E z9nvb6qZOyd2dUDt(%G3_Au=Pu>lHBd!Mr6tR7Nam6l(}flA`T{tdfiG>#B$sn$?kV z_h((+fTK{{_o3>=P0&QB@<|d6wA`Rv}Ib7LWlzp1j*v6%~1Z%DGwZQifB#_p3OLYE(YVy_;K~e^Ya=F zNeY_HS%iRAfSc`G92f|($2=GQ^G&7=cn916;?LzN_6-L;08H?v#|=B0ixfo|25$+) z_T@)s4Ks*0TnJaowt0=OcqNmnA{1WbQ*{kJJPFVY-GAC)4Dpq$9yK922#>VJdpY;U zED#)-3l?Ymr2zNHhYS+QLFg%PYvax=Bbw%ylH1I>H8fIDcO&E8k~`xUk#ZB&1%Z1# z3PNy|VI`0t3Gd(&c5Pq+*{!Ef`G4fSbySsG*EW7sP=TW;3LI$_K|w%iX;ef&Km`Oz zrKFMCG>9BTNhL&jD-F^mZP48vN;lFC-`u)yj^{kbc;Daijq#1~`^SOAz3;WwTr;nE z&0lDGZ}tKGU2|Y!BQ{qgcv^+141CZo41YFa0kSmpicai% zL$zz|FeBTjo%bGi48DA9CVT0RJx0vIt6YQbw>HzF3oioJYlOGEjSq54)r{kY-joq1 zz$O!UZo^r1HpKbrf1LgL0z#FzjU?uJIy#SI!X1vQWin+`9Ok!)97$%3+KAAx{@!sR z+8N!1`liV3UZDapOBg7Z?de>Em4@cMmy`g~f9G_NBrSPd6x z@xoa0<-WoK3`ft@9e(5>zJCXB8tFbaO0Z#WKgNGAe(SV(GnG#`M%J(41XflU4wnyR zSyVo+E%}ER1IrA$FyGQmGB>YL{`4JO{WZf6=YMV=Moo8v@;aQZUE?L}yjB(+Y!u?Q zxISgbP^ohmyNARW-wDRl5g&bj6#E(r_>oMb>{^u>3Tc|RJ;*X|1L}jVz$Kmar=}8p z2?qwOk+I~T;|FlU;RsQ}nWy(&PXy!hBgVLN{sAuGrh#dysRbWzqE&8{mcpJupGGrv9SSH98H^ z7?Pkdq_<1wnNa6LDHq4{Tn-yANG^;b{XK{u`Y%T0^!~`H<$W%Tk*D6s#rj%ex8Ywk zHMn(|Z%a2G-4IX%lFr;_iAQ{#VM<;^+ zVMxsWvn=xdLsx@^j{iYB>X%iiNQnIL)b7CUEUAvhuA_x~;{E~gI>^>4VkW=ya77>= z{N4NFw19uqA%S7kua`{e81h&Sn0%q<8H9k5ok%e4{l7`b|6E2SF!k;ytV*=VqcH9j z6CE3}OZBYa@IJR5`+1{Pq#D3pH#xF)Ft++QWMpI~d}|8C_mLLzd4WhQWFX^w9|$o* zG@$6Dy&wCz$me}?D%b;is^|3HSgy>Q+Skp3q;()WJMMIh2v#maL3*1ja6empT_{Zt zy!=>Fa?8(k924nj9A|g~qkGt_gAh#(CfY-pi<>zmVwLEq9W1^!+36RWom-%BMOJ0; z965H&g);YRrUSG>@601>?8}aU@e#kLlIZpWN&NaF9n2u;i75}n5=E-e_)73Y9PHYih#5$X8+81;0)uR@P&_VvksPI zJqKrSFv0@q))$f_&}0n+uYHUti0|v#u1~?SPpQ4^Nbh^>e30ji;{as7Sy1hF4b}yV zDSzfL{N{8JLve6Ukqe26nlpq{R6@}*lJfO~U;o-E9>YhuO=MwSKQ`!F=Siv-LIu@z zAqvZG*Dl9hQ}@dhUuf{2ZDRV#^`(h|H$B7jS_=`-&eLDw$4(s`gfk0`=~&aYRp270zghh}*v?U5q|vT+Dj9npP-Zf4<#|{uvW16q zT;S9h>swhP8^8EHQ1wv*5=%8tTmq8Pz2vW{d8fHKw|iF(V|;PP?e)Nou_o!FbK8Z0 zzZgWB^Dy*HH^s;sq}RMC{oq!Hfl2B%sd@p0aoOijmoyee51-emf6%`;Om^Tv#|s_{ zZNBAhiBz42{&r2@0~#AEiLca(1hhVM@|2|oU-*GB`TC>K)7MuL$5&=0x3gEILR8(U zRWSD>>qRYswG|2kiBQ?kD}&YbWYU}Ede(CsYaRAB|s2hsBcyBKfljN)2}cS zSa`YFUwp*-F)eLN^Tc!>b-A}%zLnVR02mrta=wg$OqAOG>a3mqh(f;8UgTs#_O1))iGRfPQbEzn)_Xa%ol`XcZrFBkUtH`WkUbpVH zo1gL3UYP7Sncda=1~Qz+w0V~#!vz=}w_dr|dhjo`U+6Qcp_t#Z`LnK;o5!DSSdI@C zNzyy=r5C7Dn$(F8(~ZhL@ex37K@$C!8<(rvk%)z$D+FNFM{*AUU+@l|+VyJCqW$hn z)s&mLg29_l=na!OZ&#|IKOoa>!p^QaP^Bht23SG)OY~hz=><%*1&aM9qs`|kL`kFq z3hDyquTVH{bj*$?m_g+)%N>RkF#DX7oddtPTyO;HLGHwiw~BY|o1_Hx?1}_W!BMod z=$y-jpNyB=2f}Tk*V(-`s{$1{`pE?sV4_49knU}n40!gr3p?-i^Gw$C(%SR0={ukx zH=wxY4Zw`KZb#8+Qm987c~J4clAI9R>RNyT5xHgW>d1!UOxU?kjpdrGhPn47_7d=9 zUY1Zpj8_{``C#E|ZHWNo?-`s<#YgO<5DUtzZO%}83{}Ywz88tPtkN^SO|&$bUPKB| z(W?}u<+f0OPjN?>hp9i@8 zGIp&~+1qEBa|Syx3Gsd}-X!KQ7DFgFTC6$-<}dfo95rWfY1mOS$ZhkS>)U9l`D9K$Z#NcQ!yPVtx|-gaXK=V-?LPyH)(j;fD=veY_%p>Y8SEQO)uEvRVt zP@mxN<|jf&PbhJ-0wuoE#+Y=`+evm)Z(?OhmJ#EZb;`69 zAb&Cj9*(#uWg@nbJ@%`*x^@aG!F7PlV7`)JR`Fl$yBM!GOAW&~#Bt*3+< zrw+6hbW=qXfDyuvZ82Y)hRYt(1AKEe6KDVuw*h#eAmAkeK1xsu19mqJxkV90e7 zDZ}N)!ce+goli``U(LCKCB`fn_sG_t={P*rEK~H%@gq~Va>L+3@$mI-+}UJDNkxF4 z#YP;g?3o!zV7fEiZEaF7Oh2?o4jQ0rjM`#*ZcWH=V{QbvAdb9Z#I?k|q)duLf!8hr zuMK`oWiL=W&(HR4*LqkM*^Yob)}GC~wV#KBqb#lVXLS2CnY$%j0m{uKosQdWs&fI-o6au=>)n}n`nxQ^H5Gvd%PL_%vH z_eqxveqNhkxjj%6V!t*vGTq4A zw`HH;yn9mCQyJDX!Z8aDREZwgKdL8jg5*31pF27g5yngixD#<>i31=Hb1Iu*(j4l{ zqcF+I+Y{VE5%4n4s^-%IY^q{qm@C;UN+MtwrBTUw%sltgBi{b;1Y7sqWj7m6FnN!6uPoS@`LxuQ zp>Y>oQvTdT$v`B=)#{J*t$m_75=q^J1yFx|B36!dnH$rN5p-Mp&BL+e&$|B zs-jKW;}kDRi5BUX*%1A+vj0;>C)&v`<`jg()NyeB^M<2iQfUc3kDP{F z_0CMmRd6;S-%*?FjATpBfZ83;?`Kv>ISuUqKxdRFu+3uRTO`}k*apRq0icy~hpsVi z!0NGIuxogA3W)O9?ufpu@=xdHWh`IIY3-3iw*BPAp;O!5EO_|qI^Fa zRi6q6NjWhwjofENOlSGfcp#S7;rb%{Tu$x8k)H(9aFtr2T-e03cbOZJ5zqbY4RKfS zwSvArTWAVXdNi7<{`qW>(LW%B^D?nO5`IF708?nO!L7k231V&F=kYAh@Q~6ZV(WLV z>CP7u3NS2`(%F^*d)d)fcG7qwO5ckH{$ENzu@ihL@Smx{&EovJv*>w{0G^_~+W(nc z{O5OM13*1lw0tl?HmK#qmvAvY>W^Wp9gCEKJZGpyCbnJq`=TO*#>hfqHXBkLdx~

    ud4om_oO}siiTbM`z<3RKcIC{^tLj3;Ah&XN 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�a^k_nO|_ENi3e8R?c1hriYa2+voDNB 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

    Fo&8q7=YKu#ABRUQV^gt{ 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


    WxU%FbZ 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 alOk@=| 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%0AR+Px~x&_o3b{1Ki;c+!R)e`***(@ETc&v;v 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ⅈBLRCgFISZ^IdL=bC2{hjtDYtb;OZ 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%0A6aMYQQN_!%=W=}qV@S)iYe*?ll9P|S8 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%0DjyBrLS)l7vVCihdCPZtfS0kQS2GB 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%0A6@wATU3uJ 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∩FGm}rjjkI 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/content/tyk-cloud/telemetry.md b/tyk-docs/content/tyk-cloud/telemetry.md new file mode 100644 index 0000000000..3a7ce0ef12 --- /dev/null +++ b/tyk-docs/content/tyk-cloud/telemetry.md @@ -0,0 +1,40 @@ +--- +title: "Telemetry" +date: 2024-12-12 +weight: 1 +tags: ["Tyk Cloud", "Configuration", "Telemetry"] +description: "Telemetry" +--- + +## Introduction + +Telemetry in Tyk Cloud enables distributed tracing of your APIs, allowing you to track and analyze how requests flow through your system. +This trace data helps you understand request paths, identify bottlenecks, and troubleshoot issues by providing detailed insights into each request's journey through your API infrastructure. + +We support distributed tracing for `Cloud Data Plane` deployments. You can enable it while creating or updating after setting up telemetry. + +Since this functionality is powered by Tyk Gateway's OpenTelemetry integration, we recommend reviewing our comprehensive [OpenTelemetry documentation]({{< ref "product-stack/tyk-gateway/advanced-configurations/distributed-tracing/open-telemetry/open-telemetry-overview.md" >}}) +to understand the underlying architecture, best practices for implementation, and how to maximize the value of distributed tracing in your API infrastructure. The documentation provides detailed insights into configuration options, sampling strategies. + +## Available Telemetry Providers + +Tyk Cloud integrates with these monitoring platforms: + + + + + +- [Datadog]({{< ref "tyk-cloud/telemetry/enable-telemetry.md#configuring-datadog-provider" >}}) +- [Dynatrace]({{< ref "tyk-cloud/telemetry/enable-telemetry.md#configuring-dynatrace-provider" >}}) +- [New Relic]({{< ref "tyk-cloud/telemetry/enable-telemetry.md#configuring-new-relic-provider" >}}) +- [Elastic]({{< ref "tyk-cloud/telemetry/enable-telemetry.md#configuring-elastic-provider" >}}) +- [Custom]({{< ref "tyk-cloud/telemetry/enable-telemetry.md#configuring-elastic-provider" >}}) + + +{{< note success >}} +**Note** + +Before diving into the configuration details, please note that Telemetry is an add-on feature in Tyk Cloud. +To enable this capability for your account, please contact our [support team](https://support.tyk.io/). +Our team will help you activate this feature and ensure you have access to all the Telemetry options. +{{< /note >}} \ No newline at end of file diff --git a/tyk-docs/content/tyk-cloud/telemetry/enable-telemetry.md b/tyk-docs/content/tyk-cloud/telemetry/enable-telemetry.md new file mode 100644 index 0000000000..1a69d6e7b9 --- /dev/null +++ b/tyk-docs/content/tyk-cloud/telemetry/enable-telemetry.md @@ -0,0 +1,153 @@ +--- +title: Configuring Telemetry in Tyk Cloud +description: "Configuring Telemetry in Tyk Cloud" +menu: "main" +tags: [ "Tyk Cloud", "Telemetry", "Configuration" ] +--- + +Configuring telemetry in Tyk cloud is a two step process. +1. Configure a provider/backend at organization level. +2. Enable/Disable telemetry option while creating/updating a `Cloud Data Plane`. + +{{< note success >}} +**Note** + +Before diving into the configuration details, please note that Telemetry is an add-on feature in Tyk Cloud. +To enable this capability for your account, please contact our [support team](https://support.tyk.io/). +Our team will help you activate this feature and ensure you have access to all the Telemetry options. +{{< /note >}} + +## Steps for Configuring Telemetry Provider in Tyk Cloud + +**Step 1. Choosing Your Provider** + +In the `Tyk Cloud Console`, select `Telemetry` option. You'll see a grid displaying all supported backends/providers. Click on your preferred backend/provider to begin the configuration process. + +{{< note success >}} +**Note** + +Only a single provider/backend can be configured at any given time. +{{< /note >}} + +{{< img src="/img/cloud/telemetry-exports.png" alt="Tyk Cloud Telemetry providers" >}} + +**Step 2. Configuring Basic Elements** + +Every telemetry backend shares these fundamental settings: + +1. **Connection Toggle:** This switch activates or deactivates your telemetry export. When enabled, Tyk will start sending monitoring data to your chosen platform. + +2. **Sampling Rate:** This setting determines what percentage of your API traffic data gets sent to your monitoring platform. The default is 10%, which means Tyk will send data for one out of every ten API calls. + +**Step 3. Configuring Optional Settings** + +Beyond the basic settings, you can customize your telemetry with two optional features: + +1. **Tags to Add to the Traces :** + Add custom labels to your telemetry data to make it easier to analyze. For example: + ``` + environment:production + region:europe + team:api-gateway + ``` + +2. **Fields to Filter :** + Specify which data fields should be excluded from your telemetry. This is useful for ensuring sensitive information doesn't get sent to your monitoring platform. + +**Step 4. Configuring Provider-Specific Configuration** + +Each monitoring platform has its own requirements for connection. Let's explore what you'll need for each: + +### Configuring Datadog Provider + +- **Provider Site:** Enter your Datadog URL (like us5.datadoghq.com) +- **API Key:** Your Datadog authentication key + + Example: A Datadog setup might look like: + ``` + Provider Site: us5.datadoghq.com + API Key: your-datadog-api-key + ``` + +{{< img src="/img/cloud/telemetry-datadog.png" alt="Tyk Cloud Telemetry Datadog" >}} + +### Configuring Dynatrace Provider + +- **Provider Endpoint:** Your Dynatrace environment URL +- **API Token:** Your Dynatrace access token + + Example configuration: + ``` + Provider Endpoint: https://.live.dynatrace.com/api/v2/otlp + API Token: your-dynatrace-token + ``` + +{{< img src="/img/cloud/telemetry-dynatrace.png" alt="Tyk Cloud Telemetry Dynatrace" >}} + +### Configuring New Relic Provider + +- **Provider Endpoint:** Your New Relic HTTP endpoint +- **API Token:** Your New Relic license key + + Example configuration: + ``` + Provider Endpoint: https://security-api.newrelic.com/security/v1 + API Token: your-newrelic-api-key + ``` + +{{< img src="/img/cloud/telemetry-newrelic.png" alt="Tyk Cloud Telemetry NewRelic" >}} + +### Configuring Elastic Provider + +- **Provider Endpoint:** Your Elastic APM server address +- **Secret Token:** Your Elastic APM authentication token + + Example setup: + ``` + Provider Endpoint: https://your-elastic-cluster:8200 + Secret Token: your-elastic-secret-token + ``` + +{{< img src="/img/cloud/telemetry-elastic.png" alt="Tyk Cloud Telemetry Elastic" >}} + +### Configuring Custom Provider + +For when you need to connect to a different monitoring system: + +- **Exporter:** Choose gRPC/HTTP +- **Provider Endpoint:** Your monitoring system URL +- **Authorization:** Configure how Tyk should authenticate with your system + + Example custom configuration: + ``` + Exporter: gRPC/HTTP + Provider Endpoint: grpc://your-collector:4317 + Authorization Header Name: Authorization + Authorization Header Value: Bearer your-token + ``` + +{{< img src="/img/cloud/telemetry-custom.png" alt="Tyk Cloud Telemetry Custom" >}} + + +## Configure Telemetry Export in Cloud Data Plane Deployments + +When creating a new Cloud Data Plane deployment or editing an existing one, you can configure telemetry export settings. These settings are specific to Cloud Data Plane deployments only and allow you to monitor API performance through your chosen telemetry provider. + +When you modify any general telemetry settings in Tyk Cloud, these changes don't take immediate effect. +Your Cloud Data Planes need to be redeployed to activate the new telemetry configuration. + +#### Configuration Options + +{{< img src="/img/cloud/telemetry-enable.png" alt="Tyk Cloud Telemetry Enable" >}} + +1. **Enable Datadog Connection** + - Toggle switch to enable/disable Datadog monitoring for this specific Cloud Data Plane deployment + +2. **Sampling Rate Override** + - Choose what percentage of API traffic to monitor (default: 10%) + + {{< note success >}} + **Note** + + The sampling level can be configured at both the organization level (while setting up the provider) and the `Cloud Data Plane`. The configuration at the Cloud Data Plane will override the organization-level settings. + {{< /note >}} \ No newline at end of file diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index 5dcc27748d..c7c9317219 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -364,6 +364,18 @@ menu: path: /tyk-cloud/troubleshooting--support/glossary category: Page show: True + - title: "Telemetry" + category: Directory + show: True + menu: + - title: "Overview" + path: /tyk-cloud/telemetry + category: Page + show: True + - title: "Configuring Telemetry Provider" + path: /tyk-cloud/telemetry/enable-telemetry + category: Page + show: True - title: "Self Managed" category: Directory show: True From 16c9d82bef88a6f9f600f0d7ff85fda919080bb1 Mon Sep 17 00:00:00 2001 From: JoanCamosTyk <157505463+JoanCamosTyk@users.noreply.github.com> Date: Mon, 16 Dec 2024 14:32:22 +0100 Subject: [PATCH 36/39] [DX-1776] Cloud 1.24.0 Release Notes (#5779) --------- Co-authored-by: Master --- .../developer-support/release-notes/cloud.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tyk-docs/content/developer-support/release-notes/cloud.md b/tyk-docs/content/developer-support/release-notes/cloud.md index 2741149a52..8ddf30cb25 100644 --- a/tyk-docs/content/developer-support/release-notes/cloud.md +++ b/tyk-docs/content/developer-support/release-notes/cloud.md @@ -3,7 +3,34 @@ title: Tyk Cloud Release Notes date: xx description: "Release notes documenting updates, enhancements, and changes for Tyk Cloud" tags: ["Tyk Cloud", "Release notes", "v1.23", "1.23.0", "changelog"] + + + --- +## 1.24.0 Release Notes + +### Release Date 16 of December 2024 + +### Release Highlights + +This Tyk Cloud update introduces a groundbreaking feature for enhanced API observability and troubleshooting. With the new native Telemetry export, Tyk Cloud now allows organizations to seamlessly integrate their deployments with a variety of popular observability platforms, including built-in support for Datadog, Dynatrace, Elastic, and New Relic. For other systems, the custom provider option ensures compatibility with any platform that supports the OpenTelemetry Protocol (OTLP). + +This feature enables trace export capabilities, providing deep insights into API and plugin performance. It marks the first step in Tyk Cloud’s broader observability journey, empowering users to monitor and troubleshoot their APIs more effectively while leveraging their existing observability tools. + +For more details, check out the [documentation on setting up Telemetry export]({{< ref "tyk-cloud/telemetry/enable-telemetry" >}}). + + +### Breaking Changes + +There are no breaking changes in this release + +### Downloads +- [latest version of Mserv](https://github.com/TykTechnologies/mserv/releases/latest) + +### Deprecations + +There are no deprecations in this release + ## 1.23 Release Notes @@ -197,5 +224,7 @@ Dependencies across all Tyk Cloud components have been updated to address report +## Further Information + ### FAQ Please visit our [Developer Support]({{< ref "developer-support/community" >}}) page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute. From 87cfc9ad3a842768cbca5cbba696c514ba3b8ce9 Mon Sep 17 00:00:00 2001 From: Tit Petric Date: Tue, 17 Dec 2024 09:21:43 +0100 Subject: [PATCH 37/39] [TT-13217] Update python doc with up to date dockerfile, bump date if visible (#5821) --- .../rich-plugins/python/python.md | 32 +++++++++++-------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md b/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md index 5b450f4a7c..552ddfd7a7 100755 --- a/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md +++ b/tyk-docs/content/plugins/supported-languages/rich-plugins/python/python.md @@ -1,5 +1,5 @@ --- -date: 2017-03-24T13:10:22Z +date: 2023-12-13T10:10:22Z title: Python menu: main: @@ -10,15 +10,17 @@ aliases: - /customise-tyk/plugins/rich-plugins/python/ - /plugins/rich-plugins/python --- + ### Requirements Since v2.9, Tyk supports any currently stable [Python 3.x version](https://www.python.org/downloads/). The main requirement is to have the Python shared libraries installed. These are available as `libpython3.x` in most Linux distributions. -* Python3-dev -* [Protobuf](https://pypi.org/project/protobuf/): provides [Protocol Buffers](https://developers.google.com/protocol-buffers/) support -* [gRPC](https://pypi.org/project/grpcio/): provides [gRPC](http://www.grpc.io/) support +- Python3-dev +- [Protobuf](https://pypi.org/project/protobuf/): provides [Protocol Buffers](https://developers.google.com/protocol-buffers/) support +- [gRPC](https://pypi.org/project/grpcio/): provides [gRPC](http://www.grpc.io/) support ### Important Note Regarding Performance + Python plugins are [embedded](https://docs.python.org/3/extending/embedding.html) within the Tyk Gateway process. Tyk Gateway integrates with Python custom plugins via a [cgo](https://golang.org/cmd/cgo) bridge. `Tyk Gateway` <-> CGO <-> `Python Custom Plugin` @@ -31,33 +33,34 @@ The Tyk Gateway process initialises the Python interpreter using [Py_initialize] In the context of custom Python plugins, API calls are queued and the Python interpreter handles requests sequentially, processing them one at a time. Subsequently, this would consume large amounts of memory, and network sockets would remain open and blocked until the API request is processed. - ### Install the Python development packages {{< tabs_start >}} {{< tab_start "Docker" >}} {{< note success >}} -**Note** +**Note** Starting from Tyk Gateway version `v5.3.0`, Python is no longer bundled with the official Tyk Gateway Docker image by default, to address security vulnerabilities in the Python libraries highlighted by [Docker Scout](https://docs.docker.com/scout/).
    Whilst Python plugins are still supported by Tyk Gateway, if you want to use them you must extend the image to add support for Python. For further details, please refer to the [release notes]({{< ref "developer-support/release-notes/gateway" >}}) for Tyk Gateway `v5.3.0`. {{< /note >}} -If you wish to use Python plugins using Docker, you can extend the official Tyk Gateway Docker image by adding Python to it. +If you wish to use Python plugins using Docker, you can extend the official Tyk Gateway Docker image by adding Python to it. This example Dockerfile extends the official Tyk Gateway image to support Python plugins by installing python and the required modules: ```dockerfile ARG BASE_IMAGE -FROM ${BASE_IMAGE} +FROM ${BASE_IMAGE} AS base -# For Python plugins -RUN apt-get install -y python3-setuptools libpython3-dev python3-dev python3-grpcio +FROM python:3.11-bookworm +COPY --from=base /opt/tyk-gateway/ /opt/tyk-gateway/ +RUN pip install setuptools && pip install google && pip install 'protobuf==4.24.4' EXPOSE 8080 80 443 +ENV PYTHON_VERSION=3.11 ENV PORT=8080 WORKDIR /opt/tyk-gateway/ @@ -72,9 +75,11 @@ As an example, this command will extend Tyk Gateway `v5.3.0` to support Python p ```bash docker build --build-arg BASE_IMAGE=tykio/tyk-gateway:v5.3.0 -t tyk-gateway-python:v5.3.0 . ``` + {{< tab_end >}} {{< tab_start "Ubuntu/Debian" >}} + ```apt apt install python3 python3-dev python3-pip build-essential ``` @@ -86,9 +91,11 @@ Make sure that "pip" is available in your system, it should be typically availab ```pip3 pip3 install protobuf grpcio ``` + {{< tab_end >}} {{< tab_start "Red Hat or CentOS" >}} + ```yum yum install python3-devel python3-setuptools python3 -m ensurepip @@ -101,11 +108,11 @@ Make sure that "pip" is now available in your system, it should be typically ava ```pip3 pip3 install protobuf grpcio ``` + {{< tab_end >}} {{< tabs_end >}} - ### Python versions Newer Tyk versions provide more flexibility when using Python plugins, allowing the users to set which Python version to use. By default, Tyk will try to use the latest version available. @@ -115,7 +122,7 @@ To see the Python initialisation log, run the Tyk gateway in debug mode. To use a specific Python version, set the `python_version` flag under `coprocess_options` in the Tyk Gateway configuration file (tyk.conf). {{< note success >}} -**Note** +**Note** Tyk doesn't support Python 2.x. {{< /note >}} @@ -134,5 +141,4 @@ No output is expected from this command on successful setups. We have created [a demo Python plugin repository](https://github.com/TykTechnologies/tyk-plugin-demo-python). - The project implements a simple middleware for header injection, using a Pre hook (see [Tyk custom middleware hooks]({{< ref "plugins/supported-languages/rich-plugins/rich-plugins-work#coprocess-dispatcher---hooks" >}}). A single Python script contains the code for it, see [middleware.py](https://github.com/TykTechnologies/tyk-plugin-demo-python/blob/master/middleware.py). From 66fe236bd5b2e760927ee3b27cf7838a17c2433f Mon Sep 17 00:00:00 2001 From: Master Date: Tue, 17 Dec 2024 18:57:15 +0530 Subject: [PATCH 38/39] Update Home Page (#5747) --- tyk-docs/assets/scss/home.scss | 6 ++- tyk-docs/data/tyk_components.json | 42 +++++++------------ tyk-docs/static/img/home-page-review-icon.svg | 27 ++++++++++++ .../static/img/home_page_free_trial_icon.svg | 17 ++++++++ tyk-docs/themes/tykio/layouts/index.html | 30 +++++-------- 5 files changed, 75 insertions(+), 47 deletions(-) create mode 100644 tyk-docs/static/img/home-page-review-icon.svg create mode 100644 tyk-docs/static/img/home_page_free_trial_icon.svg diff --git a/tyk-docs/assets/scss/home.scss b/tyk-docs/assets/scss/home.scss index 105dc7a51d..833ecfe90f 100644 --- a/tyk-docs/assets/scss/home.scss +++ b/tyk-docs/assets/scss/home.scss @@ -69,10 +69,12 @@ a { } .banner { - background-image: url('../img/leaf_background.svg'); + // background-image: url('../img/leaf_background.svg'); background-size: auto; background-repeat: no-repeat; background-position: right; + margin-left: 24px; + margin-right: 24px; } @@ -87,7 +89,7 @@ a { } .explore-section { - background-image: url('../img/gradiet_explore.svg'); + // background-image: url('../img/gradiet_explore.svg'); background-size: auto; background-repeat: no-repeat; background-attachment: scroll; diff --git a/tyk-docs/data/tyk_components.json b/tyk-docs/data/tyk_components.json index 3c61aa939a..b7c95a9d72 100644 --- a/tyk-docs/data/tyk_components.json +++ b/tyk-docs/data/tyk_components.json @@ -1,32 +1,22 @@ { "components": [ { - "title": "Tyk Self Managed", - "image": "img/tyk_self_managed.svg", - "steps": "Only 4 steps", - "button_text": "Get started", - "path": "getting-started/quick-start/", - "description":"Easily install our Full Lifecycle API Management solution in your own infrastructure. There is no calling home and there are no usage limits. You have full control.", - "includes": "Includes: Tyk API Gateway, Tyk Dashboard, Tyk Portal, Tyk UDG" - },{ + "title": "Schedule your guided evaluation", + "image": "img/home-page-review-icon.svg", + "steps": "Schedule your guided evaluation", + "button_text": "Get in touch", + "path": "https://tyk.io/guided-evaluation/", + "description": "Looking to evaluate our powerful Hybrid or Self-Managed deployment types?", + "includes": "Our Solution Architects will collaborate with you to understand your needs and guide you to success." + }, + { "title": "Tyk Cloud", - "image": "img/tyk_cloud.svg", - "steps": "Only 2 steps", - "button_text": "Free trial", - "path": "deployment-and-operations/tyk-cloud-platform/quick-start/", - "description":"A fully managed service that makes it easy for API teams to create, secure, publish and maintain APIs at any scale, anywhere in the world.", - "includes": "Includes: Tyk API Gateway, Tyk Dashboard, Tyk Portal, Tyk UDG" - },{ - "title": "Tyk Open Source", - "image": "img/tyk_open_source.svg", - "steps": "Only 3 steps", - "button_text": "Get started", - "path": "deployment-and-operations/tyk-open-source-api-gateway/quick-start/", - "description":"The heart of what we do. Anything that is API Gateway-related, lives in the Gateway, or is critical for the Gateway to work is open and freely available.", - "includes":"Includes: Tyk OSS Gateway" + "image": "img/home_page_free_trial_icon.svg", + "steps": "Start your 48-hour free trial", + "button_text": "Start trial", + "path": "https://tyk.io/sign-up/", + "description": "Dive in with a cloud-based trial.", + "includes": "Get access to all features and capabilities of Tyk. No installation or credit card needed (and no need to speak with the sales team)." } - ] -} - - +} \ No newline at end of file diff --git a/tyk-docs/static/img/home-page-review-icon.svg b/tyk-docs/static/img/home-page-review-icon.svg new file mode 100644 index 0000000000..a71d70fd77 --- /dev/null +++ b/tyk-docs/static/img/home-page-review-icon.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tyk-docs/static/img/home_page_free_trial_icon.svg b/tyk-docs/static/img/home_page_free_trial_icon.svg new file mode 100644 index 0000000000..1c762e6205 --- /dev/null +++ b/tyk-docs/static/img/home_page_free_trial_icon.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/tyk-docs/themes/tykio/layouts/index.html b/tyk-docs/themes/tykio/layouts/index.html index df50250501..5e5a93333d 100644 --- a/tyk-docs/themes/tykio/layouts/index.html +++ b/tyk-docs/themes/tykio/layouts/index.html @@ -2,8 +2,8 @@
    {{- range $.Site.Data.tyk_components.components -}} -
    -
    +
    +
    {{ .title }}
    -
    {{ .steps }}
    -

    +

    +
    + {{ .steps }} +
    +

    {{ .description }}

    -

    +

    {{ .includes }}

    - From c04855421e6031248170140a6ba1b8bacb340aea Mon Sep 17 00:00:00 2001 From: Sedky Haider Date: Wed, 18 Dec 2024 02:48:26 -0500 Subject: [PATCH 39/39] TT-12495 - support RSAPSS (#5709) --- .../content/api-management/client-authentication.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tyk-docs/content/api-management/client-authentication.md b/tyk-docs/content/api-management/client-authentication.md index d7fe46ec07..610034f5d4 100644 --- a/tyk-docs/content/api-management/client-authentication.md +++ b/tyk-docs/content/api-management/client-authentication.md @@ -1182,6 +1182,19 @@ openssl genrsa -out key.rsa openssl rsa -in key.rsa -pubout > key.rsa.pub ``` +#### RSA Supported Algorithms + +Both RSA & PSA classes of RSA algorithms are supported by Tyk, including: +- RS256 +- RS384 +- RS512 +- PS256 +- PS384 +- PS512 + +Read more about the differences between RSA & PSA classes of RSA algorithms [here](https://www.encryptionconsulting.com/overview-of-rsassa-pss/). + +To use either - simply select the "RSA" signing method in the Dashboard, and Tyk will use the appropriate algorithm based on the key you provide. #### Set Up Individual JWT Secrets Enable Tyk to validate an inbound token using stored keys:

    DvXw16+juh*C)cVQ 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/assets/img/cloud/telemetry-enable.png b/tyk-docs/assets/img/cloud/telemetry-enable.png new file mode 100644 index 0000000000000000000000000000000000000000..24e0a24e4d5ce8d21db9c22acc7b40b71ad9536f GIT binary patch literal 296234 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�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
    EDUc6%Qs?qg{<&BV((qmKq_#`9~_U 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 v#r)QUWE}`i9(-K8G?{cPBwP$HK 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 z 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�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�-Q>sa{a@PLhCw7~tuA*aUcw@vV$xLL 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

  2. 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

    ?q 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 literal 0 HcmV?d00001 diff --git a/tyk-docs/content/tyk-stack/tyk-identity-broker/about-profiles.md b/tyk-docs/content/tyk-stack/tyk-identity-broker/about-profiles.md index 2f865b9630..b3fb00312c 100644 --- a/tyk-docs/content/tyk-stack/tyk-identity-broker/about-profiles.md +++ b/tyk-docs/content/tyk-stack/tyk-identity-broker/about-profiles.md @@ -74,16 +74,18 @@ In order to know and understand each of the attributes, implications as well as | ExrtactUserNameFromBasicAuthHeader | A boolean value that, when set to true, instructs TIB to gather the user and password from the Authorization header when handling the request. | No | ### Social profile fields -| Field | Description | Required | -|----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| -| CallbackBaseURL | URL to be redirected on success login | Yes | -| FailureRedirect | URL to be redirected on failure | Yes | -| UseProviders.Name | Name of the provider to be used. Valid values: `gplus`, `github`, `twitter`, `linkedin`, `dropbox`, `digitalocean`, `bitbucket`, `salesforce`, `openid-connect` | Yes | -| UseProviders.Key | Oauth Client key | yes | -| UseProviders.Secret | Oauth Client Secret | yes | -| UseProviders.DiscoverURL | used to dynamically retrieve the OpenID Provider's configuration metadata, including endpoints and supported features, in JSON format from /.well-known/openid-configuration. | Only required when using openid-connect | -| UseProviders.Scopes | Specifies the level of access or permissions a client is requesting from the user and the authorization server, for example ["openid","email"]. | No, however when using openID the scope ‘openid’ should be added | -| UseProviders.SkipUserInfoRequest | Determines whether to bypass the *UserInfo* endpoint request, improving performance by relying on the ID token alone for user details. | No | +| Field | Description | Required | +|----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| +| CallbackBaseURL | URL to be redirected on success login | Yes | +| FailureRedirect | URL to be redirected on failure | Yes | +| UseProviders.Name | Name of the provider to be used. Valid values: `gplus`, `github`, `twitter`, `linkedin`, `dropbox`, `digitalocean`, `bitbucket`, `salesforce`, `openid-connect` | Yes | +| UseProviders.Key | Oauth Client key | yes | +| UseProviders.Secret | Oauth Client Secret | yes | +| UseProviders.DiscoverURL | used to dynamically retrieve the OpenID Provider's configuration metadata, including endpoints and supported features, in JSON format from /.well-known/openid-configuration. | Only required when using openid-connect | +| UseProviders.Scopes | Specifies the level of access or permissions a client is requesting from the user and the authorization server, for example ["openid","email"]. | No, however when using openID the scope ‘openid’ should be added | +| UseProviders.SkipUserInfoRequest | Determines whether to bypass the *UserInfo* endpoint request, improving performance by relying on the ID token alone for user details. | No | +| JWE.Enabled | When set to true, JWE will be enabled, allowing Tyk to decrypt the ID token received from the IdP. If set to false, the ID token will not be decrypted. | No | +| JWE.PrivateKeyLocation | Specifies the path or identifier (certid) for the certificate that contains the private key used to decrypt the ID token when JWE is enabled. This certificate must be in PEM format and include both the public certificate and the private key. | Is only required if JWE is enabled | ### SAML profile fields diff --git a/tyk-docs/content/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth.md b/tyk-docs/content/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth.md index 379a45e364..2b4e7903c3 100644 --- a/tyk-docs/content/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth.md +++ b/tyk-docs/content/tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth.md @@ -1,6 +1,6 @@ --- date: 2021-01-20T00:40:21Z -Title: TIB implementation with GitHub and OAuth 2.0 +Title: Practical TIB Integration Examples menu: main: parent: "Tyk Identity Broker" @@ -9,6 +9,67 @@ aliases: - "/getting-started/tutorials/auth-user-for-api-access-github-oauth/" --- -### Authenticate a user for api access using Github OAuth +## Authenticate a user for api access using Github OAuth {{< youtube gqUaDM4aJTw >}} + +## Implementing JWE with OIDC in Tyk Identity Broker: A Step-by-Step Guide + +### Prerequisites +- Tyk Identity Broker v1.6.1+ or Tyk Dashboard v5.7.0+ (JWE feature is available from these versions and in all subsequent releases). +- An Identity Provider (IdP) that supports JSON Web Encryption (JWE) +- A certificate with a private key for Tyk (used to decrypt the ID token) +- A public key file for the IdP (used to encrypt the ID token) + +### Setup process + +#### Step 1. Prepare Encryption Keys + + - Load the certificate with the private key into Tyk: + - **For embedded TIB in Dashboard:** Use Tyk Dashboard's certificate manager. In the below image you can see the module in dashboard that allows to upload certificates: + {{< img src="/img/dashboard/certificate-manager/adding-certificate.gif" alt="Certificate manager" >}} + - **For standalone TIB:** Store the certificate as a file accessible to Tyk + + - Load the public key into your IdP for ID token encryption (process varies by IdP) + +#### Step 2. Configure the Identity Provider +- Create a new client in your IdP for Tyk Identity Broker + +#### Step 3. Setup OIDC Profile + - Create a new [TIB profile]({{< ref "tyk-stack/tyk-identity-broker/about-profiles#what-are-the-tib-profiles" >}}): + - Select Social > OIDC as the provider + - Enter the client key and client secret from the IdP + - Copy the callback URL from TIB and add it to the IdP client's allowed redirect URLs + {{< img src="/img/tib/profiles/tib-profile-creation.gif" alt="Profile creation" >}} + - Test the basic SSO flow to ensure it's working correctly + +#### Step 4. Enable JWE + - [Updated the TIB profile via API]{{{< ref "tyk-identity-broker/tib-rest-api#a-nameupdate-profilea-update-profile" >}}} + - Add the following fields to the `ProviderConfig` section: + + ```json + ... + "ProviderConfig": { + "JWE": { + "Enabled": true, + "PrivateKeyLocation": "CERT-ID" + }, + ... + ``` + + - Set `PrivateKeyLocation` to either: + - The certificate ID from the certificate manager, or + - The file path where the certificate and private key are stored + + - Update the IdP client configuration + - Enable JWE for the client + - Provide the public key for encryption + +#### Step 5. Verification + - Test the complete flow with JWE enabled to ensure proper functionality. + +### Troubleshooting +While setting up JWE with Tyk Identity Broker, you may encounter some challenges. This section outlines common issues and their solutions to help you navigate the implementation process smoothly. + +1. **oauth2: error decoding JWT token: jws: invalid token received, not all parts available** it means that JWE is not enabled in the profile and the IDP is already using JWE. +2. **JWE Private Key not loaded** Tyk encountered some issues while loading the certificate with the private key. Ensure that the path or certId are correct. \ No newline at end of file diff --git a/tyk-docs/data/menu.yaml b/tyk-docs/data/menu.yaml index ef8cc880c4..1c2d000413 100644 --- a/tyk-docs/data/menu.yaml +++ b/tyk-docs/data/menu.yaml @@ -4350,7 +4350,7 @@ menu: path: /tyk-identity-broker/getting-started category: Page show: True - - title: "TIB implementation with GitHub and OAuth 2.0" + - title: "Practical TIB Integration Examples" path: /tyk-stack/tyk-identity-broker/auth-user-for-api-access-github-oauth category: Page show: True From 19de6602c1be3eccf0b97d09a89dbfba58a9be53 Mon Sep 17 00:00:00 2001 From: caroltyk <97617859+caroltyk@users.noreply.github.com> Date: Wed, 27 Nov 2024 06:31:20 +0000 Subject: [PATCH 04/39] TIB 1.6 release notes (#5694) Co-authored-by: JoanCamosTyk <157505463+JoanCamosTyk@users.noreply.github.com> Co-authored-by: Yaara Co-authored-by: Sharad Regoti --- .../release-notes/tib-v1.6.md | 135 ++++++++++++++++++ tyk-docs/data/menu.yaml | 8 ++ 2 files changed, 143 insertions(+) create mode 100644 tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md diff --git a/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md b/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md new file mode 100644 index 0000000000..1663f1adaf --- /dev/null +++ b/tyk-docs/content/product-stack/tyk-identity-broker/release-notes/tib-v1.6.md @@ -0,0 +1,135 @@ +--- +title: Tyk Identity Broker 1.6 Release Notes +date: 2024-10-27T15:49:11Z +description: "Release notes documenting updates, enhancements, and changes for Tyk Identity Broker versions within the 1.6.x series." +tags: ["Tyk Identity Broker", "Release notes", "changelog", "v1.6", "1.6.1"] +--- +****Open Source** ([Mozilla Public License](https://github.com/TykTechnologies/tyk/blob/master/LICENSE.md))** + +**This page contains all release notes for version 1.6.x displayed in a reverse chronological order** + +## Support Lifetime + +Our minor releases are supported until our next minor comes out. + +--- + +## 1.6.1 Release Notes + +### Release Date 5 Nov 2024 + +### Release Highlights + +##### Enhanced Security with JWE Support for OIDC SSO +This release introduces JSON Web Encryption (JWE) support for OpenID Connect (OIDC) Single Sign-On (SSO) in the Tyk Identity Broker (TIB). With this enhancement, organizations can achieve greater security for token handling during authentication flows. JWE token validation and processing are now seamlessly integrated, offering configurable private key support for decryption. + + +### Breaking Changes + +This release has no breaking changes. + + + + + + + +### Dependencies + + +#### 3rd Party Dependencies & Tools + + +| Third Party Dependency | Tested Versions | Compatible Versions | Comments | +| ---------------------------------------------------------- | ---------------------- | ---------------------- | -------- | +| [GoLang](https://go.dev/dl/) | 1.21 | 1.21 | All our binaries | +| [MongoDB](https://www.mongodb.com/try/download/community) | 5.x, 6.x, 7.0 | 4.4.x, 5.x, 6.x and 7.0.x | Used by Tyk Identity Broker | +| [Redis](https://redis.io/download/) | 6.x - 7.0 | 6.x - 7.0 | Used by Tyk Identity Broker | + +Given the time difference between your upgrade and the release of this version, we recommend customers verify the ongoing support of third-party dependencies they install, as their status may have changed since the release. + +### Deprecations + +There are no deprecations in this release. + + + + +### Upgrade instructions + +For users currently on v1.6.0, we strongly recommend promptly upgrading to the latest release. If you are working with an older version (lower major), it is advisable to bypass version 1.6.0 and proceed directly to this latest patch release. +
    +Go to the [Upgrading Tyk](#upgrading-tyk) section for detailed upgrade Instructions. + + +### Downloads +- [Docker image to pull](https://hub.docker.com/r/tykio/tyk-identity-broker/tags?name=1.6.1) + ``` + docker pull tykio/tyk-identity-broker:v1.6.1 + ``` +- source code tarball for oss projects - [TIB v1.6.1](https://github.com/TykTechnologies/tyk-identity-broker/releases/tag/v1.6.1) + +### Changelog {#Changelog-v1.6.1} + + +#### Added + +