pi's openai-completions handler (pi-ai/dist/api/openai-completions.js) reads model.headers (populated from a provider-level "headers" field in the config), not compat.customHeaders -- that field only gets read by the Bedrock handler. Without it, pi used the openai SDK's default Authorization: Bearer <apiKey>, which Kong's key-auth plugin rejects (verified via direct fetch: apikey header -> 200, Bearer -> 401, plugin does not strip the Bearer prefix). Moved the apikey header to the correct provider-level "headers" field.
24 lines
4.3 KiB
YAML
24 lines
4.3 KiB
YAML
apiVersion: ENC[AES256_GCM,data:YW0=,iv:O7vbb38oX3ADRID4OTXB9mg5+3PbNxXpiwQ1AQYF8ik=,tag:FW5yRAA60uho0wsgYDUBSw==,type:str]
|
|
kind: ENC[AES256_GCM,data:TkhPw8oX,iv:QXfb5UW8ys9o5FRpmimvVuxrYAPZEJ4jdQV68MqVCj8=,tag:rJ7ffXik9lo5EUWgfvoMHA==,type:str]
|
|
metadata:
|
|
name: ENC[AES256_GCM,data:XohVV8OM9UQZ,iv:O/Rrpb/T8bIuSt969zDSnZ1OYRxvjdAGH/F887P+fPs=,tag:T7zlbUuQClpsDpDaB1b3Sg==,type:str]
|
|
namespace: ENC[AES256_GCM,data:p6zXMIJ/xGhp,iv:WSIURjth4nf2nu5vLbgHkPXHeuRMoXGW5Z+LfHxigF8=,tag:KDT9atV3/o8ycVcujFKQmA==,type:str]
|
|
type: ENC[AES256_GCM,data:6qGRnFhJ,iv:koA1exWU7EaKRMqjXomD+u0dfcszCmPuV9U9iwKIK7Q=,tag:7Bt+cmcZrE70NH057ho3Dw==,type:str]
|
|
stringData:
|
|
models.json: ENC[AES256_GCM,data:zvrx7vM5tqUg0cZaYEbGX/MHOr6S+yJiJd1rPDWIrXTrDc6SeqfCeTmT129tt1FAfn6htczOFT50N2wFzZXBhXGEhjAqKLHoYRziH+qIDLKaRPF1XvkNLCTjDS7dlsPLLR2/SvUshnmYeyCFGNj+N4n8gXZo8BJzMJTxPWLVVV4MCfwE8xjIihwAA5pOxT8lk4Ffo1mOrnobZGFybINvj5yn6i8pMeoIYgQ6ToCWHLKnC8rzaR1Ve5G1km4nIn5zODKwGaQeOr2ooKsvekwJRY/quJU7aKCjLF6CmJxmU9g+Kcuzm/gKPgaeePl5TXmclWnUJmjH3nkvHIvJQ70W+vaFpWDskHz6RoLWo/qtVLcirqPVHAyK2PjcTBa6wcyQQWFgD74hbaHnXXvHIWYARUEPvXvN01wRySVp7cthTDUtn1rtFmmEnmHrS+uwadsl03mm9Lo6jfXIWur0avUXQ8Qb0+pK3BavD8hI/O9omTPjXc1VBxHmg58KEYHIgerZ08YKB2C1/RsvdFFcJam4EN00G7XxBzHdtijOCqPuGPdOIYkqKOeJ9Ht5/hJY3By6SV4Q22gFBqMidvCMLtrwR4OfHmYJZVn29VhYx3CL8omUEXbuewOc4srK2/zA05bEBm7HkxOIAkb5wBmFYq0IKLpbgvRljI/T6O6kCnk/nd3spdJFUh6C+ee+x+YB/1sPrMby5XBd+vlFhgIkrF6xKT5iBZQllYa+QYbP/ytITkzMCFZJZAXx4+ZxGMxlAIfAkoj7VYRRLXgb0pz225IIZrKP4w5PSgcd+JXStZsD5yIT3//zZnzqXf9UfpMegsZ23GWCNuFpJ2ZEBNPUZVBqVvIsCxcFgSshSwPUXfBKaOmvOrV0+8Vwx1tkC+TmRPdH+sCxHH9C7UCH6EITWGOgsM64blFTd4D5C8z/SBITxIH7iJ4U0Wcg6RIBq5yRkNV5UyddLPuBZcNPfWY8aPwR1JL8eseMtg4/Q7tIsTHNqIz+80ixwvEHDMZrxgiWXPKO5cWgdVHyImuOvTkuCusTzF37A9duB9ylch8Bn14wAK/cEZu019Y3mbkYhcGHB2ex+ddSEc4VxpXd1xXLg09Y8XC21cudq61sCUZ9oQB6NCqhEE2B0xB56ZvP+SpcRmoTmn8IxM1vM2GhcneEhNLSYg/ZoRKwJyX2kb1raCxe4Q16NvEiQYTkRRy5CfeTEx/M39RZIhxtagIRh0R2kxr4olwA1VCGjmBvHRPOpzjwZHdwL+qptcbRZNQN04gGRGDPn6nICh/jOGzdxTQBaD2aVGutoHqtMD0q7aDw52Byb6mU7u1714p5RMM5VsbA0oMxBVwH0XMfp7coKA0VoksiTfGnX75mu8AURiXypkMQOXTVwV6fRmMPhIJOE7MjQF6m/vyplsa/ggJIWRy5prIXeYQFDXwUkQ9SkZT8lDITK8I9zwSwdxEm3RgZnvBaroKtEnK+X+KrOKN/Aa3ApXHyKmRgQ9fhxSsKcDOsT/+L88YP02mL8Hoj+8dwjMZ7NQyh7WlwEF6SuZeSLPLgfVWP5/ph+vLFOb15f7CsTp0NlJyCgFsf49WdI5NQyHMWkk+mE856N4hxCFhSm/vw9p3nypnHtzhmzJ6zvT01C4WsHyIWb9/jnVi7Df5hpxk71Nrd0I1HsA5dUwZJMKUw6IhuKP0+Z38euFjmJEyKiLRMA3weFnSkDOgPwFb9KH1lIYuc0K48nBwYtRu6IBB7k38Xe8L7ResZDgMgUYbDniUBWLXEXiAFJ9dTv2wh90TjQn97RQ5lVXALOR/RZPSz/LybWxEHVTTAfIk0oXIJBryquPqaolzB3MSiQZIn1wxv3GOyvDPsPK7nkf/Or5mS14DZ0YMfEaAoiu7CigEnhvc79QHi8dVeNWIhB6WGGa8NivSwq9jiqQoCHiaw3ClTQ/j3ZHv2cAAoioU/bPR2hZ/FtU95mGhzHw8wF2QnwSnb7pHYQO9TevJkUB8v+0+F/bJRJ/iOKWu/4l9d078zczuCfvF6JFoBK/GqmOMff6i8XdtF9o9t0s61qbDMGh0vezmx4/kqRzdZVwzmjd9PQtmNIlYrH5JIPlczJksRbJc3JIQ0OJePJXT1NxXQvemsbLcacF3ju9OR4e1lQ33qy36MT0pNfKnDaMDHaF9COY0/uV/zBYeOi3dfOJ8rsEKhdoqsQa7c8TrBOedAUh1y6Amaec6Rrw1Uqollyror65jSGMtDNu/4gfsEMHfA0hK6Rwh5DFMbQc8TCL1Vzn2HpsHZX2A7fesmlfNanFXId4EeAPsBQtZhyTuJNzubkRSruoV9MPATEuF/1DEGwhMEDVSG8sWIvPn1c5Z1MgMpxyDLkxNO6cRpsPgJSqgKDYkQefKOXdXfsU5B4FNtGxU/MR6fgC5PnWzqCx/x6Wd0dfP76fC40eOmKMNlb1y+cgLHeWMkUexEFYTZM8wFSITfiOf/1HAhUW51LmMAvWeTjZfNRi+Dtj94h7F/yEmkmuIPzgV5nlnicFAQMat7PjedxGXRtobaBuRWvGAG3EOBlSoD+m9vRqfoGXZSpUL9rTA3iLcTqSQgE3BK4zZ/RaxxtSOMJg5Ax5NnFAhi3C8i+0RKha047+/OXDFOdeDvOX8sRQTlPA5tf26fxS48lgS0BzxfI1rpGv8vVO/bKt0j5iUP,iv:UAn2rUgOgXT9OW8qwpQIljVVttNQ06Q8hOSJllvPWE0=,tag:2cl0oo/At+kMtbuAbV6XNw==,type:str]
|
|
sops:
|
|
age:
|
|
- enc: |
|
|
-----BEGIN AGE ENCRYPTED FILE-----
|
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3Mjk5czNMYzE5ME5sam8y
|
|
WmZpQTgrZ1MyTXBUVGVwMUl4cCtzQzdzUkVzCjRmQnVyN2RlU1dITDViZWF2OVNB
|
|
dkwrN0lPYTdncFFZRUZJK0lFNlhTMVUKLS0tIEJSanBnci81Kzl5dWtqZDJxYzZY
|
|
YXJCNGdiUHpRcmEwSC9UMzBnVk4zYjgK5faS8kzQ49gGI1pOVKO7h4AEBj/ZbeYE
|
|
AU227F5JEsF03Ob6ZUkUFs0Pde9S+KnASPGEpyQQa6r2zvJMRQdytQ==
|
|
-----END AGE ENCRYPTED FILE-----
|
|
recipient: age1e5fq3hwxy78psus2nfvmtmua36g0u3suk78ephw6246l974d2utsvn0hla
|
|
lastmodified: "2026-08-16T13:47:18Z"
|
|
mac: ENC[AES256_GCM,data:XXhC4+jTt0cE8l5WvoMmkShnuhfF4HLWXou3Y3Ui21K8v6Ni1T3kdUCL8W1R+duvQrJpV+Q2L7HIniG/kRvk+R82qpfzqWSexOaXhP+qkL3UK6GNrNyLz+NyGylK7W16pH4T4iMVr2WQHd2OfPVCPyQA4pZcPHMyv+Eo7gZg02E=,iv:D65Zra216I+KsDLo19wJGupikQtHi5wycCbhXxHIjPE=,tag:O5BmhN8Vs4OhC5hSZ6Wa+w==,type:str]
|
|
unencrypted_suffix: _unencrypted
|
|
version: 3.13.2
|