diff --git a/api/spec/openapi.gen.go b/api/spec/openapi.gen.go index ddebba3ab..723df98e9 100644 --- a/api/spec/openapi.gen.go +++ b/api/spec/openapi.gen.go @@ -27,136 +27,136 @@ var swaggerSpec = []string{ "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", - "v//fAAAA//+4sSmyf78AAA==", + "jsajjxOJl0INymiafJPQ0fv78ei0osszKooMb9UKfAbNWIIzWFlr4Tlehz+UPAv8fl/D3J43ArECGLDF", + "G/Be6l3rkkDn07NTVPewG92WQQvG1zgw1Pfwe8VQ9UhzohgwuoswPluoAf8/J4vR8ej/HdZi9dDI1MMf", + "315fQLt7PYJoQ3DCOd4CAOr7AEioJGsR3BPzA1YjtghNT/8+tEEW0buT1JBTor1HXQdFIbESkxHBcoJ+", + "vDp/g0RApGu2E+VcqNXkMts2xQx2oDhAr2+urpUsKjgRJJdaojtopwLlTCJOZMnzCA1Ez5wolHs4eE4f", + "f/AAuPQpT58akWo2lpPzxej45zbNfmqQ3L2irxizulj1oFx4XGwUiE68NJjDzOjBHWGVB4vfK4llGRAA", + "DmsIaNJmDFF1jfD8p571mQFM8+DKrrwmwXUFpbTud14E9usc/iNACqi+wA3ervjLHLaWviUoUAau4uXH", + "ZIXzJTlxlcxTlpIBRw/RfYEHS7lCCUsJWnC21vTHEVM/t9bIipnajAHrrFo6a+0F+PELjwl0+wWtH4sC", + "+XFG0wH7DM2GLX4AUzqrn+ZUUiyJOpm+OZ0O2Gzbo3WYTYUo1YGFLmOah2fAzFIiMc1CUqAUkq3pb0Sg", + "zQpL9IHmqRJoRi+eaoRucC6VkoyW9A6OkdvTq7DUzzBdz1IscWgnNZJhZRecTCxCldBUW/h9xjYHami9", + "3CvC72iizAIpEBbo/AJ6bnCWEYlwUWQ0gdW1pUcFCcnTgtE8gORT9R3Z71aGm/UCMW1WhHsaEQyJ1OLQ", + "CgtzmtY6Pl5IwpEoAXOLMsu2CCdqyUCovXaGtg1m1Gz5jJotnhmV1wf/5vKVe+4ALZiu6vh214XRW0DZ", + "AbrGH4hQmkei1pQQxO4IN0bJbEOy7EPONtUxjwrM8ZpIwg/QdIHmTLFaB5AI52l7MMwJKDQFZ3c0VZqH", + "1iQMV9uR6lWolW1ollkFBiVAopGWNK9O4YLkNJ3YZhPb7PjwsAvfFaRDLHhNe4crlqWEuySoKVYPierF", + "Jyxf0GXJdZuby1dhSCoSm3kAdJzY7ofuEa3+FVJszhQ6GwqoQGLFyixVtJ2wXFBYqUB6nHRUq0mjVKFZ", + "aWk9IFhjLroaaNA9hiTrIgOKSwOmsPkYsGI0kxrVbLOiGfE5NGF5kpWp1uioAG2U40QNfFDZ5mDjq4EL", + "zhZqCCqqrdW6dKkOqDKTtMj86Q1kYZZfcpzLiHlvJFGCc8s6lhGglzHb5IqzcrnSsDv8eq3+rhs68gq0", + "f40I9xzNfWeYErS+CwwOWZojtRqOhCSFALHQ5u2ULHCZSTWffwipIYJ4cJWTIAve4awkxmCpnCmN41CR", + "qTq7CvxrSawfRks+JNXRRkVl+szVKQd+mnI+MYYbAKvdOLBgKwU3VK4i86kVgnggHyUSRKKyQGkJEBec", + "3FFWCgdTtQMIKQlM74hA2CxN4dvfwzGiUhuLFCiUqL9pbqG2QJ/4QBt1wC4/gCIBHyzG6/k0IMY+fXN+", + "XdEKzZGn+eizepGxjRYdBScTXJ3kM00nwtq3wf220j9C+qda4Ir6lAAaNpsIyyAfC6LUAqUsGPbTNF0Q", + "ruST2gIQyT4RWz8NOtM0CkzR9Df2uv4q+OC7GAaYazu3GUvtf61e+PDpg20XF8x4VArCZwXNZ7Vm+0B1", + "7DvGMoJzQ6eiIAldbOEsXBG5UkxgTd968Wbv9fpAA1HwoIvpG4QzpvpanrI+fE214Czx6cmgR4FS79Bc", + "w6QWqk/kSiFJK42kvWC7kkWGl0rQp4ppQO/VC1G6bY4kx7nQBwCC88AMrKSO0aMCgDgOyIiW/1Abod/R", + "NcRIiLm+2GJB+Mw5Z4PKpgEmooI554qRzLV4LLBQbJyRO3UU0VzrDgq3DQHNAoPDrqOrsigYl0IroP+4", + "vr5AP7y8BlkPf1ySlHKSyAMzrUBrvK3ca/+81BTkKHFWsIMirxCoiBM4TajTFnR/uSKUozWbK9Z9W1kc", + "YSf9x7BS4qHFil/HatFMzzgnmUYJXaCckDTi9LMs3Z7pwucYjbYfSE44EO759QUqtJ5c4bbfNRWkjHHb", + "Oo4R7EPo/fbizFiOPpW68uSMLIBSWP49zSThos8XftHZGTzqoQbTNChoi5IXTJDuO4jQorrwcUc4XdAw", + "RlwJ0GHhO86EAIFOz/r9HsHhTOf30bVF91utRG2zcx8T9ArUcswcIl2eOjgiA16Mq8pk0QcUVXrLApXC", + "d/1V6njQYeC5jqO2Cs3RLxvxXCPxBWIc/SJYnqXP9UgvjDkKCv+O/ue92oF7N8JO22hGNA2r+9pr08O4", + "DfIxXl2f0QIUNlTwhEd/tDM5WanTIl+GkL3CGc6XoB7jNNWmiDEr2SLmGlAyPHz7mzomrx5CmRlsTaUS", + "+2IrJFkjuEUBf4o5jXpcEPV1QdfehJzf9+NRytY4dEKdwe87rFtLRH1QviZyxSIouLmcWgy0u+jDV5tW", + "IQwtKBcSkfSrb7/9y99RUc4zmsCtF1ugs+kZem4ObdCPteF/Nj170YfNOH1aIhtIotUtbkv0/7IJeHOq", + "SAJ0RZc5SdGPb6+VvVdd76ml1Vd88dvliFlWjw8XYleBCzE9lep+gE5LzvV9KBicebZFQqtyJHUaKqJ4", + "9stGPutXSRzgxoAC51iqcDX0guxcmTsX1voVsYMJLBWFOG3/FJhy4SqTlf2s/SslzVLjC2SchK1P9Pzy", + "+9O//u2bv7/Q6rsmMuhkHCladdaWrPV3gwXljwf+ndAhqX20YQXGfBUk4SSsLrSs87hd/MCYAH+GsQNx", + "Ez47l7PTzY0byEwXnBSYE3D7q3PiJKI9xbQT0x/pewM1QsMtsvtNjBGwB0rArll+sMXrLChtvYnOzAAN", + "v9muTpZboGcbjSC0DfZupIyld6Nub8gT7XroonHQLj3Njvcb1gO2PBpS4u15/BZKM/8z0WB/n89t9+Cu", + "+DPxmpC7ju8mD4FhI1YknQWH230BFyeX3WDHjGbH+zI9gygVYyATVBYJW7f9Z25cT2ualntIGcc78Z42", + "/q3Vk36fsQ2omZ3mU7UP4xglBCzpYfS6I/F3GDUBQh8Q0YbLlJI80WCGlbJ3qtG7kXFoGl93WjlWjBM8", + "uF9piCjONCXoUE5zleMYdfXdxpyVeVi/ffo4vEEEHO75OwfkfZxVZpkAAnU3NECPNQk9lPYuiSgzuTMF", + "xoTrXoK8akpoUVj4zoqmySw2mNYA67VUcV6BU1rybYCMLm9eIrpwQw5MYOCWSITvMM3wPCP2Qsi4Ts4v", + "bKS6vgAEQ8U6uuvACsl0B9QMfEQ0F5JgCABJ2juBnp+RBeHcC3IDd+OLiE/cpbvEpaMKIS4aLTa6aNCQ", + "0nBK7HYcNqJ1KclSsaOK44DaMddg999FKVYhfW+IilqKVUNDMZ27xPnvoJzGIs7GEXBcguhBz1DCAG1n", + "d40Qug3WArtiX01IcV6u53CJhiXixLiihR8Da44Caz7eXE7dsFgsEFZmPZX0jthoWiUA/B51RK1AWMKA", + "KRXKyDKXdLFXL2heSi1J5LagCc6yrY57yrCaUZn1K8Ylek4OlgdjNCdyQ0iOvoUbmr8eHVlAX8SedGgV", + "s+Q09qCjXgQogwrbOmCDBYCugpeYkCQ1ghBQpvAkaL7MyKQU8FCEcGLCojV+RUESwKJ3RdS+dA9fKvf6", + "L9yleg9lGvQdI8yhro1LsqRCEg5a/ikoWy85ZzxO4dASfXVwVAcoqCFM3BJRnTvOY/gecMoDrtHJ1el0", + "asaAqziNneChCq26nd//KNc4n3CCUzgA9egQgOG0s/SsZ63cgCmZl8tlePLGXuk1ORvTi9RH7E5Utnfv", + "S1SoGx9K2OXfQKCJa1dtK51Tz6V1aiOSaqctydMJOKNMpIvHDF2RdkEOv7l8ZUGAQIENmaMCL4kxJUHj", + "dW6N8ZyVss+IAPdcIrt0bN1Y1CJXR/dthTY5oT8qCCsyYgmfKmxVcTp6+rEjE8ka0wzhNOVECB3wNTxe", + "o44E64K6Jgc/Bgy7KAFBl2VsU0WmVXfoJNVuTHEciMwao5Lnx5TIxTE4NcUxhFEfw1QTNdVxINRnt2X+", + "svkQikEGuJ8JfSK+JXP0E9miKyJRypJyrdYEYFev+Wz8Tb3oZ8Lx37vBdvX9npq7lwbtoWAd2kkQtOc/", + "vv3phQfgQ0Cr0ZSxJesFzagI5tBSh5nqVl1vdPBDwTKabIdNAN4JoSPbVr6kKDi9w8kW6eHqvYF+etQ5", + "EWjFNlq7IEXGttCC8SXO63inLCOJFGNFmmKMOAGMjUFfUCpJxgQRqCBcsBxnOiAqbDrpwA+1sC6uscxg", + "2+tQ3GklAxoYRFVgFNhfwFLCxqC02cZhxd14wXOHDuN6Lx6uzfgJziHgzPwacSIGhMHujByJjAu9eRYF", + "TshEKDsOwlEyKsDM1k9kNQjRpbSenfU/12ULucE8fEd9gsqc/loS82BXGV2W+kF9RTc307MXCAuhb9C8", + "Z7soJXckU+csYhzZeTRzixXhVayPrzwZvANPmWm9UauB9HmbbnO8NkcKN6pCxAVVLfWOcBFUlk6Q+RRY", + "sE/2NRhVS1jLOxehkYsB/XjYLhRcyLN15NL2snouYeZtRN3qfhVw2i3RRbs5y8kYebdGM6X7N3+bY0GT", + "A/SG5aSKBFazGNmsGwv0PAerBuGiEGMbAKb+eOE8Jc+ZRCt8R5AeW1TxmsfBScM4E48WyJLwNTgKhXkp", + "U4nkxt42JLSOWeY4kSV4d3T4mVjRorLePEUPm2BpdzS/AfiRhOZWK3b8I7T7nrxDJ36UWt37qAyud2s2", + "U+SHq7hAG2/e1MJ7rlxDyo3Df52Pf3T8KkmDzzWulfmOpSFEV+OrmXuDRdtr7T6Q/UOaBvVtdBB5+rOx", + "5fVFvGVhK6FZvqD1Oy0LpCNcKjO/IVJ6oep8QRPdEt1X+030AOrQOIJkEeZnJUX0p86t+mI2fTGbvphN", + "X8ymL2bTF7Ppi9n0xWz6Yjb96c0m71q9HTvpWRGddOZrUO97DLIdLzquJOMPSnEiJOO7JvdQzYIiuDNG", + "8vOFhzl33ACqg+tuPA280I4NskNalYegvSOnSt/ydotnuylSLEnz2UGUmDqbV9e7QvIy0Wxfqg5q9ben", + "0XRIdQRL8D3V419RmAj8Bc1IZAbz9bY+uXpD5s1orb5jfz0B6B0a7Ub/wD28xRlVw1zU9EDSgTLhTvc1", + "T+tbD4SVrC1o/hDPTCRKL2C0BV9eogYoO77dvFEHgYG8byvbADk71Ivcx29Sf3zMQ3cpngDivAB2JPGI", + "9JANUGnLDShMh11U9kicp/dMPO1/TVuL/wqGVgBwP+qH7iHhdLGtufV0RZIPsSBM3TgY7+cYJAtMs5IT", + "lKihkAnMCr1+I8mH0Ms31QvWGY/7aHeDAAu0JkLgJXnwO7Fbp41RlAeoVbAQC1lwInfnOhA+OPKvOUjf", + "e1lnx1zo+uJlf4+XrQNffDYx4D75jISSdmzCbs+uY3N3Pgi9a/LOvt+DPtEDy/s41oa8UexE3JBzopIw", + "XqCx6KNjxVV+eO4u1OQyZVcgb3RBO6LEDQgeIoG9rCn/MjK4U262uDOGk0egtk9MemjtJrCdxJQLQyWo", + "/GwSQYWxBmZvAretOdYgdW7JQ0RmCA9DhKYL1c5iEz79AeRmaPGPwN+usnMH2n6Q8Iyxa7/4DK5qMGbe", + "kiz7KWeb/Lwg+fTs1E2jGCIu1QjpVl15vgc+ynRya55fPBPOTYIf+P+y6w7ZcazNqnfvkdzSgETf/W8N", + "GACimv8HuDS53rZuACikR7X3LbtdSjQMSw04zlm+XbNSzEylgL412Oxa5rlRJEOYdXniRuYviMPAwTRk", + "+vmBXLFSIlxHPOgXDjbXIBVogTPvEaiTJMy9Wdhh38/0nQIyjoJL936ic+/9O6qn235v3CekAG2SPh2c", + "P5sEB++Dt1VU2JclD4PW92fvwr6a5jq3ruURBnf5ImObJ+IAm0K0uhs1+R3qRHOQWpHqlLLfnE6HE3rn", + "i2T35bGPwA56DZBGTLINRN3u4sZRWLqOhYo5hjpJGoPph+x7OWk0tQdpe45lsnKzrLlk3ZnWd2A7s+Du", + "Vg3WbzJcWhdwGaQ7tEuw9L1JDuJrbHcrtKBOog2vLIy/OHkFKGJHIlPLpPmC6QsqiI6C91JrTLPR8WhF", + "soz9h+SlkPOMJQcpuRvZ0jeja/XzdxlLkCR4rUgMUjOOVlIW4vjw0O+mdqnxDt12vz29ssLGrzNisizi", + "PPVUR5M17e3Xp+j2dHJyMXVzdmrMfHMLqR4kS5ibuu3Q6nBuFmXdr86cmdGEGA3XrPSkwMmKTL46OGot", + "crPZHGD4fMD48tD0FYevpqcv31y9VH0O5Eetj7rqJ4WLXse3ZXPJP789vXqh3Xn6AmV0dKAmBh8VyXFB", + "R8ejrw+OAJYCyxUQ+6FZn0NXh3VtjILFb6CEi/L6XknJCmyzDI4umJA1rKKqiGGuqb5j6dZSENEc76SR", + "PFQ2Y11PrY83uy9y7u/vHfUFVvfV0dFOkzeM0fsWZZ7/BOwvyvUa820fpto8Na62Y8lZWYjDT/Dv9Ow+", + "sD+Hn/S/07N7BdwyFGR6SSSn5I6IZsKF2H79QILbVTjJpH6OpPP+QYFqrpyUPQo0VjO9WcnIlY6Sl2Tc", + "RnBtkrajifSKw1OI+uvwOd5/dqIYsCldpOEIIHFo8pzXageAObFXemH+tVU/gtmam/fiVeKbNrEMKJ2y", + "Dz7vnfYJWP2B85sTdAgVPGwTdqGNQieYmECijUmKJQYq+W3iZFIKE4hJTWHti2AyMDc9nJPi1MuVFDgP", + "9MiR3Ff7oJZBabf2TDHD0h8NoZqhqdoeRCfeXVrk6DcBjVXCFUd8VYVZJKvCUPxyFaYihUnn7SfDjpGK", + "l6NnnwRSz/OZqKGZ+GWn/fcyFw3e6VKsGidFryxo7bgJj3TToMGrAlB1vBzz2vPlkadzs9PY7Ujyk31t", + "ek+ulTgJ9G1QNFHNLhslJOO7nekQiiYee6L3xevtYyu659wzL/ZE8A1hyYdgfhdaMIFHZOJ7l3rowQbc", + "iGi0UumEZ/lUMCDeah+E0DvtnmmhP0ZpCDkMR3wPERhvqjj8VEU63lf/N5GOvl0IHYEkBphrNu1z1GBz", + "4ysfYbI1pjOAd89Zx3HuZMeFOWHazL0fcVM0Elrv6+QJ5XX/XXwTAAhKhioSw8jRk1xVvTpG0+QLXUYU", + "K+cCxS0Vo3StadCr6XogaQ71Kk1KND+uRsQqEIbqxldNofhvxjbe6eXWdmlzj30iUFO1Lc+zLx4K1yHa", + "8/kQKwcziNn6Chn1cF8n0x1sSJZNoCzjoSkVmTQve2LuwZLnAnmd2vt7Dp/1bcFojwjuDI0Y5lnTVqe3", + "nhBmezyalQxK9yqCGrLn6UXPYwioItFJfc/2BETkiQh7BfUZiSp0F/oQ0mqh5xFUdvavT2XqhD+slN0o", + "rcTCjQx27Zt5c2bosswQF1S98m3WfnSTXTQIjqZJpcf33WH0lgwAnP1aEr6tkdbM+v+ITboOZTyJzeu+", + "i3zEnCeoikREKeGNRObKWqkuPW2RUag7Z5KGBjOFjs2bZdMzRXipNBGpa6tGF8RSMqvDIh+5KvNgGGDe", + "4Loyql6jqZlnJxsGUv2odMc9DWadtWkH9AWQMgcneGnSunhZItz8BJWvzZZfzbaICIn1U/O0rjsZnNJk", + "rfHqtDohXwVnwF+M6xe7a/zBNo8mhA1zRJ2AYXdk6Ygqm69Xc3zPhDrrwG4EkttCujrdjpdrp0qvs8ZU", + "l+jWtWTdV9DWtw01wXGWzXHyQWvgQdSbGrdCh4fpOU0SA7O7BtMOIaghfWrQE9Qlba/+cX7z6qzS4E00", + "+J3JW5NwJsREUFlDu2B8Sfg2isjqCdfD6dsmtVYGyB3ZCpP0Q//m5OlxXkWov02UWFWIn80V4g/Qa1t0", + "OjKJY8Bo4t8q6oHzeebfO1Q75u0PzVGCdbBxoL61iGEqnMd7J8zpkJFnAtVBVzlJpK2XdHP5Sm+3+RtS", + "KpWCVJmt2R3h24ppQbRJwtc0Jw5CnykUFXhOMyopEUCuVeqJA3T58vT89euXb85enilMVAGhNeIuu1nP", + "xsRZ9edBLAi+sBVcIdSU8PrkP2G5ivvqzNSW1UzhYEnX9DdSMc4zKONOONR7eILVwbPWlY4h3ClAwSnq", + "bXN76HjShHAQKGbbbFYU8lHa9CwNY5/wA3QSLaKtjuM61VSBhSlojXPXUwBWp5s7vDrga5dDjXmThow3", + "b3jd+uJQ9lZ1MSOYYtsaTE9utVdzXc+7LoVEEn8AdwZT0p6VNpNEVcHb1IVYllgpgUQDwDhd0lx9Nmuh", + "Ji0cH6PE1srEOcJSKsEc2V8X+AdtsRMKC0DXqbZ0kBn2MqyoZTRzyIROC42jRkU5jdt3o3A2Lj3xhKYT", + "WATRP0+snMDzjEx0m3ejqoaoUMqtVSPfjdytbhxySnBANeIrNMeKBm4uX4WT1b9z0rq9G1V14cP6CCN6", + "b3HGCU63OnmKau6lKQRCrbPP2BRrVKcD4iaQptFPUYVu+T//9d8C1bYtylj9hKRTsZ5pVI52CRz6+uir", + "DqP142Sz2UwWjK8nJc9IrvTL1Ldiw1k/YoUK2/qGzj1V1UbupbJAbzCATE4/KH2QbRFeAFkAaZv6MUo/", + "opIurb+QU/FBHaMZwR8iOZjCT+DtchBdGBKChh5BbnBVdd0Sp5MoKFAAX62NfMSJyRG3S5Wm5os/m4ig", + "z7n+PSvztOExAE9fX3BGnVSmsqKHhGGAYiA8TYrmyAaDAevgvIEfCI0Pm8l7j7FwYx0+i6828MR1iJen", + "4Z3t3qgC8/gOVek989SGUYWLeWgbINvanJ4tUan0tiWRolkkpU79BsePow1j0a4AYst9OAqVHa81cbdP", + "JVjGY7d74Z2FYbSUz5/OIomn1w2jIxmWo9d3wBz/MVxFPWBGM8o9wAXUmVvrz6viV5r4H1m970wDOkBI", + "/N9yy33GYrk7e/CGqoVfXHThNFur4KPQP5g3JfrutLpG/Bd3hvVVQusoAO4fsyHLoq0U/+VJg15jBdgC", + "2vGprhGgtvCbo28DeRv0IfuGSXSiEypD0798Hc3xil7mksotumYMvcJ8SaDDV38PCBPG0Gucby3eRUhR", + "j5QsHGBjGXvSVd9bweeqQaxY3Z7UXJrqYqUBg+/MvPAGiSWMW6aRKRcM3UJLvUqkVX6RWt29vdCD7SKS", + "r2R1JIftGEjbZQpa6yvkdkazIrY8C1ENNsuhqsCacbi5tu8e3dwbIpLFpJ+lAoHcV6USHwrKb0Ofv9f5", + "iZrP+4zCJMr5mspI8W7VwNGOOSuXK3R7etWk0LvCpVB78sSv0hUH2FaA/RXO00ynrDczOyFc7Trs6mhk", + "6iwqCWKleblTXeFHHmUoA/DSgtZzp+4kW63fBzkR0LFr18fd/1qPbtcl18NfB359FJRuBiEBGeUgq0Me", + "VWzR6e5xU53D/umkTmAdYGXycyJW5rP1nlY+IbYIOfxc1/UKC2PpKmMMvH6ihCkXZdZRmb5NIcDL+xOT", + "HSavdSiOrUexdsuDt9kRmPbdd9RJquimzKAYtSWUoEU6xMQAZLcdkY+ad1blFQrZ63xbSLbkuFjZ1PE4", + "T9nayyTu2HxWdJOOurNelRlHre+Ftk6rMdj+aJdViFgjg5LZemRhe4CIGwJ+tz3ZIrl3XoeWL9sccWmP", + "c8SkWKfcppixKNIuh0QnZOyFPZ6eN44Tm8wWwOVV7YvclFbnlYbVM3tDM3ao4P3wY/pJNN8TEGMglvr8", + "wUrZDSgA3+EU1b7rlpj3Uj51y/rOSExb3+FLtHzrjNWIEV45DJy3KpjVQv329CoqYENajZ5AO+73dA/S", + "UQxuz7ZfV9WDPtvvaJ9Q+JWmA6D0cJ4d0hBCtX1hDrRHpv9Qpfkkts5UGLYOIV/gF9vwi23YZxvOt7Xp", + "576h8V/6aL+Xl/ASjuGwsehkk4xT9Cf5EbLGZJiuHRPSJ2ObiGTq9ITEAo+Nxw9kkANI3AR7bt6T0iaa", + "ekCGnT40L4nUkzvGjXG7G7PbfVB1EEZ0XwacM/B510/fw+ei2pPdQ+urDd79QahOR9uvS5xZl32FRTPq", + "fpWK28ZstjTVXtWK9sPPZlLsfb38DCZx3/eb5ljC70FPmZsp4AdIof0/E/3zEmv1AJGmiSOzP8cjy9uL", + "z0GtjSl3ItbPft4Oo3R3licQyL8Lif8e4thV5vYqj1s54j+LRA7mEN9BJhc+ekK0qrqBvasprM4+eXx4", + "mLEEZysm5PG/Hf3taKQ2xAzRpAnttp9o32CqS6o1rk+bQdWjNmVZuAaOUy0j4N7XN/YrgjO5QrYkg+mn", + "f9U/3r+//98AAAD//61QAceXvwAA", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/docs/v1/openapi.yaml b/docs/v1/openapi.yaml index dcfd1dc9a..1e71ca84b 100644 --- a/docs/v1/openapi.yaml +++ b/docs/v1/openapi.yaml @@ -870,6 +870,8 @@ components: type: string locale: type: string + url: + type: string CredentialIssuer: title: CredentialIssuer x-tag: diff --git a/pkg/restapi/v1/issuer/controller.go b/pkg/restapi/v1/issuer/controller.go index aff8d0faf..373dc346a 100644 --- a/pkg/restapi/v1/issuer/controller.go +++ b/pkg/restapi/v1/issuer/controller.go @@ -732,7 +732,9 @@ func (c *Controller) OpenidCredentialIssuerConfig(ctx echo.Context, profileID, p } func (c *Controller) getOpenIDIssuerConfig( - profileID, profileVersion string) (*WellKnownOpenIDIssuerConfiguration, error) { + profileID string, + profileVersion string, +) (*WellKnownOpenIDIssuerConfiguration, error) { host := c.externalHostURL if !strings.HasSuffix(host, "/") { host += "/" @@ -755,8 +757,8 @@ func (c *Controller) getOpenIDIssuerConfig( issuerURL, _ := url.JoinPath(c.externalHostURL, "issuer", profileID, profileVersion) final := &WellKnownOpenIDIssuerConfiguration{ - AuthorizationServer: fmt.Sprintf("%soidc/authorize", host), // todo check - BatchCredentialEndpoint: nil, // no support for now + AuthorizationServer: fmt.Sprintf("%soidc/authorize", host), + BatchCredentialEndpoint: nil, // no support for now CredentialEndpoint: fmt.Sprintf("%soidc/credential", host), CredentialsSupported: finalCredentials, CredentialIssuer: issuerURL, @@ -764,6 +766,7 @@ func (c *Controller) getOpenIDIssuerConfig( { Locale: lo.ToPtr("en-US"), Name: lo.ToPtr(issuer.Name), + Url: lo.ToPtr(issuer.URL), }, }), } diff --git a/pkg/restapi/v1/issuer/controller_test.go b/pkg/restapi/v1/issuer/controller_test.go index 24ab75bb7..a9f74d5fc 100644 --- a/pkg/restapi/v1/issuer/controller_test.go +++ b/pkg/restapi/v1/issuer/controller_test.go @@ -1496,6 +1496,7 @@ func TestOpenIdIssuerConfiguration(t *testing.T) { profileSvc := NewMockProfileService(gomock.NewController(t)) profileSvc.EXPECT().GetProfile(profileID, profileVersion).Return(&profileapi.Issuer{ Name: "random_name", + URL: "https://localhost.com.local/abcd", VCConfig: &profileapi.VCConfig{ DIDMethod: "orb", KeyType: "ECDSASecp256k1DER", @@ -1523,6 +1524,7 @@ func TestOpenIdIssuerConfiguration(t *testing.T) { assert.Equal(t, expected.CredentialEndpoint, result.CredentialEndpoint) assert.Equal(t, "random_name", *(*result.Display)[0].Name) assert.Equal(t, "en-US", *(*result.Display)[0].Locale) + assert.Equal(t, "https://localhost.com.local/abcd", *(*result.Display)[0].Url) assert.Len(t, result.CredentialsSupported, 1) meta := (result.CredentialsSupported)[0].(map[string]interface{}) //nolint diff --git a/pkg/restapi/v1/issuer/openapi.gen.go b/pkg/restapi/v1/issuer/openapi.gen.go index f8b057f7b..ec53d1993 100644 --- a/pkg/restapi/v1/issuer/openapi.gen.go +++ b/pkg/restapi/v1/issuer/openapi.gen.go @@ -24,6 +24,7 @@ import ( type CredentialDisplay struct { Locale *string `json:"locale,omitempty"` Name *string `json:"name,omitempty"` + Url *string `json:"url,omitempty"` } // Credential status.