From 79c5eca63942910663d440f4afc981373ba50038 Mon Sep 17 00:00:00 2001 From: MathMan05 Date: Fri, 19 Dec 2025 20:26:10 -0600 Subject: [PATCH 1/2] DM bot Fix Makes the API conform to https://docs.discord.food/resources/channel#create-private-channel This should help with bot compat which says to make DMs like this https://discord.com/developers/docs/resources/user#create-dm --- assets/openapi.json | Bin 877730 -> 863912 bytes assets/schemas.json | Bin 394982 -> 386391 bytes src/api/routes/users/@me/channels.ts | 2 +- .../uncategorised/DmChannelCreateSchema.ts | 4 +++- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/assets/openapi.json b/assets/openapi.json index e7868ddc20e837a352951f9225dc4525984552ec..39bb18b643a9fd8b8e44f45fc85a007e0c0c2529 100644 GIT binary patch delta 1821 zcmbVMYfx2H6rO#~+2`!@xNikP9#>336ubr)S;9?e)Ra*}EfMq*4mkBI5C(M`LZqOT@-H!_G}C>FfAiASQz+p2YA}J=g}O=*?DMaA*aw0 z&81UtHE~f;J6gXSYbb*|SB1PG3|7w|BTB%xfG&kw;hYQ1tEh;v?+~wa7p`$o_pJE1 z-xn-_P%JmaA3BhWJ@1p~$e^S04gvdOngZr5k_4gEL~sIE|I8DDH4f&z$VoVIg3#mKSHE81uyLbcx*x5d z2$KZ#tf9MjI2PhW+>}Po%GgDP)UjB8UHC8oowMkK@n{-Hy&4|gK+nVs((fIb2Dj~| z*POU0lU|Y0T1$6}n0rkaPH}uB?KTc}7tvcu?@;j7h!U=-7ULhl*x%_9d59Tg91>*= zw23D<_~91ai7O6^6$+O=87#NBWWOsVahr$Ffb0%2#c%GG{WCTsK_Hr1u=kkg4JT=E zK3$3dyCR#xep*}#J>QDvLG<;ISmbw2iH6=rX)2g&$w&ySCy96SZ;TM^IQe_=nFpcj zy6zwQWl9x%J4{ND{jCiqsB>^u@Z9Dpt|Y>@+~BAqps_<2{jT0ywua-YJ^U;Q&)?)L z$&ecUWShl*)iTWQ5oSPZ0v89q56DyqyhKLpRuJq^bCXX5v#fI-Xyan<#ulTmpZ}N+ zxdP`3!Ylfkb%Wr`-84!7Uy;F#-LX=99JEHTFg%qfg&9%%U0Nkz{Zmq90?s-q9gl~( zJd^Mhjb$3JCxK;Iz@E(*#^ z{F{O`W8@|YdTolTm6Ur6i<7*?h2>Rl_~L|?49k{l!{Bs_EP?%1nZl?Jxd{VL$Wa8& znG_1{3&aX_KPk)F>y--x=4HqUm{lSlQQ+J~SvTPsd3z>y$0<$)s~yTWkHBWT8it## zYGf>yXUV@B!ILFZj7XOs(=b0rzGOviwY(x94Myd=VK_EP$>G87R0PaftHc8yn51qN z!RS;q?0Z113CG|9^%n}|ZdHT+1Qr6%7pxzniq(-uXt=2|j98;m5jo9d&ISXt^VE+~RY%e7<-JR+|mV1AQI;)1`!PKCb*9LWY5d~RtWI85v{aP3j^ z!8b`-fvwe=m0;^$eUU>YA&{#Xa9}{4upDFR)N|8u{BrF=D!AU)DE7B#2GLqr?k*~; zEGu^xtejX<<}Rx!h52#pU8wU(m(|CLpLnRMveccEGZ!pN`3JnBvcNmI-mlPw8s)IASzBwuV;!2NAv>hKr{Jj*TG_qW zX)~OU#yOJ>>k}blG{j)qZEb%TbS-0@gF^qYWvhbCDFz>hXI+MqI@>%+!}b^0RTF0H zV_qIFzRL)Yi@s+9k8gFcuL(YBlW$ObFkL;!qbEn5Mlg`8?qjgyDOJVk73ygbjXSgg MjwyEi)F?H70f#rJ1poj5 delta 3761 zcmdUyZFo~v5`dp`&%Ni~o>hBQ^W z0v1pa6bM}HfTBcYMP=CyB97uJ#V`BFV}I=P?EcG{ zGiT16nRn(+9{;rPkvE2h%0%4xDlI1v>0pUyucxcJ!^w|D^N#DpWl8E}f1}S;H@3m) zuGc3$S*MgWdi*Yr-v(LdXio?opku`fUt@#5

Fc)KJEw()xBu`1~rcZ18OuU*!+ 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 diff --git a/assets/schemas.json b/assets/schemas.json index 710cbb312e4d80708b8edb0a76940e8cbb3f4714..b4993b94b38d9c0a578c6782cf83bed70177a612 100644 GIT binary patch delta 885 zcmaJ;TS!z<6y=<=&)j*bchr2;_=+ql21U~(MeR-YP=h`)a;!uP6}7~Qh%5@~0?S0ncOMS?2e=s|RXJdGf zUK-G*>e*W|EcoD{u<94e8WkLiW>TL#-&;*tW|k;0wpE(2y@+Y(tY-#1Qx6KMF17n zzv)UPvj$>WAP=FuX?VtPFa@^ad?J$=c~@*8w~`)1b1U0U5tmqn)bsK_xeuP>8CaIa z0q@nZ^?!3}x#oM+Ol>!q7V&>ywdELTFxYVZwN&u>GQJrnXC-KZ0Y+@f6izHV!wzAr zji=XSCUeS67Q?oM@ci{6_REHig~Ed0T6u;(ncWnwho2bm!K;siLXMrH!M8)%&2Vvn zXrTbB>^9LJfZYZ>{8mii{nx@s)lY@VAH(d@N~4RUp6lrXVH!5!j4xR5njeewBt>qx zVlk-~L{U7|y%8T7<-QYB4!UWE;{x4th3Z-%P0(~c^eGrS4hlY>l0G=v4kOK#(1z*> zX`q2}vC&Sc4k(SHnhF?MN-a6yG}G!EkQ3@P^Q1t$@falRg8fPKxENk2$z7*@qFgEq9yfwAj_Nt-EI<#}MZE~CAptd=m$BWc6P2?)ik1Kf^kBVSF| zJEb*%C&Xh^w>*Z?E~$D?@9_||2MIyg(;=4Qm`ld-q(r=U8$!v^FT2*zhfWq}B)3v& z)OrRKOr7DuR8%ZZbFc50`^0wxj&Bnxx||{fGoz(SbNRx~$X)zbM()yk!IPF&lk4-a QRIFnjMDtVdN^tY(KlKSlasU7T delta 2677 zcmdT`dr*|u6`%XsW!V)zVC5l?T~<)4F2U$DU^|KeNfC%kA&6;F7Wl+3?u&gGTjLb# zOii3dS#G+=PSLI;;6UPlcgQ^Qz7!7IhDh5pYCA+tr~)-YikDWHEOW5@4?n>+GQP z`$;g^ge|)J@jbW*My_Eie0CC>AvuK8z&wa8FmxQ{L7)m74Nk4Y>2-tKOl^GVr6L$w zi)%qSij5K%)y=!ApN8>OxPZI9WzsQ7mqA!w{LFLtXUCdl!a4}jz+D;Xy)7B==}Byp z_<&^)XTh;dRFD|d0s*yS9&1x5JZFIDQzR=oRjkY#LRzQK9gYNf3aUuIql%#07uv1{ zomIYee+R5QPx5tEEzQn4DWJ}X&)MjP(Hvyct=4<2s#o$ER-I46zH_)L>tC!ixr3U! z4Mw-1xXZM=TPjtLwoAs`z@tlT&_9TF-c>1#MoHRZj|cr;$BIPzJ)h%_Ry!VAiR)Gk zhG6;-O~VZletM~uIvV{B7(GGK3_3WT`LRq}^YQ7145stY!S~gt>0&m6tCuBL=mJ-R z4+gjcYTVHSdEHr@1DKCm(#-Rqht=IMa0YJ%yA2zYL-i3gqBevj4Wad}YP~*LQ05&e1)dRt-Pdft^`^?#LJl@;tOkh{jVJN z6ikl`+jwrj5xOggb+$78O$qRveqDY2+s+&9PIrhkB@#WJGK%%Le-$=hv|j%ps_s?49e!qpF3E{0&#QKQqr7x zkF$sT@mAB9xcy)gzhP-n?uM;YrOy1k^++Aq_EJggYf=r}&(ctQ$~~!@liS1EE?JV5 ze%bqdHR=OU?*q^@yO0TP=Kmn8=(v)-^c0P{zNhK8)yz6e!7Oe-KhqWtY^u7{B^aa-t)oN=jUv=fAL%U;dU;Pm&$g;;k|3Rfe(JpZ z=`UmhOf96D!e4}vu-+(Ygv@8e0Np!jY3vqB5Xq0C)$G67U5$Hl62+4hh}-VZ{y)Xw zg)TmHqZxiODe)UVhMwXJ4y7CzyM)BpC44RgoLE9tyNn!8(w{4Ebb?t#?gabT0Llb2 zibI#!1^ppoh68`c3T)I!t!TZ-au7JzkRv*2S7w>>eZbC8Sg{+Wiv7P~-^Ot(%$Vev z*G#c>NVHbd-{p$_NwRZQtVLSS*AP>xSYW0fAh@uR{7rmfp?`IX{gtG_Ag->VyNFIc z6nuqMg6Ae$E+hv%i^T9kmP=z<*dV^#Nws`2p2e=4MfXX%Em8bnJsmTO?Z|nWtoXsbZYjUwaoSuezA?=%6JdXo z)g*{tZe`X47}D79#n>A1Q zO8NS&OXBY)emM5X>~m%&i!6(eL`j(aA`O>)5$d~H2)xfTMgE~r8lihJUO4-p$l&E4 h7xHr9nBTzj<$LL~uq0*A3+%PkqU#*HX~c { const body = req.body as DmChannelCreateSchema; - res.json(await Channel.createDMChannel(body.recipients, req.user_id, body.name)); + res.json(await Channel.createDMChannel(body.recipients || (body.recipient_id ? [body.recipient_id] : []), req.user_id, body.name)); }, ); diff --git a/src/schemas/uncategorised/DmChannelCreateSchema.ts b/src/schemas/uncategorised/DmChannelCreateSchema.ts index 3a58f6642..0dd0c402b 100644 --- a/src/schemas/uncategorised/DmChannelCreateSchema.ts +++ b/src/schemas/uncategorised/DmChannelCreateSchema.ts @@ -18,5 +18,7 @@ export interface DmChannelCreateSchema { name?: string; - recipients: string[]; + recipients?: string[]; + recipient_id?: string; + access_tokens?: string[]; //Ignored in Spacebar for now, but makes bots happy } From e082feb09f9e03bb88b0bf54927dc0c42243835e Mon Sep 17 00:00:00 2001 From: MathMan05 Date: Fri, 19 Dec 2025 20:26:48 -0600 Subject: [PATCH 2/2] apparently it didn't get moved lol --- assets/openapi.json | Bin 863912 -> 874144 bytes assets/schemas.json | Bin 386391 -> 386391 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/openapi.json b/assets/openapi.json index 39bb18b643a9fd8b8e44f45fc85a007e0c0c2529..edfae315d07092cc75c1c28c79efc5500850854b 100644 GIT binary patch delta 1672 zcmbtU`EyiN7Owa1yUTm;zVwpKp*taAFGxaLEQ;&|;|L|Tjud1h5C$n1VvGnSC}?Cc zf)!||l_Q0iwkD+@Vzmo?4l@cUqJ@Jt7!VYh%s?p-Od7N_xG@hh^UTU*>V`tPSn0nqhpia3U&|^e__86ftJ=tNN<3#o zux^>Lg=2byA=vLCYVwJEGBeSIS6^pl2>y6^ioW?$NUZ%@bQ+fjA^SlVr29>)jv6~e zH(l7rre4;B7MfNyWdhbv+Wo8FW^|buN+xu1k6%IPKcxCrKqN7*D;Cs zd9lXl-o+*5!^lrIOtPu=BlB8H|Cz@qy^*z2`zq@&HJ(+gE?4U-AA@ z>$i&WlnDuk-fFcTqeO!>n^IMRQ?QDcQLSgrphP|ELunZOFlVLJHV)4nW2*}=;vLIZ zJX>j5c;+bM28Qjm0;4eG5UUrc{Kbk{mv)6AbF6S5>=7cLQ^`H1K)(_EjX^l#ic>k1 zTF)iCHGF|aKIeyR4F8^gZR4{VUN+=%^{!sxBJb&Vs>O5BZ1Bg}j$-jQfhAAzkBWP& z_QxIk?1Ub@PJJt)7NuiW5Hgbw)*)(NCPq?rtSqAV7or!Xqjq0vjG7TjG>cK}s#q*J zQI*gQi-jcXUL8s{ey%9K#w<@ZJQYbcT9SgoD5kEc*^h=ghDt_M70#>^%SR*ACi>WP zaf);(RpAK)yT!mhRQnGZq}VHJvu}LaLF*HiL^vvE+LT%93_)tIyWK>(KsGV>P%?TD zm7d&WP#pe&e7xM9$uKo6!~Sxc?NNC53YiK}rc5fjz|}#@#$`7p?)BH+`KCN#!_O=l zM0XsJIT$-Y9X9a7UO9g-WoF4gpk}&!aUkXml6PCsT{4spxm;FxD6&*(05`6clR_Ai zt2)9oVY;+1Z?lvEY}_Od8Mx~uxy?cU0V-UI=fBry0u-I53Xr-^R z3E?edIC6^`Az?b6$>7XVUAd@PriwTP?o%O{4eC!C-18X2(nnOB!47(#7-(%$Z-wx| zDs|k%+>Pp%D2|7`A2@dIP*F`CKgux0#^?&D1FBl$$R2gx+3=NesfBETzdmoz&`6Q} zO%6I$)8Z)?L=~D{~%9eVSn#{phoT5zD6z=$lvPzyOOfQ{6LF# z`w#rTSKe?VnD&7C9|P=BR}0Gi-F^Bp%9u-~4Q4K#Sn3p^A+75TXWoMPd+x8Bf7|Wz z(R-pY4J10;<-Sk+68OaZ7vsCL?#ba8U*^pnSEQ2@tFweQosoAsLx zT8HTl6Z^{b2@X}IwZ^|@>D7gl?x!tu4AjRsZd#;I^#VTCTMB4@i;f_^UhgZyoKD?f XQR1L3M!|NyaxgwVuRmm$Zb1DHR%>%A delta 1435 zcmah`Yfx2H6rOX=-skLd&OY1+FGIXsBn1%=MaU;!AvHmT5w%iKpof(@ULUA4#(+Ae zIilC@3`?8RtCm*xufj6P7Z8g1AcZtS^IfCPB-#aj^t1izTi^cH{`Oj*ry_Ch zuR|+S2^1|OrmCcn{dPF8l5!}!&Uw|8*)%^RCt%Du@$Bs`Q)|^WS`tvzI$}md zl{|Nc8J`}KL`zi)87IK1CMg}g&9pbZem|R-hGX(}GMIpmR$zOc=#SM?>3Rt(4BD(h>nTxjUwSjp z?IaW6p@m)p&uB5FgML>;q%JykM; z^N`RVJa@SToTH>jh(9Qsx*s_)Oc(&gDa3%x3OTOSD}{qSS|1Ma38eRDL!$o^wq*%n zn0HVv9EA^RX}*S+@5@mt6kiieaCo{Dj9afrm&NY1q4u;SyHADn?7MiZ+!t!^@F=i# zN=o+~o~)B5Dro#HEfu;u+;RREnExFK=t>BS8>H1j*Cw&wUvqk!%r>;3hLkTzy zrlIysj_un8gW!h0V#ASBj9kQb~m5Ey@X~UCioxIOkDi zJo>sD2-qSS!>pmKNx*6S*h@d`m&D36aJ4H0{Zf@O9b=a(Z^Yo&4T>cYpFdKw_r*Gn-&Uov!>wYM=XS63RNF#xUZ9KQ@|Cf>iF#<%|+0etRB~( z=qFXi?R(VE$DsKi)uG{Trd>*dv`#Gu(;jFcVKBz5%Fwrt`=fIUM*(tURbL1;^%Vmh zW;L7RrvudvE5=P!=jGt=cJ)dCPNiCw1eyIcf<;-{7#mJmrgf~q_x)l2Zxlmz@!KNgtm6u{t>Q~f*tVZ@j`_fA zG`v^M*9K$8MSd#;oIyr!d_s*=eK0M`SQ8D7tK0z3U)+KT5BT07JQiU%37(&7oRz?H zR59>o9=l`0kBZo039TELAmQqRj7ZpA!!8O~`X_rz@mYXgCSgpxo+4oOYr2==-x>O4 R89ylEc_P#7zEh|b{tJNI5@Y}X diff --git a/assets/schemas.json b/assets/schemas.json index b4993b94b38d9c0a578c6782cf83bed70177a612..f691b79e860b925ec07d81e838b1cd23b1fdda34 100644 GIT binary patch delta 589 zcmZuuUr3X26y^8l?%SNMWsPrZF4ASh$`TaXMx=%hr9L$3L849Tp;%=SNh~B74bomx z`eHZ8Xb-&=G?BPPRD&=|sT{agY~&(AVFbSPM;w( z(ap3~cO_w&udK&qRochZMK=cCODm22=EcnutL`y{Vm0Dzl{Wek5-BgGyo{vwa27EA zUF^q_LprH{JF{_02iQ#uX8M^zJKSB+|hM>4*X#D(F=(z$sk+?I)swwdfuJE-fE?I<` zf+c8S)O%2V@K7o*&NL;%`gFEaSgNVYDhmvA9pWb~R>~g@lxP=+O*9vj7lq*!w;q6Y zJiE+xko}n$-9!@(@W`Z#n`rMT8Lg!m7nH3Ozb|_#=ysc&ROqT1rWL&Vlq>XLSkBfN zG?b}_8bJNJLdW*W7C|99oB*18B#*k*jQ1Va)7~{ByZveBYj3ch%iC+D%}#=mYJ4rc`HL*?WR(JN>X{*4U-M_tt`r=~NQoJ@cfiW|TxFy) za$$kE3sTgAls7A5Rk>tW-Ja)6(K_|smZoLuyZwW~7=j?v?HITo(k&M-ypj$rbpA8% zHHg}pQ|>BcJ&=tJPe4cEAK{n4w<^qFR5$2p`VJVD;I$vzM6PMB9?>vhe-=x}AwP>z zyyeHSuYeixdnV6Eub<`O!F{X)off|9;a6z1)458hh^N_Z7-uy60A^yzHVLNzE9!X| zh1BtNK*!Q}zl?#KT&A8}76hk6!6#4n3JN7%v*V35Z&_e;^p&r)@Q)0 zf7nRh$`2<}>>mC?rlhmHR8XVL9h@R#`4^+MG>z5r2!YjwLZ+a-A`p+RaiOEDANW!| zn!j-!O3!r=o+5i9m