@malloy-publisher/app 0.0.114 → 0.0.116
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-doc.yaml +634 -362
- package/dist/assets/{Chip-DpRfGWL9.js → Chip-BlLPwrfU.js} +1 -1
- package/dist/assets/{Container-pCaIjpH5.js → Container-DSVPh3gE.js} +1 -1
- package/dist/assets/{DialogTitle-Df6dToBj.js → DialogTitle-bD8VuT8c.js} +1 -1
- package/dist/assets/{Edit-Do7LZWER.js → Edit-_LnCy6KM.js} +1 -1
- package/dist/assets/FormControlContext-DignhH4k.js +1 -0
- package/dist/assets/{HomePage-pfv0GYQd.js → HomePage-LX1tISWU.js} +1 -1
- package/dist/assets/{MainPage-1RQ43yX6.js → MainPage-IcOw9T0o.js} +1 -1
- package/dist/assets/{MenuItem-BWMnNgqP.js → MenuItem-BdqihbmU.js} +1 -1
- package/dist/assets/{Modal-BbVeNLvO.js → Modal-D0aofeJ-.js} +1 -1
- package/dist/assets/{ModelPage-BFSBWoUi.js → ModelPage-Cmj_3prB.js} +1 -1
- package/dist/assets/{MoreVert-Dh8A2FDF.js → MoreVert-YhnXQ3v5.js} +1 -1
- package/dist/assets/{PackagePage-Dbb4lm1F.js → PackagePage-CA_3_grb.js} +2 -2
- package/dist/assets/{ProjectPage-Ccyp5m5h.js → ProjectPage-CTEKaYN6.js} +1 -1
- package/dist/assets/{RouteError-soNErEMV.js → RouteError-DBjBbJQ4.js} +1 -1
- package/dist/assets/{WorkbookPage-D_yrMjqR.js → WorkbookPage-BQqJ6KAQ.js} +1 -1
- package/dist/assets/{index-BS_9W4Tt.js → index-BAfm35bA.js} +60 -60
- package/dist/assets/{index-B_Z1qGAK.js → index-Bxv0Yt4A.js} +1 -1
- package/dist/assets/{index-CZpA8zwK.js → index-CvMj3zFy.js} +1 -1
- package/dist/assets/{index.es20-DzH7kq4S.js → index.es20-DX-qKVln.js} +1 -1
- package/dist/assets/{index.es23-C-bQftBc.js → index.es23-MhA_BS7D.js} +2 -2
- package/dist/assets/{index.es287-BsK0ZRDU.js → index.es309-BadtNHpe.js} +1 -1
- package/dist/assets/{index.es288-pwa92z63.js → index.es310-CxNQu9Er.js} +1 -1
- package/dist/assets/{index.es291-LYy-CnOC.js → index.es313-CDQEwRNq.js} +1 -1
- package/dist/assets/{index.es296-BxlxlVr1.js → index.es318-BEizWri7.js} +1 -1
- package/dist/assets/{index.es304-jV2gZBYS.js → index.es326-DRDRxpfM.js} +1 -1
- package/dist/assets/{index.es305-DrF4mmwj.js → index.es327-Beb6eJic.js} +1 -1
- package/dist/assets/{index.es308-CZZGZfCL.js → index.es330-CwuXg3fJ.js} +1 -1
- package/dist/assets/{index.es312-CM4OW1Tu.js → index.es334-Dm2bZsvo.js} +1 -1
- package/dist/assets/{index.es315-CSNCJz_t.js → index.es337-BRS6prNj.js} +1 -1
- package/dist/assets/{index.es318-BnlIqKdP.js → index.es340-CpGpgGPq.js} +1 -1
- package/dist/assets/{index.es319-BqfPxZyn.js → index.es341-CzpxUkrh.js} +1 -1
- package/dist/assets/{index.es333-DrlQlC9C.js → index.es355-Cw1hwz7b.js} +1 -1
- package/dist/assets/{index.es334-CrN25jeJ.js → index.es356-Lf8oNwCV.js} +1 -1
- package/dist/assets/{index.es335-BMF1iNAk.js → index.es357-BSyhsBZc.js} +1 -1
- package/dist/assets/{index.es337-DddOBpwk.js → index.es359-DlQPvmEf.js} +1 -1
- package/dist/assets/{index.es342-5MyjXhLR.js → index.es364-BdLXGlNW.js} +1 -1
- package/dist/assets/{index.es344-BpzCATdh.js → index.es366-CeOBTy3D.js} +1 -1
- package/dist/assets/{index.es345-CcT82qyg.js → index.es367-BTU6dC7H.js} +1 -1
- package/dist/assets/{index.es350-DT_CVHOb.js → index.es372-CAP3LJB5.js} +1 -1
- package/dist/assets/{index.es351-IRimHV8f.js → index.es373-Bn0SN4Qr.js} +1 -1
- package/dist/assets/{index.es353-e0DSyH1F.js → index.es375-DHsDDgUb.js} +1 -1
- package/dist/assets/{index.es354-DvXzIB3B.js → index.es376-DiakK4K7.js} +1 -1
- package/dist/assets/{index.es355-BpinPwMf.js → index.es377-BVmV6Pw5.js} +1 -1
- package/dist/assets/{index.es358-B2FwChKl.js → index.es380-DWVjI1nw.js} +1 -1
- package/dist/assets/{index.es360-B11Uptoy.js → index.es382-DZZkqdlU.js} +1 -1
- package/dist/assets/{index.es361-CqPSZKxw.js → index.es383-DrYUPMBY.js} +1 -1
- package/dist/assets/{index.es362-kID_QP2b.js → index.es384-O2h4x2O1.js} +1 -1
- package/dist/assets/{index.es368-DEU47Nmo.js → index.es390-CENsXSpU.js} +1 -1
- package/dist/assets/{index.es369-BAVwPVpH.js → index.es391-DGinr4O5.js} +1 -1
- package/dist/assets/{index.es370-CQSqpEY2.js → index.es392-B96aw5eg.js} +1 -1
- package/dist/assets/{index.es371-DSPIJ8l-.js → index.es393-BB41wM4d.js} +1 -1
- package/dist/assets/{index.es373-CTLjf8LZ.js → index.es395-CyeA1Xjk.js} +1 -1
- package/dist/assets/{index.es377-BFPElb8k.js → index.es399-Bsi68PlA.js} +1 -1
- package/dist/assets/{index.es378-Bi8-8y3Z.js → index.es400-BAaaKxaT.js} +1 -1
- package/dist/assets/{index.es386-BRbfYhrv.js → index.es408-Cox8sqBq.js} +1 -1
- package/dist/assets/{index.es389-SMY2M5Dd.js → index.es411-BIcB0nnx.js} +1 -1
- package/dist/assets/{index.es392-fGYxK-uk.js → index.es414-NSiQAL9E.js} +1 -1
- package/dist/assets/{index.es395--SrhnzjM.js → index.es417-CJHHUEgP.js} +1 -1
- package/dist/assets/{index.es399-BP5VLghY.js → index.es421-DlzZ1edh.js} +1 -1
- package/dist/assets/{index.es401-CopVMHFF.js → index.es423-Blu2B8df.js} +1 -1
- package/dist/assets/{index.es409-C0EaxmtL.js → index.es431-BcO6TXny.js} +1 -1
- package/dist/assets/{index.es410-B2INzLoQ.js → index.es432-DR7oVH16.js} +1 -1
- package/dist/assets/{index.es417-B6GOQZs3.js → index.es439-D-FInR6T.js} +1 -1
- package/dist/assets/{index.es418-Dt4O9kPw.js → index.es440-C8xLRtnr.js} +1 -1
- package/dist/assets/{index.es428-BGqtBs8m.js → index.es450-BWJL1ivC.js} +1 -1
- package/dist/assets/{index.es432-BzFuvoyF.js → index.es454-B4gLruiC.js} +1 -1
- package/dist/assets/{index.es438-DvNyQZ9B.js → index.es460-Dk4iQbdz.js} +1 -1
- package/dist/assets/{index.es443-DC0KqCTi.js → index.es465-DPM1K1vX.js} +1 -1
- package/dist/assets/{index.es444-CTooryRZ.js → index.es466-Cz5i94Jb.js} +1 -1
- package/dist/assets/{index.es446-DGMBZ3_7.js → index.es468-CEal6hHe.js} +1 -1
- package/dist/assets/{index.es450-BCWIDv3j.js → index.es472-Dn7NJgh3.js} +1 -1
- package/dist/assets/{index.es452-B8WGaHgy.js → index.es474-DmO_iZ7H.js} +1 -1
- package/dist/assets/{index.es454-Cp0AvzKu.js → index.es476-AEEjznls.js} +1 -1
- package/dist/assets/{index.es457-C87oaIOo.js → index.es479-CVK23V1l.js} +1 -1
- package/dist/assets/{index.es458-CBexwHfM.js → index.es480-Dg2zCIZf.js} +1 -1
- package/dist/assets/{index.es462-DGwyl90J.js → index.es484-B8fRb4PI.js} +1 -1
- package/dist/assets/{index.es464-Dzf6WDCJ.js → index.es486-DugRqL_s.js} +1 -1
- package/dist/assets/{index.es471-BOZxaHLN.js → index.es493-Cq9aUzhz.js} +1 -1
- package/dist/assets/{index.es473-C4VYB3vo.js → index.es495-DHLZUspl.js} +1 -1
- package/dist/assets/{index.es475-OnXMAP7q.js → index.es497-BvzzhJTZ.js} +1 -1
- package/dist/assets/{index.es479-H38Vf5YC.js → index.es501-BjGaL-C6.js} +1 -1
- package/dist/assets/{index.es489-Cm4BEHNL.js → index.es511-DRqxYg4O.js} +1 -1
- package/dist/assets/{index.es490-DtqPpdnf.js → index.es512-B0vqeVAK.js} +1 -1
- package/dist/assets/{index.es497-BvZ-y4_B.js → index.es519-3ouX9M5g.js} +1 -1
- package/dist/assets/{index.es498-DeJOiud8.js → index.es520-BWdPHKc-.js} +1 -1
- package/dist/assets/{index.es7-Lspe9b-6.js → index.es7-BnSyqMUG.js} +1 -1
- package/dist/assets/{index.modern-J74LOUay.js → index.modern-BNyuNLQP.js} +1 -1
- package/dist/assets/{index.umd-iTdVE6k1.js → index.umd-DjRNKlAu.js} +1 -1
- package/dist/assets/{listItemTextClasses-D0rI_qhy.js → listItemTextClasses-BZy8G2qL.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +2 -2
- package/dist/assets/FormControlContext-Ccuzn_SP.js +0 -1
- /package/dist/assets/{index.es276-CG6Dc4jp.js → index.es298-CG6Dc4jp.js} +0 -0
- /package/dist/assets/{index.es284-DsBKuouk.js → index.es306-DsBKuouk.js} +0 -0
- /package/dist/assets/{index.es285-D_z4Izcz.js → index.es307-D_z4Izcz.js} +0 -0
- /package/dist/assets/{index.es286-727ZlQH0.js → index.es308-727ZlQH0.js} +0 -0
- /package/dist/assets/{index.es289-Dn00JSTd.js → index.es311-Dn00JSTd.js} +0 -0
- /package/dist/assets/{index.es290-COJ4H7py.js → index.es312-COJ4H7py.js} +0 -0
- /package/dist/assets/{index.es292-Bu5BbsvL.js → index.es314-Bu5BbsvL.js} +0 -0
- /package/dist/assets/{index.es293-7O62HKoU.js → index.es315-7O62HKoU.js} +0 -0
- /package/dist/assets/{index.es294-BPT9niGB.js → index.es316-BPT9niGB.js} +0 -0
- /package/dist/assets/{index.es295-Dhn9LcZ4.js → index.es317-Dhn9LcZ4.js} +0 -0
- /package/dist/assets/{index.es297-eg146-Ew.js → index.es319-eg146-Ew.js} +0 -0
- /package/dist/assets/{index.es298-Du268qiB.js → index.es320-Du268qiB.js} +0 -0
- /package/dist/assets/{index.es299-fje9CFhw.js → index.es321-fje9CFhw.js} +0 -0
- /package/dist/assets/{index.es300-BwXTMy5W.js → index.es322-BwXTMy5W.js} +0 -0
- /package/dist/assets/{index.es301-3xVqZejG.js → index.es323-3xVqZejG.js} +0 -0
- /package/dist/assets/{index.es302-xW4inM5L.js → index.es324-xW4inM5L.js} +0 -0
- /package/dist/assets/{index.es303-DHo0CJ0O.js → index.es325-DHo0CJ0O.js} +0 -0
- /package/dist/assets/{index.es306-C3t2pwGQ.js → index.es328-C3t2pwGQ.js} +0 -0
- /package/dist/assets/{index.es307-DNquZEk8.js → index.es329-DNquZEk8.js} +0 -0
- /package/dist/assets/{index.es309-BHOwM8T6.js → index.es331-BHOwM8T6.js} +0 -0
- /package/dist/assets/{index.es310-DxSadP1t.js → index.es332-DxSadP1t.js} +0 -0
- /package/dist/assets/{index.es311-DbXoA79R.js → index.es333-DbXoA79R.js} +0 -0
- /package/dist/assets/{index.es313-Bp6g37R7.js → index.es335-Bp6g37R7.js} +0 -0
- /package/dist/assets/{index.es314-sacFqUAJ.js → index.es336-sacFqUAJ.js} +0 -0
- /package/dist/assets/{index.es316-C7gG9l05.js → index.es338-C7gG9l05.js} +0 -0
- /package/dist/assets/{index.es317-Dsg_Bt_b.js → index.es339-Dsg_Bt_b.js} +0 -0
- /package/dist/assets/{index.es320-D9R-vmeu.js → index.es342-D9R-vmeu.js} +0 -0
- /package/dist/assets/{index.es321-BPhBrDlE.js → index.es343-BPhBrDlE.js} +0 -0
- /package/dist/assets/{index.es322-C-TU5hQ_.js → index.es344-C-TU5hQ_.js} +0 -0
- /package/dist/assets/{index.es323-DtFQj3wx.js → index.es345-DtFQj3wx.js} +0 -0
- /package/dist/assets/{index.es324-m2LEI-9-.js → index.es346-m2LEI-9-.js} +0 -0
- /package/dist/assets/{index.es325-BoXegm-a.js → index.es347-BoXegm-a.js} +0 -0
- /package/dist/assets/{index.es326-B9wLZaAG.js → index.es348-B9wLZaAG.js} +0 -0
- /package/dist/assets/{index.es327-ClGRhx96.js → index.es349-ClGRhx96.js} +0 -0
- /package/dist/assets/{index.es328-DEIpsLCJ.js → index.es350-DEIpsLCJ.js} +0 -0
- /package/dist/assets/{index.es329-BgYniUM_.js → index.es351-BgYniUM_.js} +0 -0
- /package/dist/assets/{index.es330-COcR7UxN.js → index.es352-COcR7UxN.js} +0 -0
- /package/dist/assets/{index.es331-BjQB5zDj.js → index.es353-BjQB5zDj.js} +0 -0
- /package/dist/assets/{index.es332-C-nORZOA.js → index.es354-C-nORZOA.js} +0 -0
- /package/dist/assets/{index.es336-BX77sIaO.js → index.es358-BX77sIaO.js} +0 -0
- /package/dist/assets/{index.es338-B-DoSBHF.js → index.es360-B-DoSBHF.js} +0 -0
- /package/dist/assets/{index.es339-bCA53EVm.js → index.es361-bCA53EVm.js} +0 -0
- /package/dist/assets/{index.es340-w-ucz2PV.js → index.es362-w-ucz2PV.js} +0 -0
- /package/dist/assets/{index.es341-Dayu4EKP.js → index.es363-Dayu4EKP.js} +0 -0
- /package/dist/assets/{index.es343-DKXYxT9g.js → index.es365-DKXYxT9g.js} +0 -0
- /package/dist/assets/{index.es346-DfxzS6Rs.js → index.es368-DfxzS6Rs.js} +0 -0
- /package/dist/assets/{index.es347-SKMF96pI.js → index.es369-SKMF96pI.js} +0 -0
- /package/dist/assets/{index.es348-ajMbGru0.js → index.es370-ajMbGru0.js} +0 -0
- /package/dist/assets/{index.es349--30QC5Em.js → index.es371--30QC5Em.js} +0 -0
- /package/dist/assets/{index.es352-B430Bg39.js → index.es374-B430Bg39.js} +0 -0
- /package/dist/assets/{index.es356-CM8KxXT1.js → index.es378-CM8KxXT1.js} +0 -0
- /package/dist/assets/{index.es357-B1SYOhNW.js → index.es379-B1SYOhNW.js} +0 -0
- /package/dist/assets/{index.es359-DkBy-JyN.js → index.es381-DkBy-JyN.js} +0 -0
- /package/dist/assets/{index.es363-BILxekzW.js → index.es385-BILxekzW.js} +0 -0
- /package/dist/assets/{index.es364-C5wWYbrZ.js → index.es386-C5wWYbrZ.js} +0 -0
- /package/dist/assets/{index.es365-HzYwdGDm.js → index.es387-HzYwdGDm.js} +0 -0
- /package/dist/assets/{index.es366-T-Tgc4AT.js → index.es388-T-Tgc4AT.js} +0 -0
- /package/dist/assets/{index.es367-ifBTmRxC.js → index.es389-ifBTmRxC.js} +0 -0
- /package/dist/assets/{index.es372-BMj5Y0dO.js → index.es394-BMj5Y0dO.js} +0 -0
- /package/dist/assets/{index.es374-BjABl1g7.js → index.es396-BjABl1g7.js} +0 -0
- /package/dist/assets/{index.es375-xI-RfyKK.js → index.es397-xI-RfyKK.js} +0 -0
- /package/dist/assets/{index.es376-ySlJ1b_l.js → index.es398-ySlJ1b_l.js} +0 -0
- /package/dist/assets/{index.es379-BQoSv7ci.js → index.es401-BQoSv7ci.js} +0 -0
- /package/dist/assets/{index.es380-w8dY5SsB.js → index.es402-w8dY5SsB.js} +0 -0
- /package/dist/assets/{index.es381-TU54ms6u.js → index.es403-TU54ms6u.js} +0 -0
- /package/dist/assets/{index.es382-DREVFZK8.js → index.es404-DREVFZK8.js} +0 -0
- /package/dist/assets/{index.es383-BfivnA6A.js → index.es405-BfivnA6A.js} +0 -0
- /package/dist/assets/{index.es384-P4WzXJd0.js → index.es406-P4WzXJd0.js} +0 -0
- /package/dist/assets/{index.es385-BAng5TT0.js → index.es407-BAng5TT0.js} +0 -0
- /package/dist/assets/{index.es387-B5lbUyaz.js → index.es409-B5lbUyaz.js} +0 -0
- /package/dist/assets/{index.es388-mebxcVVE.js → index.es410-mebxcVVE.js} +0 -0
- /package/dist/assets/{index.es390-XBlWyCtg.js → index.es412-XBlWyCtg.js} +0 -0
- /package/dist/assets/{index.es391-BfCpw3nA.js → index.es413-BfCpw3nA.js} +0 -0
- /package/dist/assets/{index.es393-Cc5clBb7.js → index.es415-Cc5clBb7.js} +0 -0
- /package/dist/assets/{index.es394-IuBKFhSY.js → index.es416-IuBKFhSY.js} +0 -0
- /package/dist/assets/{index.es396-Du5NY7AG.js → index.es418-Du5NY7AG.js} +0 -0
- /package/dist/assets/{index.es397-Bvotw-X0.js → index.es419-Bvotw-X0.js} +0 -0
- /package/dist/assets/{index.es398-UIAJJxZW.js → index.es420-UIAJJxZW.js} +0 -0
- /package/dist/assets/{index.es400-D9-PGadD.js → index.es422-D9-PGadD.js} +0 -0
- /package/dist/assets/{index.es402-sdHcTMYB.js → index.es424-sdHcTMYB.js} +0 -0
- /package/dist/assets/{index.es403-Ci6OQyBP.js → index.es425-Ci6OQyBP.js} +0 -0
- /package/dist/assets/{index.es404-BC5c_5Pe.js → index.es426-BC5c_5Pe.js} +0 -0
- /package/dist/assets/{index.es405-Tz6hzZYG.js → index.es427-Tz6hzZYG.js} +0 -0
- /package/dist/assets/{index.es406-DB_GagMm.js → index.es428-DB_GagMm.js} +0 -0
- /package/dist/assets/{index.es407-DLbgOhZU.js → index.es429-DLbgOhZU.js} +0 -0
- /package/dist/assets/{index.es408-B0XVJmRM.js → index.es430-B0XVJmRM.js} +0 -0
- /package/dist/assets/{index.es411-shcSOmrb.js → index.es433-shcSOmrb.js} +0 -0
- /package/dist/assets/{index.es412-D4Tzg5kh.js → index.es434-D4Tzg5kh.js} +0 -0
- /package/dist/assets/{index.es413-Deuh7S70.js → index.es435-Deuh7S70.js} +0 -0
- /package/dist/assets/{index.es414-BUEGK8hf.js → index.es436-BUEGK8hf.js} +0 -0
- /package/dist/assets/{index.es415-BNioltXt.js → index.es437-BNioltXt.js} +0 -0
- /package/dist/assets/{index.es416-JqZropPD.js → index.es438-JqZropPD.js} +0 -0
- /package/dist/assets/{index.es419-LKU2TuZ1.js → index.es441-LKU2TuZ1.js} +0 -0
- /package/dist/assets/{index.es420-BFLt1xDp.js → index.es442-BFLt1xDp.js} +0 -0
- /package/dist/assets/{index.es421-DKykz6zU.js → index.es443-DKykz6zU.js} +0 -0
- /package/dist/assets/{index.es422-B3ZDOciz.js → index.es444-B3ZDOciz.js} +0 -0
- /package/dist/assets/{index.es423-CSHBycmS.js → index.es445-CSHBycmS.js} +0 -0
- /package/dist/assets/{index.es424-BIEUsx6d.js → index.es446-BIEUsx6d.js} +0 -0
- /package/dist/assets/{index.es425-B48N-Iqd.js → index.es447-B48N-Iqd.js} +0 -0
- /package/dist/assets/{index.es426-BY-TUvya.js → index.es448-BY-TUvya.js} +0 -0
- /package/dist/assets/{index.es427-zocC4JxJ.js → index.es449-zocC4JxJ.js} +0 -0
- /package/dist/assets/{index.es429-Cza_XSSt.js → index.es451-Cza_XSSt.js} +0 -0
- /package/dist/assets/{index.es430-Bg-kzb6g.js → index.es452-Bg-kzb6g.js} +0 -0
- /package/dist/assets/{index.es431-DhUJRlN_.js → index.es453-DhUJRlN_.js} +0 -0
- /package/dist/assets/{index.es433-C8lEn-DE.js → index.es455-C8lEn-DE.js} +0 -0
- /package/dist/assets/{index.es434-DhMKtDLN.js → index.es456-DhMKtDLN.js} +0 -0
- /package/dist/assets/{index.es435-CwjWoCRV.js → index.es457-CwjWoCRV.js} +0 -0
- /package/dist/assets/{index.es436-CzouJOBO.js → index.es458-CzouJOBO.js} +0 -0
- /package/dist/assets/{index.es437-B1bQXN8T.js → index.es459-B1bQXN8T.js} +0 -0
- /package/dist/assets/{index.es439-5LuOXUq_.js → index.es461-5LuOXUq_.js} +0 -0
- /package/dist/assets/{index.es440-DWJ3fJO_.js → index.es462-DWJ3fJO_.js} +0 -0
- /package/dist/assets/{index.es441-DJlmqQ1C.js → index.es463-DJlmqQ1C.js} +0 -0
- /package/dist/assets/{index.es442-QhoSD0DR.js → index.es464-QhoSD0DR.js} +0 -0
- /package/dist/assets/{index.es445-Be6lgOlo.js → index.es467-Be6lgOlo.js} +0 -0
- /package/dist/assets/{index.es447-BJ4Li9vH.js → index.es469-BJ4Li9vH.js} +0 -0
- /package/dist/assets/{index.es448-DQVVAn-B.js → index.es470-DQVVAn-B.js} +0 -0
- /package/dist/assets/{index.es449-BJGe-b2p.js → index.es471-BJGe-b2p.js} +0 -0
- /package/dist/assets/{index.es451-BLhTXw86.js → index.es473-BLhTXw86.js} +0 -0
- /package/dist/assets/{index.es453-atvbtKCR.js → index.es475-atvbtKCR.js} +0 -0
- /package/dist/assets/{index.es455-DkLiglaE.js → index.es477-DkLiglaE.js} +0 -0
- /package/dist/assets/{index.es456-C1w2a3ep.js → index.es478-C1w2a3ep.js} +0 -0
- /package/dist/assets/{index.es459-Cf8iN4DR.js → index.es481-Cf8iN4DR.js} +0 -0
- /package/dist/assets/{index.es460-COK4E0Yg.js → index.es482-COK4E0Yg.js} +0 -0
- /package/dist/assets/{index.es461-BknIz3MU.js → index.es483-BknIz3MU.js} +0 -0
- /package/dist/assets/{index.es463-BeQkCIfX.js → index.es485-BeQkCIfX.js} +0 -0
- /package/dist/assets/{index.es465-BSxZ-RaX.js → index.es487-BSxZ-RaX.js} +0 -0
- /package/dist/assets/{index.es466-C7L56vO4.js → index.es488-C7L56vO4.js} +0 -0
- /package/dist/assets/{index.es467-CUnW07Te.js → index.es489-CUnW07Te.js} +0 -0
- /package/dist/assets/{index.es468-C1XDQQGZ.js → index.es490-C1XDQQGZ.js} +0 -0
- /package/dist/assets/{index.es469-CQjiPCtT.js → index.es491-CQjiPCtT.js} +0 -0
- /package/dist/assets/{index.es470-DQ1-QYvQ.js → index.es492-DQ1-QYvQ.js} +0 -0
- /package/dist/assets/{index.es472-BbSNqyBO.js → index.es494-BbSNqyBO.js} +0 -0
- /package/dist/assets/{index.es474-CB2ApiWb.js → index.es496-CB2ApiWb.js} +0 -0
- /package/dist/assets/{index.es476-B_m7g4N7.js → index.es498-B_m7g4N7.js} +0 -0
- /package/dist/assets/{index.es477-B6W0miNI.js → index.es499-B6W0miNI.js} +0 -0
- /package/dist/assets/{index.es478-BMR_PYu6.js → index.es500-BMR_PYu6.js} +0 -0
- /package/dist/assets/{index.es480-Dj6nwHGl.js → index.es502-Dj6nwHGl.js} +0 -0
- /package/dist/assets/{index.es481-BpWG_bgh.js → index.es503-BpWG_bgh.js} +0 -0
- /package/dist/assets/{index.es482-BVUVsWT6.js → index.es504-BVUVsWT6.js} +0 -0
- /package/dist/assets/{index.es483-CAQ2eGtk.js → index.es505-CAQ2eGtk.js} +0 -0
- /package/dist/assets/{index.es484-BFOHcciG.js → index.es506-BFOHcciG.js} +0 -0
- /package/dist/assets/{index.es485-CdO5JTpU.js → index.es507-CdO5JTpU.js} +0 -0
- /package/dist/assets/{index.es486-CJaU5se_.js → index.es508-CJaU5se_.js} +0 -0
- /package/dist/assets/{index.es487-DYoNaHQp.js → index.es509-DYoNaHQp.js} +0 -0
- /package/dist/assets/{index.es488-m4uW47V2.js → index.es510-m4uW47V2.js} +0 -0
- /package/dist/assets/{index.es491-nyqBNV6O.js → index.es513-nyqBNV6O.js} +0 -0
- /package/dist/assets/{index.es492-C6j12Q_x.js → index.es514-C6j12Q_x.js} +0 -0
- /package/dist/assets/{index.es493-7A4Fjokl.js → index.es515-7A4Fjokl.js} +0 -0
- /package/dist/assets/{index.es494-CB0Krxn9.js → index.es516-CB0Krxn9.js} +0 -0
- /package/dist/assets/{index.es495-DCE3LsBG.js → index.es517-DCE3LsBG.js} +0 -0
- /package/dist/assets/{index.es496-C3FkfJm5.js → index.es518-C3FkfJm5.js} +0 -0
- /package/dist/assets/{index.es499-CVw76BM1.js → index.es521-CVw76BM1.js} +0 -0
- /package/dist/assets/{index.es500-HnGAYVZD.js → index.es522-HnGAYVZD.js} +0 -0
- /package/dist/assets/{index.es501-BVz_zdnA.js → index.es523-BVz_zdnA.js} +0 -0
- /package/dist/assets/{index.es502-C3khCPGq.js → index.es524-C3khCPGq.js} +0 -0
- /package/dist/assets/{index.es503-D-2ljcwZ.js → index.es525-D-2ljcwZ.js} +0 -0
- /package/dist/assets/{index.es504-Cv9koXgw.js → index.es526-Cv9koXgw.js} +0 -0
- /package/dist/assets/{index.es505-CD_QflpE.js → index.es527-CD_QflpE.js} +0 -0
- /package/dist/assets/{index.es506-DRW-0cLl.js → index.es528-DRW-0cLl.js} +0 -0
- /package/dist/assets/{index.es507-C-_shW-Y.js → index.es529-C-_shW-Y.js} +0 -0
- /package/dist/assets/{index.es508-LGGdnPYs.js → index.es530-LGGdnPYs.js} +0 -0
- /package/dist/assets/{index.es509-C3mMm8J8.js → index.es531-C3mMm8J8.js} +0 -0
- /package/dist/assets/{index.es510-BzJJZx-M.js → index.es532-BzJJZx-M.js} +0 -0
- /package/dist/assets/{index.es511-BXkSAIEj.js → index.es533-BXkSAIEj.js} +0 -0
- /package/dist/assets/{index.es512-BgDCqdQA.js → index.es534-BgDCqdQA.js} +0 -0
- /package/dist/assets/{index.es513-C8M2exoo.js → index.es535-C8M2exoo.js} +0 -0
- /package/dist/assets/{index.es514-DHJKELXO.js → index.es536-DHJKELXO.js} +0 -0
- /package/dist/assets/{index.es515-Cuk6v7N8.js → index.es537-Cuk6v7N8.js} +0 -0
- /package/dist/assets/{index.es516-DH5Ifo-i.js → index.es538-DH5Ifo-i.js} +0 -0
- /package/dist/assets/{index.es517-E3gJ1_iC.js → index.es539-E3gJ1_iC.js} +0 -0
- /package/dist/assets/{index.es518-DAi9KRSo.js → index.es540-DAi9KRSo.js} +0 -0
- /package/dist/assets/{index.es519-D7oLnXFd.js → index.es541-D7oLnXFd.js} +0 -0
- /package/dist/assets/{index.es520-BfjtVDDH.js → index.es542-BfjtVDDH.js} +0 -0
- /package/dist/assets/{index.es521-DnULxvSX.js → index.es543-DnULxvSX.js} +0 -0
- /package/dist/assets/{index.es522-CkXjmgJE.js → index.es544-CkXjmgJE.js} +0 -0
- /package/dist/assets/{index.es523-CfQXZHmo.js → index.es545-CfQXZHmo.js} +0 -0
- /package/dist/assets/{index.es524-DWedfzmr.js → index.es546-DWedfzmr.js} +0 -0
- /package/dist/assets/{index.es525-DUszq2jm.js → index.es547-DUszq2jm.js} +0 -0
- /package/dist/assets/{index.es526-B7mTdjB0.js → index.es548-B7mTdjB0.js} +0 -0
- /package/dist/assets/{index.es527-D5KoaKCx.js → index.es549-D5KoaKCx.js} +0 -0
- /package/dist/assets/{index.es528-BfHTSMKl.js → index.es550-BfHTSMKl.js} +0 -0
- /package/dist/assets/{index.es529-B0m2ddpp.js → index.es551-B0m2ddpp.js} +0 -0
- /package/dist/assets/{index.es530-CyktbL80.js → index.es552-CyktbL80.js} +0 -0
- /package/dist/assets/{index.es531-Csfq5Kiy.js → index.es553-Csfq5Kiy.js} +0 -0
- /package/dist/assets/{index.es532-CafNBF8u.js → index.es554-CafNBF8u.js} +0 -0
- /package/dist/assets/{index.es533-CTRr51gU.js → index.es555-CTRr51gU.js} +0 -0
- /package/dist/assets/{index.es534-D4h5O-jR.js → index.es556-D4h5O-jR.js} +0 -0
- /package/dist/assets/{index.es535-C39BiMTA.js → index.es557-C39BiMTA.js} +0 -0
- /package/dist/assets/{index.es536-Ddv68eIx.js → index.es558-Ddv68eIx.js} +0 -0
- /package/dist/assets/{index.es537-GBQ2dnAY.js → index.es559-GBQ2dnAY.js} +0 -0
- /package/dist/assets/{index.es538-PoHY5YXO.js → index.es560-PoHY5YXO.js} +0 -0
- /package/dist/assets/{index.es539-3e1v2bzS.js → index.es561-3e1v2bzS.js} +0 -0
- /package/dist/assets/{index.es540-CS3Unz2-.js → index.es562-CS3Unz2-.js} +0 -0
- /package/dist/assets/{index.es541-bN70gL4F.js → index.es563-bN70gL4F.js} +0 -0
- /package/dist/assets/{index.es542-CmCqftbK.js → index.es564-CmCqftbK.js} +0 -0
- /package/dist/assets/{index.es543-Ds-gbosJ.js → index.es565-Ds-gbosJ.js} +0 -0
- /package/dist/assets/{index.es544-CjDtw9vr.js → index.es566-CjDtw9vr.js} +0 -0
- /package/dist/assets/{index.es545-BthQWCQV.js → index.es567-BthQWCQV.js} +0 -0
- /package/dist/assets/{index.es546-DqwNpetd.js → index.es568-DqwNpetd.js} +0 -0
- /package/dist/assets/{index.es547-Bw305WKR.js → index.es569-Bw305WKR.js} +0 -0
- /package/dist/assets/{index.es548-DXbdFlpD.js → index.es570-DXbdFlpD.js} +0 -0
- /package/dist/assets/{index.es549-L9t79GZl.js → index.es571-L9t79GZl.js} +0 -0
- /package/dist/assets/{index.es550-CbfX1IO0.js → index.es572-CbfX1IO0.js} +0 -0
- /package/dist/assets/{index.es551-DBQeEorK.js → index.es573-DBQeEorK.js} +0 -0
- /package/dist/assets/{index.es552-BEBZ7ncR.js → index.es574-BEBZ7ncR.js} +0 -0
- /package/dist/assets/{index.es553-Bkuqu6BP.js → index.es575-Bkuqu6BP.js} +0 -0
- /package/dist/assets/{index.es554-D0r3Knsf.js → index.es576-D0r3Knsf.js} +0 -0
- /package/dist/assets/{index.es555-CVO1_9PV.js → index.es577-CVO1_9PV.js} +0 -0
package/dist/api-doc.yaml
CHANGED
|
@@ -1,54 +1,112 @@
|
|
|
1
1
|
openapi: 3.1.0
|
|
2
2
|
info:
|
|
3
3
|
title: Malloy Publisher - Semantic Model Serving API
|
|
4
|
-
description:
|
|
5
|
-
The Malloy Publisher - Semantic Model Serving API
|
|
6
|
-
Malloy
|
|
7
|
-
|
|
4
|
+
description: |
|
|
5
|
+
The Malloy Publisher - Semantic Model Serving API provides comprehensive access to Malloy packages and their associated resources.
|
|
6
|
+
A Malloy package is a directory containing Malloy models (.malloy files), Malloy notebooks (.malloynb files), and embedded databases
|
|
7
|
+
(.parquet files) with a malloy-publisher.json manifest at the package's root directory.
|
|
8
|
+
|
|
9
|
+
## Key Features
|
|
10
|
+
|
|
11
|
+
- **Project Management**: Create and manage projects with their associated packages and connections
|
|
12
|
+
- **Package Lifecycle**: Full CRUD operations for Malloy packages and their versions
|
|
13
|
+
- **Model & Notebook Access**: Retrieve and execute Malloy models and notebooks
|
|
14
|
+
- **Connection Management**: Secure database connection configuration and testing
|
|
15
|
+
- **Query Execution**: Execute queries against models and retrieve results
|
|
16
|
+
- **Watch Mode**: Real-time file watching for development workflows
|
|
17
|
+
|
|
18
|
+
## Resource Hierarchy
|
|
19
|
+
|
|
20
|
+
The API follows a hierarchical resource structure:
|
|
21
|
+
```
|
|
22
|
+
Projects
|
|
23
|
+
├── Connections
|
|
24
|
+
├── Packages
|
|
25
|
+
│ ├── Models
|
|
26
|
+
│ ├── Notebooks
|
|
27
|
+
│ ├── Databases
|
|
28
|
+
│ └── Schedules
|
|
29
|
+
└── Watch Mode
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
For examples, see the Malloy samples packages (https://github.com/malloydata/malloy-samples) repository.
|
|
8
33
|
version: v0
|
|
34
|
+
|
|
9
35
|
servers:
|
|
10
36
|
- url: /api/v0/
|
|
37
|
+
description: PublisherAPI server
|
|
38
|
+
|
|
39
|
+
tags:
|
|
40
|
+
- name: publisher
|
|
41
|
+
description: Publisher status and health check operations
|
|
42
|
+
- name: projects
|
|
43
|
+
description: Project lifecycle management including creation, configuration, and deletion of data modeling projects
|
|
44
|
+
- name: connections
|
|
45
|
+
description: Database connection management for secure data source configuration and access
|
|
46
|
+
- name: packages
|
|
47
|
+
description: Package management for Malloy data models, including versioning and distribution
|
|
48
|
+
- name: models
|
|
49
|
+
description: Malloy model access and compilation operations
|
|
50
|
+
- name: notebooks
|
|
51
|
+
description: Malloy notebook access and execution operations
|
|
52
|
+
- name: queryresults
|
|
53
|
+
description: Query execution and result retrieval operations
|
|
54
|
+
- name: databases
|
|
55
|
+
description: Embedded database management and access
|
|
56
|
+
- name: schedules
|
|
57
|
+
description: Scheduled task management and monitoring
|
|
58
|
+
- name: watch-mode
|
|
59
|
+
description: Real-time file watching for development workflows
|
|
11
60
|
|
|
12
61
|
paths:
|
|
13
62
|
/status:
|
|
14
63
|
get:
|
|
15
64
|
tags:
|
|
16
|
-
|
|
65
|
+
- publisher
|
|
17
66
|
operationId: get-status
|
|
18
|
-
summary:
|
|
67
|
+
summary: Get server status and health information
|
|
68
|
+
description: |
|
|
69
|
+
Returns the current status of the Malloy Publisher server, including initialization state,
|
|
70
|
+
available projects, and server timestamp. This endpoint is useful for health checks and
|
|
71
|
+
monitoring server availability.
|
|
19
72
|
responses:
|
|
20
|
-
|
|
73
|
+
"200":
|
|
21
74
|
description: Returns server status
|
|
22
75
|
content:
|
|
23
76
|
application/json:
|
|
24
77
|
schema:
|
|
25
|
-
$ref:
|
|
78
|
+
$ref: "#/components/schemas/ServerStatus"
|
|
26
79
|
|
|
27
80
|
/connections/test:
|
|
28
81
|
post:
|
|
29
82
|
tags:
|
|
30
83
|
- connections
|
|
31
84
|
operationId: test-connection-configuration
|
|
32
|
-
summary: Test
|
|
85
|
+
summary: Test database connection configuration
|
|
86
|
+
description: |
|
|
87
|
+
Validates a database connection configuration without adding it to any project.
|
|
88
|
+
This endpoint allows you to test connection parameters, credentials, and network
|
|
89
|
+
connectivity before committing the connection to a project. Useful for troubleshooting
|
|
90
|
+
connection issues and validating configurations during setup.
|
|
33
91
|
requestBody:
|
|
34
92
|
required: true
|
|
35
93
|
content:
|
|
36
94
|
application/json:
|
|
37
95
|
schema:
|
|
38
|
-
$ref:
|
|
96
|
+
$ref: "#/components/schemas/Connection"
|
|
39
97
|
responses:
|
|
40
98
|
"200":
|
|
41
99
|
description: Connection test result
|
|
42
100
|
content:
|
|
43
101
|
application/json:
|
|
44
102
|
schema:
|
|
45
|
-
$ref:
|
|
103
|
+
$ref: "#/components/schemas/ConnectionStatus"
|
|
46
104
|
"400":
|
|
47
|
-
$ref: "#/components/responses/
|
|
105
|
+
$ref: "#/components/responses/BadRequest"
|
|
48
106
|
"401":
|
|
49
|
-
$ref: "#/components/responses/
|
|
107
|
+
$ref: "#/components/responses/Unauthorized"
|
|
50
108
|
"404":
|
|
51
|
-
$ref: "#/components/responses/
|
|
109
|
+
$ref: "#/components/responses/NotFound"
|
|
52
110
|
"500":
|
|
53
111
|
$ref: "#/components/responses/InternalServerError"
|
|
54
112
|
|
|
@@ -57,10 +115,14 @@ paths:
|
|
|
57
115
|
tags:
|
|
58
116
|
- projects
|
|
59
117
|
operationId: list-projects
|
|
60
|
-
summary:
|
|
118
|
+
summary: List all available projects
|
|
119
|
+
description: |
|
|
120
|
+
Retrieves a list of all projects currently hosted on this Malloy Publisher server.
|
|
121
|
+
Each project contains metadata about its packages, connections, and configuration.
|
|
122
|
+
This endpoint is typically used to discover available projects and their basic information.
|
|
61
123
|
responses:
|
|
62
124
|
"200":
|
|
63
|
-
description: A list of
|
|
125
|
+
description: A list of all available projects
|
|
64
126
|
content:
|
|
65
127
|
application/json:
|
|
66
128
|
schema:
|
|
@@ -68,22 +130,24 @@ paths:
|
|
|
68
130
|
items:
|
|
69
131
|
$ref: "#/components/schemas/Project"
|
|
70
132
|
"401":
|
|
71
|
-
$ref: "#/components/responses/
|
|
133
|
+
$ref: "#/components/responses/Unauthorized"
|
|
72
134
|
"500":
|
|
73
135
|
$ref: "#/components/responses/InternalServerError"
|
|
74
136
|
post:
|
|
75
137
|
tags:
|
|
76
138
|
- projects
|
|
77
139
|
operationId: create-project
|
|
78
|
-
summary:
|
|
140
|
+
summary: Create a new project
|
|
141
|
+
description: |
|
|
142
|
+
Creates a new Malloy project with the specified configuration. A project serves as a
|
|
143
|
+
container for packages, connections, and other resources. The project will be initialized
|
|
144
|
+
with the provided metadata and can immediately accept packages and connections.
|
|
79
145
|
requestBody:
|
|
80
146
|
required: true
|
|
81
147
|
content:
|
|
82
148
|
application/json:
|
|
83
149
|
schema:
|
|
84
|
-
|
|
85
|
-
items:
|
|
86
|
-
$ref: '#/components/schemas/Project'
|
|
150
|
+
$ref: "#/components/schemas/Project"
|
|
87
151
|
responses:
|
|
88
152
|
"200":
|
|
89
153
|
description: Returns the project created
|
|
@@ -92,7 +156,7 @@ paths:
|
|
|
92
156
|
schema:
|
|
93
157
|
$ref: "#/components/schemas/Project"
|
|
94
158
|
"401":
|
|
95
|
-
$ref: "#/components/responses/
|
|
159
|
+
$ref: "#/components/responses/Unauthorized"
|
|
96
160
|
"500":
|
|
97
161
|
$ref: "#/components/responses/InternalServerError"
|
|
98
162
|
|
|
@@ -101,14 +165,18 @@ paths:
|
|
|
101
165
|
tags:
|
|
102
166
|
- projects
|
|
103
167
|
operationId: get-project
|
|
104
|
-
summary:
|
|
168
|
+
summary: Get project details and metadata
|
|
169
|
+
description: |
|
|
170
|
+
Retrieves detailed information about a specific project, including its packages,
|
|
171
|
+
connections, configuration, and metadata. The reload parameter can be used to
|
|
172
|
+
refresh the project state from disk before returning the information.
|
|
105
173
|
parameters:
|
|
106
174
|
- name: projectName
|
|
107
175
|
in: path
|
|
108
|
-
description: Name of project
|
|
176
|
+
description: Name of the project
|
|
109
177
|
required: true
|
|
110
178
|
schema:
|
|
111
|
-
|
|
179
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
112
180
|
- name: reload
|
|
113
181
|
in: query
|
|
114
182
|
description: Load / reload the project before returning result
|
|
@@ -117,37 +185,39 @@ paths:
|
|
|
117
185
|
type: boolean
|
|
118
186
|
responses:
|
|
119
187
|
"200":
|
|
120
|
-
description:
|
|
188
|
+
description: Project details and metadata
|
|
121
189
|
content:
|
|
122
190
|
application/json:
|
|
123
191
|
schema:
|
|
124
192
|
$ref: "#/components/schemas/Project"
|
|
125
193
|
"401":
|
|
126
|
-
$ref: "#/components/responses/
|
|
194
|
+
$ref: "#/components/responses/Unauthorized"
|
|
127
195
|
"404":
|
|
128
|
-
$ref: "#/components/responses/
|
|
196
|
+
$ref: "#/components/responses/NotFound"
|
|
129
197
|
"500":
|
|
130
198
|
$ref: "#/components/responses/InternalServerError"
|
|
131
199
|
patch:
|
|
132
200
|
tags:
|
|
133
201
|
- projects
|
|
134
202
|
operationId: update-project
|
|
135
|
-
summary:
|
|
203
|
+
summary: Update project configuration
|
|
204
|
+
description: |
|
|
205
|
+
Updates the configuration and metadata of an existing project. This allows you to
|
|
206
|
+
modify project settings, update the README, change the location, or update other
|
|
207
|
+
project-level properties. The project must exist and be accessible.
|
|
136
208
|
parameters:
|
|
137
209
|
- name: projectName
|
|
138
210
|
in: path
|
|
139
|
-
description: Name of project
|
|
211
|
+
description: Name of the project
|
|
140
212
|
required: true
|
|
141
213
|
schema:
|
|
142
|
-
|
|
214
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
143
215
|
requestBody:
|
|
144
216
|
required: true
|
|
145
217
|
content:
|
|
146
218
|
application/json:
|
|
147
219
|
schema:
|
|
148
|
-
|
|
149
|
-
items:
|
|
150
|
-
$ref: '#/components/schemas/Project'
|
|
220
|
+
$ref: "#/components/schemas/Project"
|
|
151
221
|
responses:
|
|
152
222
|
"200":
|
|
153
223
|
description: Returns the project updated
|
|
@@ -156,21 +226,25 @@ paths:
|
|
|
156
226
|
schema:
|
|
157
227
|
$ref: "#/components/schemas/Project"
|
|
158
228
|
"401":
|
|
159
|
-
$ref: "#/components/responses/
|
|
229
|
+
$ref: "#/components/responses/Unauthorized"
|
|
160
230
|
"500":
|
|
161
231
|
$ref: "#/components/responses/InternalServerError"
|
|
162
232
|
delete:
|
|
163
233
|
tags:
|
|
164
234
|
- projects
|
|
165
235
|
operationId: delete-project
|
|
166
|
-
summary:
|
|
236
|
+
summary: Delete a project
|
|
237
|
+
description: |
|
|
238
|
+
Permanently deletes a project and all its associated resources including packages,
|
|
239
|
+
connections, and metadata. This operation cannot be undone, so use with caution.
|
|
240
|
+
The project must exist and be accessible for deletion.
|
|
167
241
|
parameters:
|
|
168
242
|
- name: projectName
|
|
169
243
|
in: path
|
|
170
|
-
description: Name of project
|
|
244
|
+
description: Name of the project
|
|
171
245
|
required: true
|
|
172
246
|
schema:
|
|
173
|
-
|
|
247
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
174
248
|
responses:
|
|
175
249
|
"200":
|
|
176
250
|
description: Returns the project deleted
|
|
@@ -179,9 +253,9 @@ paths:
|
|
|
179
253
|
schema:
|
|
180
254
|
$ref: "#/components/schemas/Project"
|
|
181
255
|
"401":
|
|
182
|
-
$ref: "#/components/responses/
|
|
256
|
+
$ref: "#/components/responses/Unauthorized"
|
|
183
257
|
"404":
|
|
184
|
-
$ref: "#/components/responses/
|
|
258
|
+
$ref: "#/components/responses/NotFound"
|
|
185
259
|
"500":
|
|
186
260
|
$ref: "#/components/responses/InternalServerError"
|
|
187
261
|
|
|
@@ -190,17 +264,21 @@ paths:
|
|
|
190
264
|
tags:
|
|
191
265
|
- connections
|
|
192
266
|
operationId: list-connections
|
|
193
|
-
summary:
|
|
267
|
+
summary: List project database connections
|
|
268
|
+
description: |
|
|
269
|
+
Retrieves a list of all database connections configured for the specified project.
|
|
270
|
+
Each connection includes its configuration, type, and status information. This endpoint
|
|
271
|
+
is useful for discovering available data sources within a project.
|
|
194
272
|
parameters:
|
|
195
273
|
- name: projectName
|
|
196
274
|
in: path
|
|
197
|
-
description: Name of project
|
|
275
|
+
description: Name of the project
|
|
198
276
|
required: true
|
|
199
277
|
schema:
|
|
200
|
-
|
|
278
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
201
279
|
responses:
|
|
202
280
|
"200":
|
|
203
|
-
description: A list of
|
|
281
|
+
description: A list of database connections in the project
|
|
204
282
|
content:
|
|
205
283
|
application/json:
|
|
206
284
|
schema:
|
|
@@ -208,7 +286,7 @@ paths:
|
|
|
208
286
|
items:
|
|
209
287
|
$ref: "#/components/schemas/Connection"
|
|
210
288
|
"401":
|
|
211
|
-
$ref: "#/components/responses/
|
|
289
|
+
$ref: "#/components/responses/Unauthorized"
|
|
212
290
|
"500":
|
|
213
291
|
$ref: "#/components/responses/InternalServerError"
|
|
214
292
|
|
|
@@ -217,65 +295,72 @@ paths:
|
|
|
217
295
|
tags:
|
|
218
296
|
- connections
|
|
219
297
|
operationId: get-connection
|
|
220
|
-
summary:
|
|
298
|
+
summary: Get connection details
|
|
299
|
+
description: |
|
|
300
|
+
Retrieves detailed information about a specific database connection within a project.
|
|
301
|
+
This includes connection configuration, credentials (if accessible), and metadata.
|
|
302
|
+
Useful for inspecting connection settings and troubleshooting connectivity issues.
|
|
221
303
|
parameters:
|
|
222
304
|
- name: projectName
|
|
223
305
|
in: path
|
|
224
|
-
description: Name of project
|
|
306
|
+
description: Name of the project
|
|
225
307
|
required: true
|
|
226
308
|
schema:
|
|
227
|
-
|
|
309
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
228
310
|
- name: connectionName
|
|
229
311
|
in: path
|
|
230
|
-
description: Name of connection
|
|
312
|
+
description: Name of the connection
|
|
231
313
|
required: true
|
|
232
314
|
schema:
|
|
233
|
-
|
|
315
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
234
316
|
responses:
|
|
235
317
|
"200":
|
|
236
|
-
description:
|
|
318
|
+
description: Connection details and configuration
|
|
237
319
|
content:
|
|
238
320
|
application/json:
|
|
239
321
|
schema:
|
|
240
322
|
$ref: "#/components/schemas/Connection"
|
|
241
323
|
"401":
|
|
242
|
-
$ref: "#/components/responses/
|
|
324
|
+
$ref: "#/components/responses/Unauthorized"
|
|
243
325
|
"404":
|
|
244
|
-
$ref: "#/components/responses/
|
|
326
|
+
$ref: "#/components/responses/NotFound"
|
|
245
327
|
"500":
|
|
246
328
|
$ref: "#/components/responses/InternalServerError"
|
|
247
329
|
|
|
248
|
-
|
|
249
330
|
/projects/{projectName}/connections/{connectionName}/test:
|
|
250
331
|
get:
|
|
251
332
|
tags:
|
|
252
333
|
- connections
|
|
253
334
|
operationId: test-connection
|
|
254
|
-
summary:
|
|
335
|
+
summary: Test existing project connection
|
|
336
|
+
description: |
|
|
337
|
+
Tests the connectivity and configuration of an existing database connection within a project.
|
|
338
|
+
This endpoint validates that the connection can be established, credentials are valid,
|
|
339
|
+
and the database is accessible. Useful for monitoring connection health and troubleshooting.
|
|
255
340
|
parameters:
|
|
256
341
|
- name: projectName
|
|
257
342
|
in: path
|
|
258
|
-
description: Name of project
|
|
343
|
+
description: Name of the project
|
|
259
344
|
required: true
|
|
260
345
|
schema:
|
|
261
|
-
|
|
346
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
262
347
|
- name: connectionName
|
|
263
348
|
in: path
|
|
264
|
-
description: Name of connection
|
|
349
|
+
description: Name of the connection
|
|
265
350
|
required: true
|
|
266
351
|
schema:
|
|
267
|
-
|
|
352
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
268
353
|
responses:
|
|
269
354
|
"200":
|
|
270
355
|
description: OK
|
|
271
356
|
content:
|
|
272
357
|
application/json:
|
|
273
358
|
schema:
|
|
274
|
-
$ref:
|
|
359
|
+
$ref: "#/components/schemas/ConnectionStatus"
|
|
275
360
|
"401":
|
|
276
|
-
$ref: "#/components/responses/
|
|
361
|
+
$ref: "#/components/responses/Unauthorized"
|
|
277
362
|
"404":
|
|
278
|
-
$ref: "#/components/responses/
|
|
363
|
+
$ref: "#/components/responses/NotFound"
|
|
279
364
|
"500":
|
|
280
365
|
$ref: "#/components/responses/InternalServerError"
|
|
281
366
|
|
|
@@ -285,20 +370,26 @@ paths:
|
|
|
285
370
|
- connections
|
|
286
371
|
operationId: get-sqlsource
|
|
287
372
|
deprecated: true
|
|
288
|
-
summary:
|
|
373
|
+
summary: Get SQL source (deprecated)
|
|
374
|
+
description: |
|
|
375
|
+
**DEPRECATED**: This endpoint is deprecated and may be removed in future versions.
|
|
376
|
+
Use the POST version instead for better security and functionality.
|
|
377
|
+
|
|
378
|
+
Creates a Malloy source from a SQL statement using the specified connection.
|
|
379
|
+
The SQL statement is executed to generate a source definition that can be used in Malloy models.
|
|
289
380
|
parameters:
|
|
290
381
|
- name: projectName
|
|
291
382
|
in: path
|
|
292
|
-
description: Name of project
|
|
383
|
+
description: Name of the project
|
|
293
384
|
required: true
|
|
294
385
|
schema:
|
|
295
|
-
|
|
386
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
296
387
|
- name: connectionName
|
|
297
388
|
in: path
|
|
298
|
-
description: Name of connection
|
|
389
|
+
description: Name of the connection
|
|
299
390
|
required: true
|
|
300
391
|
schema:
|
|
301
|
-
|
|
392
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
302
393
|
- name: sqlStatement
|
|
303
394
|
in: query
|
|
304
395
|
description: SQL statement
|
|
@@ -307,35 +398,40 @@ paths:
|
|
|
307
398
|
type: string
|
|
308
399
|
responses:
|
|
309
400
|
"200":
|
|
310
|
-
description:
|
|
401
|
+
description: SQL source information
|
|
311
402
|
content:
|
|
312
403
|
application/json:
|
|
313
404
|
schema:
|
|
314
405
|
$ref: "#/components/schemas/SqlSource"
|
|
315
406
|
"401":
|
|
316
|
-
$ref: "#/components/responses/
|
|
407
|
+
$ref: "#/components/responses/Unauthorized"
|
|
317
408
|
"404":
|
|
318
|
-
$ref: "#/components/responses/
|
|
409
|
+
$ref: "#/components/responses/NotFound"
|
|
319
410
|
"500":
|
|
320
411
|
$ref: "#/components/responses/InternalServerError"
|
|
321
412
|
post:
|
|
322
413
|
tags:
|
|
323
414
|
- connections
|
|
324
415
|
operationId: post-sqlsource
|
|
325
|
-
summary:
|
|
416
|
+
summary: Create SQL source from statement
|
|
417
|
+
description: |
|
|
418
|
+
Creates a Malloy source from a SQL statement using the specified database connection.
|
|
419
|
+
The SQL statement is executed to generate a source definition that can be used in Malloy models.
|
|
420
|
+
This is the preferred method over the deprecated GET version as it provides better security
|
|
421
|
+
and supports larger SQL statements.
|
|
326
422
|
parameters:
|
|
327
423
|
- name: projectName
|
|
328
424
|
in: path
|
|
329
|
-
description: Name of project
|
|
425
|
+
description: Name of the project
|
|
330
426
|
required: true
|
|
331
427
|
schema:
|
|
332
|
-
|
|
428
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
333
429
|
- name: connectionName
|
|
334
430
|
in: path
|
|
335
|
-
description: Name of connection
|
|
431
|
+
description: Name of the connection
|
|
336
432
|
required: true
|
|
337
433
|
schema:
|
|
338
|
-
|
|
434
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
339
435
|
requestBody:
|
|
340
436
|
description: SQL statement to fetch the SQL source
|
|
341
437
|
required: true
|
|
@@ -348,15 +444,15 @@ paths:
|
|
|
348
444
|
type: string
|
|
349
445
|
responses:
|
|
350
446
|
"200":
|
|
351
|
-
description:
|
|
447
|
+
description: SQL source information
|
|
352
448
|
content:
|
|
353
449
|
application/json:
|
|
354
450
|
schema:
|
|
355
451
|
$ref: "#/components/schemas/SqlSource"
|
|
356
452
|
"401":
|
|
357
|
-
$ref: "#/components/responses/
|
|
453
|
+
$ref: "#/components/responses/Unauthorized"
|
|
358
454
|
"404":
|
|
359
|
-
$ref: "#/components/responses/
|
|
455
|
+
$ref: "#/components/responses/NotFound"
|
|
360
456
|
"500":
|
|
361
457
|
$ref: "#/components/responses/InternalServerError"
|
|
362
458
|
|
|
@@ -365,20 +461,24 @@ paths:
|
|
|
365
461
|
tags:
|
|
366
462
|
- connections
|
|
367
463
|
operationId: get-tablesource
|
|
368
|
-
summary:
|
|
464
|
+
summary: Get table source information
|
|
465
|
+
description: |
|
|
466
|
+
Retrieves information about a specific table or view from the database connection.
|
|
467
|
+
This includes table schema, column definitions, and metadata. The table can be specified
|
|
468
|
+
by either tableKey or tablePath parameters, depending on the database type.
|
|
369
469
|
parameters:
|
|
370
470
|
- name: projectName
|
|
371
471
|
in: path
|
|
372
|
-
description: Name of project
|
|
472
|
+
description: Name of the project
|
|
373
473
|
required: true
|
|
374
474
|
schema:
|
|
375
|
-
|
|
475
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
376
476
|
- name: connectionName
|
|
377
477
|
in: path
|
|
378
|
-
description: Name of connection
|
|
478
|
+
description: Name of the connection
|
|
379
479
|
required: true
|
|
380
480
|
schema:
|
|
381
|
-
|
|
481
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
382
482
|
- name: tableKey
|
|
383
483
|
in: query
|
|
384
484
|
description: Table key
|
|
@@ -393,15 +493,15 @@ paths:
|
|
|
393
493
|
type: string
|
|
394
494
|
responses:
|
|
395
495
|
"200":
|
|
396
|
-
description:
|
|
496
|
+
description: Table source information
|
|
397
497
|
content:
|
|
398
498
|
application/json:
|
|
399
499
|
schema:
|
|
400
500
|
$ref: "#/components/schemas/TableSource"
|
|
401
501
|
"401":
|
|
402
|
-
$ref: "#/components/responses/
|
|
502
|
+
$ref: "#/components/responses/Unauthorized"
|
|
403
503
|
"404":
|
|
404
|
-
$ref: "#/components/responses/
|
|
504
|
+
$ref: "#/components/responses/NotFound"
|
|
405
505
|
"500":
|
|
406
506
|
$ref: "#/components/responses/InternalServerError"
|
|
407
507
|
|
|
@@ -410,29 +510,33 @@ paths:
|
|
|
410
510
|
tags:
|
|
411
511
|
- connections
|
|
412
512
|
operationId: list-tables
|
|
413
|
-
summary:
|
|
513
|
+
summary: List tables in database schema
|
|
514
|
+
description: |
|
|
515
|
+
Retrieves a list of all tables and views available in the specified database schema.
|
|
516
|
+
This endpoint is useful for discovering available data sources and exploring the database
|
|
517
|
+
structure. The schema must exist in the connection for this operation to succeed.
|
|
414
518
|
parameters:
|
|
415
519
|
- name: projectName
|
|
416
520
|
in: path
|
|
417
|
-
description: Name of project
|
|
521
|
+
description: Name of the project
|
|
418
522
|
required: true
|
|
419
523
|
schema:
|
|
420
|
-
|
|
524
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
421
525
|
- name: connectionName
|
|
422
526
|
in: path
|
|
423
|
-
description: Name of connection
|
|
527
|
+
description: Name of the connection
|
|
424
528
|
required: true
|
|
425
529
|
schema:
|
|
426
|
-
|
|
530
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
427
531
|
- name: schemaName
|
|
428
532
|
in: path
|
|
429
|
-
description: Name of schema
|
|
533
|
+
description: Name of the schema
|
|
430
534
|
required: true
|
|
431
535
|
schema:
|
|
432
|
-
|
|
536
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
433
537
|
responses:
|
|
434
538
|
"200":
|
|
435
|
-
description: A list of table names available in the specified schema
|
|
539
|
+
description: A list of table names available in the specified schema
|
|
436
540
|
content:
|
|
437
541
|
application/json:
|
|
438
542
|
schema:
|
|
@@ -440,9 +544,9 @@ paths:
|
|
|
440
544
|
items:
|
|
441
545
|
type: string
|
|
442
546
|
"401":
|
|
443
|
-
$ref: "#/components/responses/
|
|
547
|
+
$ref: "#/components/responses/Unauthorized"
|
|
444
548
|
"404":
|
|
445
|
-
$ref: "#/components/responses/
|
|
549
|
+
$ref: "#/components/responses/NotFound"
|
|
446
550
|
"500":
|
|
447
551
|
$ref: "#/components/responses/InternalServerError"
|
|
448
552
|
|
|
@@ -451,23 +555,27 @@ paths:
|
|
|
451
555
|
tags:
|
|
452
556
|
- connections
|
|
453
557
|
operationId: list-schemas
|
|
454
|
-
summary:
|
|
558
|
+
summary: List database schemas
|
|
559
|
+
description: |
|
|
560
|
+
Retrieves a list of all schemas (databases) available in the specified connection.
|
|
561
|
+
Each schema includes metadata such as name, description, and whether it's the default schema.
|
|
562
|
+
This endpoint is useful for exploring the database structure and discovering available data sources.
|
|
455
563
|
parameters:
|
|
456
564
|
- name: projectName
|
|
457
565
|
in: path
|
|
458
|
-
description: Name of project
|
|
566
|
+
description: Name of the project
|
|
459
567
|
required: true
|
|
460
568
|
schema:
|
|
461
|
-
|
|
569
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
462
570
|
- name: connectionName
|
|
463
571
|
in: path
|
|
464
|
-
description: Name of connection
|
|
572
|
+
description: Name of the connection
|
|
465
573
|
required: true
|
|
466
574
|
schema:
|
|
467
|
-
|
|
575
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
468
576
|
responses:
|
|
469
577
|
"200":
|
|
470
|
-
description: A list of schemas available in the connection with metadata
|
|
578
|
+
description: A list of schemas available in the connection with metadata
|
|
471
579
|
content:
|
|
472
580
|
application/json:
|
|
473
581
|
schema:
|
|
@@ -475,9 +583,9 @@ paths:
|
|
|
475
583
|
items:
|
|
476
584
|
$ref: "#/components/schemas/SchemaName"
|
|
477
585
|
"401":
|
|
478
|
-
$ref: "#/components/responses/
|
|
586
|
+
$ref: "#/components/responses/Unauthorized"
|
|
479
587
|
"404":
|
|
480
|
-
$ref: "#/components/responses/
|
|
588
|
+
$ref: "#/components/responses/NotFound"
|
|
481
589
|
"500":
|
|
482
590
|
$ref: "#/components/responses/InternalServerError"
|
|
483
591
|
|
|
@@ -487,20 +595,26 @@ paths:
|
|
|
487
595
|
- connections
|
|
488
596
|
operationId: get-querydata
|
|
489
597
|
deprecated: true
|
|
490
|
-
summary:
|
|
598
|
+
summary: Execute SQL query (deprecated)
|
|
599
|
+
description: |
|
|
600
|
+
**DEPRECATED**: This endpoint is deprecated and may be removed in future versions.
|
|
601
|
+
Use the POST version instead for better security and functionality.
|
|
602
|
+
|
|
603
|
+
Executes a SQL statement against the specified database connection and returns the results.
|
|
604
|
+
The query results include data, metadata, and execution information.
|
|
491
605
|
parameters:
|
|
492
606
|
- name: projectName
|
|
493
607
|
in: path
|
|
494
|
-
description: Name of project
|
|
608
|
+
description: Name of the project
|
|
495
609
|
required: true
|
|
496
610
|
schema:
|
|
497
|
-
|
|
611
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
498
612
|
- name: connectionName
|
|
499
613
|
in: path
|
|
500
|
-
description: Name of connection
|
|
614
|
+
description: Name of the connection
|
|
501
615
|
required: true
|
|
502
616
|
schema:
|
|
503
|
-
|
|
617
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
504
618
|
- name: sqlStatement
|
|
505
619
|
in: query
|
|
506
620
|
description: SQL statement
|
|
@@ -515,35 +629,39 @@ paths:
|
|
|
515
629
|
type: string
|
|
516
630
|
responses:
|
|
517
631
|
"200":
|
|
518
|
-
description:
|
|
632
|
+
description: Query execution results
|
|
519
633
|
content:
|
|
520
634
|
application/json:
|
|
521
635
|
schema:
|
|
522
636
|
$ref: "#/components/schemas/QueryData"
|
|
523
637
|
"401":
|
|
524
|
-
$ref: "#/components/responses/
|
|
638
|
+
$ref: "#/components/responses/Unauthorized"
|
|
525
639
|
"404":
|
|
526
|
-
$ref: "#/components/responses/
|
|
640
|
+
$ref: "#/components/responses/NotFound"
|
|
527
641
|
"500":
|
|
528
|
-
|
|
642
|
+
$ref: "#/components/responses/InternalServerError"
|
|
529
643
|
post:
|
|
530
644
|
tags:
|
|
531
645
|
- connections
|
|
532
646
|
operationId: post-querydata
|
|
533
|
-
summary:
|
|
647
|
+
summary: Execute SQL query
|
|
648
|
+
description: |
|
|
649
|
+
Executes a SQL statement against the specified database connection and returns the results.
|
|
650
|
+
This is the preferred method over the deprecated GET version as it provides better security
|
|
651
|
+
and supports larger SQL statements. The results include data, metadata, and execution information.
|
|
534
652
|
parameters:
|
|
535
653
|
- name: projectName
|
|
536
654
|
in: path
|
|
537
|
-
description: Name of project
|
|
655
|
+
description: Name of the project
|
|
538
656
|
required: true
|
|
539
657
|
schema:
|
|
540
|
-
|
|
658
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
541
659
|
- name: connectionName
|
|
542
660
|
in: path
|
|
543
|
-
description: Name of connection
|
|
661
|
+
description: Name of the connection
|
|
544
662
|
required: true
|
|
545
663
|
schema:
|
|
546
|
-
|
|
664
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
547
665
|
- name: options
|
|
548
666
|
in: query
|
|
549
667
|
description: Options
|
|
@@ -562,15 +680,15 @@ paths:
|
|
|
562
680
|
type: string
|
|
563
681
|
responses:
|
|
564
682
|
"200":
|
|
565
|
-
description:
|
|
683
|
+
description: Query execution results
|
|
566
684
|
content:
|
|
567
685
|
application/json:
|
|
568
686
|
schema:
|
|
569
687
|
$ref: "#/components/schemas/QueryData"
|
|
570
688
|
"401":
|
|
571
|
-
$ref: "#/components/responses/
|
|
689
|
+
$ref: "#/components/responses/Unauthorized"
|
|
572
690
|
"404":
|
|
573
|
-
$ref: "#/components/responses/
|
|
691
|
+
$ref: "#/components/responses/NotFound"
|
|
574
692
|
"500":
|
|
575
693
|
$ref: "#/components/responses/InternalServerError"
|
|
576
694
|
|
|
@@ -580,20 +698,26 @@ paths:
|
|
|
580
698
|
- connections
|
|
581
699
|
operationId: get-temporarytable
|
|
582
700
|
deprecated: true
|
|
583
|
-
summary:
|
|
701
|
+
summary: Create temporary table (deprecated)
|
|
702
|
+
description: |
|
|
703
|
+
**DEPRECATED**: This endpoint is deprecated and may be removed in future versions.
|
|
704
|
+
Use the POST version instead for better security and functionality.
|
|
705
|
+
|
|
706
|
+
Creates a temporary table from a SQL statement using the specified connection.
|
|
707
|
+
Temporary tables are useful for storing intermediate results during complex queries.
|
|
584
708
|
parameters:
|
|
585
709
|
- name: projectName
|
|
586
710
|
in: path
|
|
587
|
-
description: Name of project
|
|
711
|
+
description: Name of the project
|
|
588
712
|
required: true
|
|
589
713
|
schema:
|
|
590
|
-
|
|
714
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
591
715
|
- name: connectionName
|
|
592
716
|
in: path
|
|
593
|
-
description: Name of connection
|
|
717
|
+
description: Name of the connection
|
|
594
718
|
required: true
|
|
595
719
|
schema:
|
|
596
|
-
|
|
720
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
597
721
|
- name: sqlStatement
|
|
598
722
|
in: query
|
|
599
723
|
description: SQL statement
|
|
@@ -602,35 +726,40 @@ paths:
|
|
|
602
726
|
type: string
|
|
603
727
|
responses:
|
|
604
728
|
"200":
|
|
605
|
-
description:
|
|
729
|
+
description: Temporary table information
|
|
606
730
|
content:
|
|
607
731
|
application/json:
|
|
608
732
|
schema:
|
|
609
733
|
$ref: "#/components/schemas/TemporaryTable"
|
|
610
734
|
"401":
|
|
611
|
-
$ref: "#/components/responses/
|
|
735
|
+
$ref: "#/components/responses/Unauthorized"
|
|
612
736
|
"404":
|
|
613
|
-
$ref: "#/components/responses/
|
|
737
|
+
$ref: "#/components/responses/NotFound"
|
|
614
738
|
"500":
|
|
615
739
|
$ref: "#/components/responses/InternalServerError"
|
|
616
740
|
post:
|
|
617
741
|
tags:
|
|
618
742
|
- connections
|
|
619
743
|
operationId: post-temporarytable
|
|
620
|
-
summary:
|
|
744
|
+
summary: Create temporary table
|
|
745
|
+
description: |
|
|
746
|
+
Creates a temporary table from a SQL statement using the specified database connection.
|
|
747
|
+
This is the preferred method over the deprecated GET version as it provides better security
|
|
748
|
+
and supports larger SQL statements. Temporary tables are useful for storing intermediate
|
|
749
|
+
results during complex queries and data processing workflows.
|
|
621
750
|
parameters:
|
|
622
751
|
- name: projectName
|
|
623
752
|
in: path
|
|
624
|
-
description: Name of project
|
|
753
|
+
description: Name of the project
|
|
625
754
|
required: true
|
|
626
755
|
schema:
|
|
627
|
-
|
|
756
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
628
757
|
- name: connectionName
|
|
629
758
|
in: path
|
|
630
|
-
description: Name of connection
|
|
759
|
+
description: Name of the connection
|
|
631
760
|
required: true
|
|
632
761
|
schema:
|
|
633
|
-
|
|
762
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
634
763
|
requestBody:
|
|
635
764
|
description: SQL statement to create the temporary table
|
|
636
765
|
required: true
|
|
@@ -643,35 +772,38 @@ paths:
|
|
|
643
772
|
type: string
|
|
644
773
|
responses:
|
|
645
774
|
"200":
|
|
646
|
-
description:
|
|
775
|
+
description: Temporary table information
|
|
647
776
|
content:
|
|
648
777
|
application/json:
|
|
649
778
|
schema:
|
|
650
779
|
$ref: "#/components/schemas/TemporaryTable"
|
|
651
780
|
"401":
|
|
652
|
-
$ref: "#/components/responses/
|
|
781
|
+
$ref: "#/components/responses/Unauthorized"
|
|
653
782
|
"404":
|
|
654
|
-
$ref: "#/components/responses/
|
|
783
|
+
$ref: "#/components/responses/NotFound"
|
|
655
784
|
"500":
|
|
656
785
|
$ref: "#/components/responses/InternalServerError"
|
|
657
786
|
|
|
658
|
-
|
|
659
787
|
/projects/{projectName}/packages:
|
|
660
788
|
get:
|
|
661
789
|
tags:
|
|
662
790
|
- packages
|
|
663
791
|
operationId: list-packages
|
|
664
|
-
summary:
|
|
792
|
+
summary: List project packages
|
|
793
|
+
description: |
|
|
794
|
+
Retrieves a list of all Malloy packages within the specified project. Each package
|
|
795
|
+
contains models, notebooks, databases, and other resources. This endpoint is useful
|
|
796
|
+
for discovering available packages and their basic metadata.
|
|
665
797
|
parameters:
|
|
666
798
|
- name: projectName
|
|
667
799
|
in: path
|
|
668
|
-
description: Name of project
|
|
800
|
+
description: Name of the project
|
|
669
801
|
required: true
|
|
670
802
|
schema:
|
|
671
|
-
|
|
803
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
672
804
|
responses:
|
|
673
805
|
"200":
|
|
674
|
-
description: A list of the
|
|
806
|
+
description: A list of all packages in the project
|
|
675
807
|
content:
|
|
676
808
|
application/json:
|
|
677
809
|
schema:
|
|
@@ -679,31 +811,33 @@ paths:
|
|
|
679
811
|
items:
|
|
680
812
|
$ref: "#/components/schemas/Package"
|
|
681
813
|
"401":
|
|
682
|
-
$ref: "#/components/responses/
|
|
814
|
+
$ref: "#/components/responses/Unauthorized"
|
|
683
815
|
"500":
|
|
684
816
|
$ref: "#/components/responses/InternalServerError"
|
|
685
817
|
"501":
|
|
686
|
-
$ref: "#/components/responses/
|
|
818
|
+
$ref: "#/components/responses/NotImplemented"
|
|
687
819
|
post:
|
|
688
820
|
tags:
|
|
689
821
|
- packages
|
|
690
822
|
operationId: create-package
|
|
691
|
-
summary:
|
|
823
|
+
summary: Create a new package
|
|
824
|
+
description: |
|
|
825
|
+
Creates a new Malloy package within the specified project. A package serves as a
|
|
826
|
+
container for models, notebooks, embedded databases, and other resources. The package
|
|
827
|
+
will be initialized with the provided metadata and can immediately accept content.
|
|
692
828
|
parameters:
|
|
693
829
|
- name: projectName
|
|
694
830
|
in: path
|
|
695
|
-
description: Name of project
|
|
831
|
+
description: Name of the project
|
|
696
832
|
required: true
|
|
697
833
|
schema:
|
|
698
|
-
|
|
834
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
699
835
|
requestBody:
|
|
700
836
|
required: true
|
|
701
837
|
content:
|
|
702
838
|
application/json:
|
|
703
839
|
schema:
|
|
704
|
-
|
|
705
|
-
items:
|
|
706
|
-
$ref: '#/components/schemas/Package'
|
|
840
|
+
$ref: "#/components/schemas/Package"
|
|
707
841
|
responses:
|
|
708
842
|
"200":
|
|
709
843
|
description: Returns the package created
|
|
@@ -712,25 +846,30 @@ paths:
|
|
|
712
846
|
schema:
|
|
713
847
|
$ref: "#/components/schemas/Package"
|
|
714
848
|
"401":
|
|
715
|
-
$ref: "#/components/responses/
|
|
849
|
+
$ref: "#/components/responses/Unauthorized"
|
|
716
850
|
"500":
|
|
717
851
|
$ref: "#/components/responses/InternalServerError"
|
|
718
852
|
"501":
|
|
719
|
-
$ref: "#/components/responses/
|
|
853
|
+
$ref: "#/components/responses/NotImplemented"
|
|
720
854
|
|
|
721
855
|
/projects/{projectName}/packages/{packageName}:
|
|
722
856
|
get:
|
|
723
857
|
tags:
|
|
724
858
|
- packages
|
|
725
859
|
operationId: get-package
|
|
726
|
-
summary:
|
|
860
|
+
summary: Get package details and metadata
|
|
861
|
+
description: |
|
|
862
|
+
Retrieves detailed information about a specific package, including its models, notebooks,
|
|
863
|
+
databases, and metadata. The reload parameter can be used to refresh the package state
|
|
864
|
+
from disk before returning the information. The versionId parameter allows access to
|
|
865
|
+
specific package versions.
|
|
727
866
|
parameters:
|
|
728
867
|
- name: projectName
|
|
729
868
|
in: path
|
|
730
|
-
description: Name of project
|
|
869
|
+
description: Name of the project
|
|
731
870
|
required: true
|
|
732
871
|
schema:
|
|
733
|
-
|
|
872
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
734
873
|
- name: packageName
|
|
735
874
|
in: path
|
|
736
875
|
description: Package name
|
|
@@ -739,10 +878,10 @@ paths:
|
|
|
739
878
|
type: string
|
|
740
879
|
- name: versionId
|
|
741
880
|
in: query
|
|
742
|
-
description: Version
|
|
881
|
+
description: Version identifier for the package
|
|
743
882
|
required: false
|
|
744
883
|
schema:
|
|
745
|
-
|
|
884
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
746
885
|
- name: reload
|
|
747
886
|
in: query
|
|
748
887
|
description: Load / reload the package before returning result
|
|
@@ -751,45 +890,47 @@ paths:
|
|
|
751
890
|
type: boolean
|
|
752
891
|
responses:
|
|
753
892
|
"200":
|
|
754
|
-
description: Package metadata
|
|
893
|
+
description: Package details and metadata
|
|
755
894
|
content:
|
|
756
895
|
application/json:
|
|
757
896
|
schema:
|
|
758
897
|
$ref: "#/components/schemas/Package"
|
|
759
898
|
"401":
|
|
760
|
-
$ref: "#/components/responses/
|
|
899
|
+
$ref: "#/components/responses/Unauthorized"
|
|
761
900
|
"404":
|
|
762
|
-
$ref: "#/components/responses/
|
|
901
|
+
$ref: "#/components/responses/NotFound"
|
|
763
902
|
"500":
|
|
764
903
|
$ref: "#/components/responses/InternalServerError"
|
|
765
904
|
"501":
|
|
766
|
-
$ref: "#/components/responses/
|
|
905
|
+
$ref: "#/components/responses/NotImplemented"
|
|
767
906
|
patch:
|
|
768
907
|
tags:
|
|
769
908
|
- packages
|
|
770
909
|
operationId: update-package
|
|
771
|
-
summary:
|
|
910
|
+
summary: Update package configuration
|
|
911
|
+
description: |
|
|
912
|
+
Updates the configuration and metadata of an existing package. This allows you to
|
|
913
|
+
modify package settings, update the description, change the location, or update other
|
|
914
|
+
package-level properties. The package must exist and be accessible.
|
|
772
915
|
parameters:
|
|
773
916
|
- name: projectName
|
|
774
917
|
in: path
|
|
775
|
-
description: Name of project
|
|
918
|
+
description: Name of the project
|
|
776
919
|
required: true
|
|
777
920
|
schema:
|
|
778
|
-
|
|
921
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
779
922
|
- name: packageName
|
|
780
923
|
in: path
|
|
781
|
-
description: Name of package
|
|
924
|
+
description: Name of the package
|
|
782
925
|
required: true
|
|
783
926
|
schema:
|
|
784
|
-
|
|
927
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
785
928
|
requestBody:
|
|
786
929
|
required: true
|
|
787
930
|
content:
|
|
788
931
|
application/json:
|
|
789
932
|
schema:
|
|
790
|
-
|
|
791
|
-
items:
|
|
792
|
-
$ref: '#/components/schemas/Package'
|
|
933
|
+
$ref: "#/components/schemas/Package"
|
|
793
934
|
responses:
|
|
794
935
|
"200":
|
|
795
936
|
description: Returns the package updated
|
|
@@ -798,31 +939,35 @@ paths:
|
|
|
798
939
|
schema:
|
|
799
940
|
$ref: "#/components/schemas/Package"
|
|
800
941
|
"401":
|
|
801
|
-
$ref: "#/components/responses/
|
|
942
|
+
$ref: "#/components/responses/Unauthorized"
|
|
802
943
|
"404":
|
|
803
|
-
$ref: "#/components/responses/
|
|
944
|
+
$ref: "#/components/responses/NotFound"
|
|
804
945
|
"500":
|
|
805
946
|
$ref: "#/components/responses/InternalServerError"
|
|
806
947
|
"501":
|
|
807
|
-
$ref: "#/components/responses/
|
|
948
|
+
$ref: "#/components/responses/NotImplemented"
|
|
808
949
|
delete:
|
|
809
950
|
tags:
|
|
810
951
|
- packages
|
|
811
952
|
operationId: delete-package
|
|
812
|
-
summary:
|
|
953
|
+
summary: Delete a package
|
|
954
|
+
description: |
|
|
955
|
+
Permanently deletes a package and all its associated resources including models,
|
|
956
|
+
notebooks, databases, and metadata. This operation cannot be undone, so use with caution.
|
|
957
|
+
The package must exist and be accessible for deletion.
|
|
813
958
|
parameters:
|
|
814
959
|
- name: projectName
|
|
815
960
|
in: path
|
|
816
|
-
description: Name of project
|
|
961
|
+
description: Name of the project
|
|
817
962
|
required: true
|
|
818
963
|
schema:
|
|
819
|
-
|
|
964
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
820
965
|
- name: packageName
|
|
821
966
|
in: path
|
|
822
|
-
description: Name of package
|
|
967
|
+
description: Name of the package
|
|
823
968
|
required: true
|
|
824
969
|
schema:
|
|
825
|
-
|
|
970
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
826
971
|
responses:
|
|
827
972
|
"200":
|
|
828
973
|
description: Returns the package deleted
|
|
@@ -831,42 +976,46 @@ paths:
|
|
|
831
976
|
schema:
|
|
832
977
|
$ref: "#/components/schemas/Package"
|
|
833
978
|
"401":
|
|
834
|
-
$ref: "#/components/responses/
|
|
979
|
+
$ref: "#/components/responses/Unauthorized"
|
|
835
980
|
"404":
|
|
836
|
-
$ref: "#/components/responses/
|
|
981
|
+
$ref: "#/components/responses/NotFound"
|
|
837
982
|
"500":
|
|
838
983
|
$ref: "#/components/responses/InternalServerError"
|
|
839
984
|
"501":
|
|
840
|
-
$ref: "#/components/responses/
|
|
985
|
+
$ref: "#/components/responses/NotImplemented"
|
|
841
986
|
|
|
842
987
|
/projects/{projectName}/packages/{packageName}/models:
|
|
843
988
|
get:
|
|
844
989
|
tags:
|
|
845
990
|
- models
|
|
846
991
|
operationId: list-models
|
|
847
|
-
summary:
|
|
992
|
+
summary: List package models
|
|
993
|
+
description: |
|
|
994
|
+
Retrieves a list of all Malloy models within the specified package. Each model entry
|
|
995
|
+
includes the relative path, package name, and any compilation errors. This endpoint
|
|
996
|
+
is useful for discovering available models and checking their status.
|
|
848
997
|
parameters:
|
|
849
998
|
- name: projectName
|
|
850
999
|
in: path
|
|
851
|
-
description: Name of project
|
|
1000
|
+
description: Name of the project
|
|
852
1001
|
required: true
|
|
853
1002
|
schema:
|
|
854
|
-
|
|
1003
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
855
1004
|
- name: packageName
|
|
856
1005
|
in: path
|
|
857
|
-
description: Name of package
|
|
1006
|
+
description: Name of the package
|
|
858
1007
|
required: true
|
|
859
1008
|
schema:
|
|
860
|
-
|
|
1009
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
861
1010
|
- name: versionId
|
|
862
1011
|
in: query
|
|
863
|
-
description: Version
|
|
1012
|
+
description: Version identifier for the package
|
|
864
1013
|
required: false
|
|
865
1014
|
schema:
|
|
866
|
-
|
|
1015
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
867
1016
|
responses:
|
|
868
1017
|
"200":
|
|
869
|
-
description: A list of
|
|
1018
|
+
description: A list of models in the package
|
|
870
1019
|
content:
|
|
871
1020
|
application/json:
|
|
872
1021
|
schema:
|
|
@@ -874,91 +1023,99 @@ paths:
|
|
|
874
1023
|
items:
|
|
875
1024
|
$ref: "#/components/schemas/Model"
|
|
876
1025
|
"401":
|
|
877
|
-
$ref: "#/components/responses/
|
|
1026
|
+
$ref: "#/components/responses/Unauthorized"
|
|
878
1027
|
"404":
|
|
879
|
-
$ref: "#/components/responses/
|
|
1028
|
+
$ref: "#/components/responses/NotFound"
|
|
880
1029
|
"500":
|
|
881
1030
|
$ref: "#/components/responses/InternalServerError"
|
|
882
1031
|
"501":
|
|
883
|
-
$ref: "#/components/responses/
|
|
1032
|
+
$ref: "#/components/responses/NotImplemented"
|
|
884
1033
|
|
|
885
1034
|
/projects/{projectName}/packages/{packageName}/models/{path}:
|
|
886
1035
|
get:
|
|
887
1036
|
tags:
|
|
888
1037
|
- models
|
|
889
1038
|
operationId: get-model
|
|
890
|
-
summary:
|
|
1039
|
+
summary: Get compiled Malloy model
|
|
1040
|
+
description: |
|
|
1041
|
+
Retrieves a compiled Malloy model with its source information, queries, and metadata.
|
|
1042
|
+
The model is compiled using the specified version of the Malloy compiler. This endpoint
|
|
1043
|
+
provides access to the model's structure, sources, and named queries for use in applications.
|
|
891
1044
|
parameters:
|
|
892
1045
|
- name: projectName
|
|
893
1046
|
in: path
|
|
894
|
-
description: Name of project
|
|
1047
|
+
description: Name of the project
|
|
895
1048
|
required: true
|
|
896
1049
|
schema:
|
|
897
|
-
|
|
1050
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
898
1051
|
- name: packageName
|
|
899
1052
|
in: path
|
|
900
|
-
description: Name of package
|
|
1053
|
+
description: Name of the package
|
|
901
1054
|
required: true
|
|
902
1055
|
schema:
|
|
903
1056
|
type: string
|
|
904
1057
|
- name: path
|
|
905
1058
|
in: path
|
|
906
|
-
description: Path to model
|
|
1059
|
+
description: Path to the model within the package
|
|
907
1060
|
required: true
|
|
908
1061
|
schema:
|
|
909
|
-
|
|
1062
|
+
$ref: "#/components/schemas/PathPattern"
|
|
910
1063
|
- name: versionId
|
|
911
1064
|
in: query
|
|
912
|
-
description: Version
|
|
1065
|
+
description: Version identifier for the package
|
|
913
1066
|
required: false
|
|
914
1067
|
schema:
|
|
915
|
-
|
|
1068
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
916
1069
|
responses:
|
|
917
1070
|
"200":
|
|
918
|
-
description:
|
|
1071
|
+
description: Compiled Malloy model
|
|
919
1072
|
content:
|
|
920
1073
|
"application/json":
|
|
921
1074
|
schema:
|
|
922
1075
|
$ref: "#/components/schemas/CompiledModel"
|
|
923
1076
|
"401":
|
|
924
|
-
$ref: "#/components/responses/
|
|
1077
|
+
$ref: "#/components/responses/Unauthorized"
|
|
925
1078
|
"404":
|
|
926
|
-
$ref: "#/components/responses/
|
|
1079
|
+
$ref: "#/components/responses/NotFound"
|
|
927
1080
|
"424":
|
|
928
1081
|
$ref: "#/components/responses/ModelCompilationError"
|
|
929
1082
|
"500":
|
|
930
1083
|
$ref: "#/components/responses/InternalServerError"
|
|
931
1084
|
"501":
|
|
932
|
-
$ref: "#/components/responses/
|
|
1085
|
+
$ref: "#/components/responses/NotImplemented"
|
|
933
1086
|
|
|
934
1087
|
/projects/{projectName}/packages/{packageName}/notebooks:
|
|
935
1088
|
get:
|
|
936
1089
|
tags:
|
|
937
1090
|
- notebooks
|
|
938
1091
|
operationId: list-notebooks
|
|
939
|
-
summary:
|
|
1092
|
+
summary: List package notebooks
|
|
1093
|
+
description: |
|
|
1094
|
+
Retrieves a list of all Malloy notebooks within the specified package. Each notebook entry
|
|
1095
|
+
includes the relative path, package name, and any compilation errors. This endpoint
|
|
1096
|
+
is useful for discovering available notebooks and checking their status.
|
|
940
1097
|
parameters:
|
|
941
1098
|
- name: projectName
|
|
942
1099
|
in: path
|
|
943
|
-
description: Name of project
|
|
1100
|
+
description: Name of the project
|
|
944
1101
|
required: true
|
|
945
1102
|
schema:
|
|
946
|
-
|
|
1103
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
947
1104
|
- name: packageName
|
|
948
1105
|
in: path
|
|
949
|
-
description: Name of package
|
|
1106
|
+
description: Name of the package
|
|
950
1107
|
required: true
|
|
951
1108
|
schema:
|
|
952
|
-
|
|
1109
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
953
1110
|
- name: versionId
|
|
954
1111
|
in: query
|
|
955
|
-
description: Version
|
|
1112
|
+
description: Version identifier for the package
|
|
956
1113
|
required: false
|
|
957
1114
|
schema:
|
|
958
|
-
|
|
1115
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
959
1116
|
responses:
|
|
960
1117
|
"200":
|
|
961
|
-
description: A list of
|
|
1118
|
+
description: A list of models in the package
|
|
962
1119
|
content:
|
|
963
1120
|
application/json:
|
|
964
1121
|
schema:
|
|
@@ -966,45 +1123,49 @@ paths:
|
|
|
966
1123
|
items:
|
|
967
1124
|
$ref: "#/components/schemas/Notebook"
|
|
968
1125
|
"401":
|
|
969
|
-
$ref: "#/components/responses/
|
|
1126
|
+
$ref: "#/components/responses/Unauthorized"
|
|
970
1127
|
"404":
|
|
971
|
-
$ref: "#/components/responses/
|
|
1128
|
+
$ref: "#/components/responses/NotFound"
|
|
972
1129
|
"500":
|
|
973
1130
|
$ref: "#/components/responses/InternalServerError"
|
|
974
1131
|
"501":
|
|
975
|
-
$ref: "#/components/responses/
|
|
1132
|
+
$ref: "#/components/responses/NotImplemented"
|
|
976
1133
|
|
|
977
1134
|
/projects/{projectName}/packages/{packageName}/notebooks/{path}:
|
|
978
1135
|
get:
|
|
979
1136
|
tags:
|
|
980
1137
|
- notebooks
|
|
981
1138
|
operationId: get-notebook
|
|
982
|
-
summary:
|
|
1139
|
+
summary: Get compiled Malloy notebook
|
|
1140
|
+
description: |
|
|
1141
|
+
Retrieves a compiled Malloy notebook with its cells, results, and metadata. The notebook
|
|
1142
|
+
is compiled using the specified version of the Malloy compiler. This endpoint provides
|
|
1143
|
+
access to the notebook's structure, cells, and execution results for use in applications.
|
|
983
1144
|
parameters:
|
|
984
1145
|
- name: projectName
|
|
985
1146
|
in: path
|
|
986
|
-
description: Name of project
|
|
1147
|
+
description: Name of the project
|
|
987
1148
|
required: true
|
|
988
1149
|
schema:
|
|
989
|
-
|
|
1150
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
990
1151
|
- name: packageName
|
|
991
1152
|
in: path
|
|
992
|
-
description: Name of package
|
|
1153
|
+
description: Name of the package
|
|
993
1154
|
required: true
|
|
994
1155
|
schema:
|
|
995
1156
|
type: string
|
|
996
1157
|
- name: path
|
|
997
1158
|
in: path
|
|
998
|
-
description: Path to notebook
|
|
1159
|
+
description: Path to notebook within the package.
|
|
999
1160
|
required: true
|
|
1000
1161
|
schema:
|
|
1001
1162
|
type: string
|
|
1002
1163
|
- name: versionId
|
|
1003
1164
|
in: query
|
|
1004
|
-
description: Version
|
|
1165
|
+
description: Version identifier for the package
|
|
1005
1166
|
required: false
|
|
1006
1167
|
schema:
|
|
1007
|
-
|
|
1168
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
1008
1169
|
responses:
|
|
1009
1170
|
"200":
|
|
1010
1171
|
description: A Malloy notebook.
|
|
@@ -1013,42 +1174,47 @@ paths:
|
|
|
1013
1174
|
schema:
|
|
1014
1175
|
$ref: "#/components/schemas/CompiledNotebook"
|
|
1015
1176
|
"401":
|
|
1016
|
-
$ref: "#/components/responses/
|
|
1177
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1017
1178
|
"404":
|
|
1018
|
-
$ref: "#/components/responses/
|
|
1179
|
+
$ref: "#/components/responses/NotFound"
|
|
1019
1180
|
"500":
|
|
1020
1181
|
$ref: "#/components/responses/InternalServerError"
|
|
1021
1182
|
"501":
|
|
1022
|
-
$ref: "#/components/responses/
|
|
1183
|
+
$ref: "#/components/responses/NotImplemented"
|
|
1023
1184
|
|
|
1024
1185
|
/projects/{projectName}/packages/{packageName}/queryResults/{path}:
|
|
1025
1186
|
get:
|
|
1026
1187
|
tags:
|
|
1027
1188
|
- queryresults
|
|
1028
1189
|
operationId: execute-query
|
|
1029
|
-
summary:
|
|
1190
|
+
summary: Execute Malloy query
|
|
1191
|
+
description: |
|
|
1192
|
+
Executes a Malloy query against a model and returns the results. The query can be specified
|
|
1193
|
+
as a raw Malloy query string or by referencing a named query within the model. This endpoint
|
|
1194
|
+
supports both ad-hoc queries and predefined model queries, making it flexible for various
|
|
1195
|
+
use cases including data exploration, reporting, and application integration.
|
|
1030
1196
|
parameters:
|
|
1031
1197
|
- name: projectName
|
|
1032
1198
|
in: path
|
|
1033
|
-
description: Name of project
|
|
1199
|
+
description: Name of the project
|
|
1034
1200
|
required: true
|
|
1035
1201
|
schema:
|
|
1036
|
-
|
|
1202
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1037
1203
|
- name: packageName
|
|
1038
1204
|
in: path
|
|
1039
|
-
description: Name of package
|
|
1205
|
+
description: Name of the package
|
|
1040
1206
|
required: true
|
|
1041
1207
|
schema:
|
|
1042
|
-
|
|
1208
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1043
1209
|
- name: path
|
|
1044
1210
|
in: path
|
|
1045
|
-
description: Path to model within the package
|
|
1211
|
+
description: Path to the model within the package
|
|
1046
1212
|
required: true
|
|
1047
1213
|
schema:
|
|
1048
|
-
|
|
1214
|
+
$ref: "#/components/schemas/PathPattern"
|
|
1049
1215
|
- in: query
|
|
1050
1216
|
name: query
|
|
1051
|
-
description: Query string to execute on the model.
|
|
1217
|
+
description: Query string to execute on the model. If the query parameter is set, the queryName parameter must be empty.
|
|
1052
1218
|
required: false
|
|
1053
1219
|
schema:
|
|
1054
1220
|
type: string
|
|
@@ -1060,7 +1226,7 @@ paths:
|
|
|
1060
1226
|
type: string
|
|
1061
1227
|
- in: query
|
|
1062
1228
|
name: queryName
|
|
1063
|
-
description: Name of a query to execute on a source in the model.
|
|
1229
|
+
description: Name of a query to execute on a source in the model. Requires the sourceName parameter is set. If the queryName parameter is set, the query parameter must be empty.
|
|
1064
1230
|
required: false
|
|
1065
1231
|
schema:
|
|
1066
1232
|
type: string
|
|
@@ -1072,50 +1238,54 @@ paths:
|
|
|
1072
1238
|
type: string
|
|
1073
1239
|
responses:
|
|
1074
1240
|
"200":
|
|
1075
|
-
description:
|
|
1241
|
+
description: Query execution results
|
|
1076
1242
|
content:
|
|
1077
1243
|
"application/json":
|
|
1078
1244
|
schema:
|
|
1079
1245
|
$ref: "#/components/schemas/QueryResult"
|
|
1080
1246
|
"400":
|
|
1081
|
-
$ref: "#/components/responses/
|
|
1247
|
+
$ref: "#/components/responses/BadRequest"
|
|
1082
1248
|
"401":
|
|
1083
|
-
$ref: "#/components/responses/
|
|
1249
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1084
1250
|
"404":
|
|
1085
|
-
$ref: "#/components/responses/
|
|
1251
|
+
$ref: "#/components/responses/NotFound"
|
|
1086
1252
|
"500":
|
|
1087
1253
|
$ref: "#/components/responses/InternalServerError"
|
|
1088
1254
|
"501":
|
|
1089
|
-
$ref: "#/components/responses/
|
|
1255
|
+
$ref: "#/components/responses/NotImplemented"
|
|
1090
1256
|
|
|
1091
1257
|
/projects/{projectName}/packages/{packageName}/databases:
|
|
1092
1258
|
get:
|
|
1093
1259
|
tags:
|
|
1094
1260
|
- databases
|
|
1095
1261
|
operationId: list-databases
|
|
1096
|
-
summary:
|
|
1262
|
+
summary: List embedded databases
|
|
1263
|
+
description: |
|
|
1264
|
+
Retrieves a list of all embedded databases within the specified package. These are typically
|
|
1265
|
+
DuckDB databases stored as .parquet files that provide local data storage for the package.
|
|
1266
|
+
Each database entry includes metadata about the database structure and content.
|
|
1097
1267
|
parameters:
|
|
1098
1268
|
- name: projectName
|
|
1099
1269
|
in: path
|
|
1100
|
-
description: Name of project
|
|
1270
|
+
description: Name of the project
|
|
1101
1271
|
required: true
|
|
1102
1272
|
schema:
|
|
1103
|
-
|
|
1273
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1104
1274
|
- name: packageName
|
|
1105
1275
|
in: path
|
|
1106
|
-
description: Name of package
|
|
1276
|
+
description: Name of the package
|
|
1107
1277
|
required: true
|
|
1108
1278
|
schema:
|
|
1109
|
-
|
|
1279
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1110
1280
|
- name: versionId
|
|
1111
1281
|
in: query
|
|
1112
|
-
description: Version
|
|
1282
|
+
description: Version identifier for the package
|
|
1113
1283
|
required: false
|
|
1114
1284
|
schema:
|
|
1115
|
-
|
|
1285
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
1116
1286
|
responses:
|
|
1117
1287
|
"200":
|
|
1118
|
-
description: A list of
|
|
1288
|
+
description: A list of embedded databases in the package
|
|
1119
1289
|
content:
|
|
1120
1290
|
application/json:
|
|
1121
1291
|
schema:
|
|
@@ -1123,42 +1293,46 @@ paths:
|
|
|
1123
1293
|
items:
|
|
1124
1294
|
$ref: "#/components/schemas/Database"
|
|
1125
1295
|
"401":
|
|
1126
|
-
$ref: "#/components/responses/
|
|
1296
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1127
1297
|
"404":
|
|
1128
|
-
$ref: "#/components/responses/
|
|
1298
|
+
$ref: "#/components/responses/NotFound"
|
|
1129
1299
|
"500":
|
|
1130
1300
|
$ref: "#/components/responses/InternalServerError"
|
|
1131
1301
|
"501":
|
|
1132
|
-
$ref: "#/components/responses/
|
|
1302
|
+
$ref: "#/components/responses/NotImplemented"
|
|
1133
1303
|
|
|
1134
1304
|
/projects/{projectName}/packages/{packageName}/schedules:
|
|
1135
1305
|
get:
|
|
1136
1306
|
tags:
|
|
1137
1307
|
- schedules
|
|
1138
1308
|
operationId: list-schedules
|
|
1139
|
-
summary:
|
|
1309
|
+
summary: List package schedules
|
|
1310
|
+
description: |
|
|
1311
|
+
Retrieves a list of all scheduled tasks associated with the specified package. These
|
|
1312
|
+
schedules define automated operations such as data refresh, report generation, or other
|
|
1313
|
+
recurring tasks. Each schedule includes timing information and execution status.
|
|
1140
1314
|
parameters:
|
|
1141
1315
|
- name: projectName
|
|
1142
1316
|
in: path
|
|
1143
|
-
description: Name of project
|
|
1317
|
+
description: Name of the project
|
|
1144
1318
|
required: true
|
|
1145
1319
|
schema:
|
|
1146
|
-
|
|
1320
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1147
1321
|
- name: packageName
|
|
1148
1322
|
in: path
|
|
1149
|
-
description: Name of package
|
|
1323
|
+
description: Name of the package
|
|
1150
1324
|
required: true
|
|
1151
1325
|
schema:
|
|
1152
|
-
|
|
1326
|
+
$ref: "#/components/schemas/IdentifierPattern"
|
|
1153
1327
|
- name: versionId
|
|
1154
1328
|
in: query
|
|
1155
|
-
description: Version
|
|
1329
|
+
description: Version identifier for the package
|
|
1156
1330
|
required: false
|
|
1157
1331
|
schema:
|
|
1158
|
-
|
|
1332
|
+
$ref: "#/components/schemas/VersionIdPattern"
|
|
1159
1333
|
responses:
|
|
1160
1334
|
"200":
|
|
1161
|
-
description: A list of
|
|
1335
|
+
description: A list of scheduled tasks
|
|
1162
1336
|
content:
|
|
1163
1337
|
application/json:
|
|
1164
1338
|
schema:
|
|
@@ -1166,20 +1340,24 @@ paths:
|
|
|
1166
1340
|
items:
|
|
1167
1341
|
$ref: "#/components/schemas/Schedule"
|
|
1168
1342
|
"401":
|
|
1169
|
-
$ref: "#/components/responses/
|
|
1343
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1170
1344
|
"404":
|
|
1171
|
-
$ref: "#/components/responses/
|
|
1345
|
+
$ref: "#/components/responses/NotFound"
|
|
1172
1346
|
"500":
|
|
1173
1347
|
$ref: "#/components/responses/InternalServerError"
|
|
1174
1348
|
"501":
|
|
1175
|
-
$ref: "#/components/responses/
|
|
1349
|
+
$ref: "#/components/responses/NotImplemented"
|
|
1176
1350
|
|
|
1177
1351
|
/watch-mode/status:
|
|
1178
1352
|
get:
|
|
1179
1353
|
tags:
|
|
1180
1354
|
- watch-mode
|
|
1181
1355
|
operationId: get-watch-status
|
|
1182
|
-
summary:
|
|
1356
|
+
summary: Get watch mode status
|
|
1357
|
+
description: |
|
|
1358
|
+
Retrieves the current status of the file watching system. This includes whether watch mode
|
|
1359
|
+
is enabled, which project is being watched, and the path being monitored. Useful for
|
|
1360
|
+
monitoring the development workflow and ensuring file changes are being detected.
|
|
1183
1361
|
responses:
|
|
1184
1362
|
"200":
|
|
1185
1363
|
description: The current watch mode status.
|
|
@@ -1188,7 +1366,7 @@ paths:
|
|
|
1188
1366
|
schema:
|
|
1189
1367
|
$ref: "#/components/schemas/WatchStatus"
|
|
1190
1368
|
"401":
|
|
1191
|
-
$ref: "#/components/responses/
|
|
1369
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1192
1370
|
"500":
|
|
1193
1371
|
$ref: "#/components/responses/InternalServerError"
|
|
1194
1372
|
|
|
@@ -1197,7 +1375,11 @@ paths:
|
|
|
1197
1375
|
tags:
|
|
1198
1376
|
- watch-mode
|
|
1199
1377
|
operationId: start-watching
|
|
1200
|
-
summary:
|
|
1378
|
+
summary: Start file watching
|
|
1379
|
+
description: |
|
|
1380
|
+
Initiates file watching for the specified project. This enables real-time monitoring of
|
|
1381
|
+
file changes within the project directory, allowing for automatic reloading and updates
|
|
1382
|
+
during development. Only one project can be watched at a time.
|
|
1201
1383
|
requestBody:
|
|
1202
1384
|
required: true
|
|
1203
1385
|
content:
|
|
@@ -1208,7 +1390,7 @@ paths:
|
|
|
1208
1390
|
"200":
|
|
1209
1391
|
description: Watch mode started successfully.
|
|
1210
1392
|
"401":
|
|
1211
|
-
$ref: "#/components/responses/
|
|
1393
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1212
1394
|
"500":
|
|
1213
1395
|
$ref: "#/components/responses/InternalServerError"
|
|
1214
1396
|
|
|
@@ -1217,296 +1399,325 @@ paths:
|
|
|
1217
1399
|
tags:
|
|
1218
1400
|
- watch-mode
|
|
1219
1401
|
operationId: stop-watching
|
|
1220
|
-
summary:
|
|
1402
|
+
summary: Stop file watching
|
|
1403
|
+
description: |
|
|
1404
|
+
Stops the current file watching session. This disables real-time monitoring of file changes
|
|
1405
|
+
and releases system resources. Use this when development is complete or when switching
|
|
1406
|
+
to a different project.
|
|
1221
1407
|
responses:
|
|
1222
1408
|
"200":
|
|
1223
1409
|
description: Watch mode stopped successfully.
|
|
1224
1410
|
"401":
|
|
1225
|
-
$ref: "#/components/responses/
|
|
1411
|
+
$ref: "#/components/responses/Unauthorized"
|
|
1226
1412
|
"500":
|
|
1227
1413
|
$ref: "#/components/responses/InternalServerError"
|
|
1228
1414
|
|
|
1229
1415
|
components:
|
|
1230
1416
|
responses:
|
|
1231
|
-
|
|
1232
|
-
description: The
|
|
1417
|
+
BadRequest:
|
|
1418
|
+
description: The request was malformed or cannot be performed given the current state of the system
|
|
1233
1419
|
content:
|
|
1234
1420
|
application/json:
|
|
1235
1421
|
schema:
|
|
1236
1422
|
$ref: "#/components/schemas/Error"
|
|
1237
|
-
|
|
1238
|
-
description:
|
|
1423
|
+
Unauthorized:
|
|
1424
|
+
description: Unauthorized - authentication required
|
|
1239
1425
|
content:
|
|
1240
1426
|
application/json:
|
|
1241
1427
|
schema:
|
|
1242
1428
|
$ref: "#/components/schemas/Error"
|
|
1243
|
-
|
|
1244
|
-
description:
|
|
1429
|
+
Forbidden:
|
|
1430
|
+
description: Forbidden - insufficient permissions to perform the operation
|
|
1245
1431
|
content:
|
|
1246
1432
|
application/json:
|
|
1247
1433
|
schema:
|
|
1248
1434
|
$ref: "#/components/schemas/Error"
|
|
1249
|
-
|
|
1250
|
-
description:
|
|
1435
|
+
NotFound:
|
|
1436
|
+
description: The specified resource was not found
|
|
1251
1437
|
content:
|
|
1252
1438
|
application/json:
|
|
1253
1439
|
schema:
|
|
1254
1440
|
$ref: "#/components/schemas/Error"
|
|
1255
|
-
|
|
1256
|
-
description:
|
|
1441
|
+
InternalServerError:
|
|
1442
|
+
description: The server encountered an internal error
|
|
1443
|
+
content:
|
|
1444
|
+
application/json:
|
|
1445
|
+
schema:
|
|
1446
|
+
$ref: "#/components/schemas/Error"
|
|
1447
|
+
NotImplemented:
|
|
1448
|
+
description: The requested operation is not implemented
|
|
1257
1449
|
content:
|
|
1258
1450
|
application/json:
|
|
1259
1451
|
schema:
|
|
1260
1452
|
$ref: "#/components/schemas/Error"
|
|
1261
1453
|
ModelCompilationError:
|
|
1262
|
-
description: Model compilation
|
|
1454
|
+
description: Model compilation failed due to syntax or semantic errors
|
|
1263
1455
|
content:
|
|
1264
1456
|
application/json:
|
|
1265
1457
|
schema:
|
|
1266
1458
|
$ref: "#/components/schemas/Error"
|
|
1267
1459
|
|
|
1268
1460
|
schemas:
|
|
1461
|
+
IdentifierPattern:
|
|
1462
|
+
type: string
|
|
1463
|
+
pattern: "^[a-zA-Z0-9_-]+$"
|
|
1464
|
+
description: Standard identifier pattern for resource names
|
|
1465
|
+
|
|
1466
|
+
VersionIdPattern:
|
|
1467
|
+
type: string
|
|
1468
|
+
pattern: "^[a-zA-Z0-9_.-]+$"
|
|
1469
|
+
description: Version identifier pattern supporting dots and dashes
|
|
1470
|
+
|
|
1471
|
+
PathPattern:
|
|
1472
|
+
type: string
|
|
1473
|
+
pattern: "^[a-zA-Z0-9_/.-]+$"
|
|
1474
|
+
description: Path pattern supporting slashes, dots, and dashes
|
|
1475
|
+
|
|
1269
1476
|
ServerStatus:
|
|
1270
1477
|
type: object
|
|
1478
|
+
description: Current server status and health information
|
|
1271
1479
|
properties:
|
|
1272
1480
|
timestamp:
|
|
1273
1481
|
type: number
|
|
1482
|
+
description: Unix timestamp of the status check
|
|
1274
1483
|
projects:
|
|
1275
1484
|
type: array
|
|
1485
|
+
description: List of available projects
|
|
1276
1486
|
items:
|
|
1277
|
-
$ref:
|
|
1487
|
+
$ref: "#/components/schemas/Project"
|
|
1278
1488
|
initialized:
|
|
1279
1489
|
type: boolean
|
|
1280
|
-
description: Whether the server is initialized
|
|
1490
|
+
description: Whether the server is fully initialized and ready to serve requests
|
|
1281
1491
|
|
|
1282
1492
|
Project:
|
|
1283
1493
|
type: object
|
|
1494
|
+
description: Represents a Malloy project containing packages, connections, and other resources
|
|
1284
1495
|
properties:
|
|
1285
1496
|
resource:
|
|
1286
1497
|
type: string
|
|
1287
|
-
description: Resource path to the project
|
|
1498
|
+
description: Resource path to the project
|
|
1288
1499
|
name:
|
|
1289
1500
|
type: string
|
|
1290
|
-
description: Project name
|
|
1501
|
+
description: Project name
|
|
1291
1502
|
readme:
|
|
1292
1503
|
type: string
|
|
1293
|
-
description: Project
|
|
1504
|
+
description: Project README content
|
|
1294
1505
|
location:
|
|
1295
1506
|
type: string
|
|
1296
|
-
description: Project location,
|
|
1507
|
+
description: Project location, can be an absolute path or URI (e.g. github, s3, gcs, etc.)
|
|
1297
1508
|
connections:
|
|
1298
1509
|
type: array
|
|
1510
|
+
description: List of database connections configured for this project
|
|
1299
1511
|
items:
|
|
1300
|
-
$ref:
|
|
1512
|
+
$ref: "#/components/schemas/Connection"
|
|
1301
1513
|
packages:
|
|
1302
1514
|
type: array
|
|
1515
|
+
description: List of Malloy packages in this project
|
|
1303
1516
|
items:
|
|
1304
|
-
$ref:
|
|
1517
|
+
$ref: "#/components/schemas/Package"
|
|
1305
1518
|
|
|
1306
1519
|
Package:
|
|
1307
1520
|
type: object
|
|
1521
|
+
description: Represents a Malloy package containing models, notebooks, and embedded databases
|
|
1308
1522
|
properties:
|
|
1309
1523
|
resource:
|
|
1310
1524
|
type: string
|
|
1311
|
-
description: Resource path to the package
|
|
1525
|
+
description: Resource path to the package
|
|
1312
1526
|
name:
|
|
1313
1527
|
type: string
|
|
1314
|
-
description: Package name
|
|
1528
|
+
description: Package name
|
|
1315
1529
|
description:
|
|
1316
1530
|
type: string
|
|
1317
|
-
description: Package description
|
|
1531
|
+
description: Package description
|
|
1318
1532
|
location:
|
|
1319
1533
|
type: string
|
|
1320
|
-
description: Package location,
|
|
1534
|
+
description: Package location, can be an absolute path or URI (e.g. github, s3, gcs, etc.)
|
|
1321
1535
|
|
|
1322
1536
|
Model:
|
|
1323
1537
|
type: object
|
|
1324
|
-
description: Malloy
|
|
1538
|
+
description: Malloy model metadata and status information
|
|
1325
1539
|
properties:
|
|
1326
1540
|
resource:
|
|
1327
1541
|
type: string
|
|
1328
|
-
description: Resource path to the model
|
|
1542
|
+
description: Resource path to the model
|
|
1329
1543
|
packageName:
|
|
1330
1544
|
type: string
|
|
1331
|
-
description:
|
|
1545
|
+
description: Name of the package containing this model
|
|
1332
1546
|
path:
|
|
1333
1547
|
type: string
|
|
1334
|
-
description:
|
|
1548
|
+
description: Relative path to the model file within its package directory
|
|
1335
1549
|
error:
|
|
1336
1550
|
type: string
|
|
1337
|
-
description: Error message
|
|
1551
|
+
description: Error message if the model failed to compile or load
|
|
1338
1552
|
|
|
1339
1553
|
Notebook:
|
|
1340
1554
|
type: object
|
|
1341
|
-
description: Malloy
|
|
1555
|
+
description: Malloy notebook metadata and status information
|
|
1342
1556
|
properties:
|
|
1343
1557
|
resource:
|
|
1344
1558
|
type: string
|
|
1345
|
-
description: Resource path to the notebook
|
|
1559
|
+
description: Resource path to the notebook
|
|
1346
1560
|
packageName:
|
|
1347
1561
|
type: string
|
|
1348
|
-
description:
|
|
1562
|
+
description: Name of the package containing this notebook
|
|
1349
1563
|
path:
|
|
1350
1564
|
type: string
|
|
1351
|
-
description:
|
|
1565
|
+
description: Relative path to the notebook file within its package directory
|
|
1352
1566
|
error:
|
|
1353
1567
|
type: string
|
|
1354
|
-
description: Error message
|
|
1568
|
+
description: Error message if the notebook failed to compile or load
|
|
1355
1569
|
|
|
1356
1570
|
CompiledNotebook:
|
|
1357
1571
|
type: object
|
|
1358
|
-
description: Malloy notebook
|
|
1572
|
+
description: Compiled Malloy notebook with cells, results, and execution data
|
|
1359
1573
|
properties:
|
|
1360
1574
|
resource:
|
|
1361
1575
|
type: string
|
|
1362
|
-
description: Resource path to the notebook
|
|
1576
|
+
description: Resource path to the notebook
|
|
1363
1577
|
packageName:
|
|
1364
1578
|
type: string
|
|
1365
|
-
description:
|
|
1579
|
+
description: Name of the package containing this notebook
|
|
1366
1580
|
path:
|
|
1367
1581
|
type: string
|
|
1368
|
-
description:
|
|
1582
|
+
description: Relative path to the notebook file within its package directory
|
|
1369
1583
|
malloyVersion:
|
|
1370
1584
|
type: string
|
|
1371
|
-
description: Version of the Malloy compiler
|
|
1585
|
+
description: Version of the Malloy compiler used to generate the notebook data
|
|
1372
1586
|
notebookCells:
|
|
1373
1587
|
type: array
|
|
1374
|
-
description: Array of notebook cells
|
|
1588
|
+
description: Array of notebook cells containing code, markdown, and execution results
|
|
1375
1589
|
items:
|
|
1376
1590
|
$ref: "#/components/schemas/NotebookCell"
|
|
1377
1591
|
|
|
1378
1592
|
CompiledModel:
|
|
1379
1593
|
type: object
|
|
1380
|
-
description: Malloy model
|
|
1594
|
+
description: Compiled Malloy model with sources, queries, and metadata
|
|
1381
1595
|
properties:
|
|
1382
1596
|
resource:
|
|
1383
1597
|
type: string
|
|
1384
|
-
description: Resource path to the model
|
|
1598
|
+
description: Resource path to the model
|
|
1385
1599
|
packageName:
|
|
1386
1600
|
type: string
|
|
1387
|
-
description:
|
|
1601
|
+
description: Name of the package containing this model
|
|
1388
1602
|
path:
|
|
1389
1603
|
type: string
|
|
1390
|
-
description:
|
|
1604
|
+
description: Relative path to the model file within its package directory
|
|
1391
1605
|
malloyVersion:
|
|
1392
1606
|
type: string
|
|
1393
|
-
description: Version of the Malloy compiler
|
|
1607
|
+
description: Version of the Malloy compiler used to generate the model data
|
|
1394
1608
|
modelInfo:
|
|
1395
1609
|
type: string
|
|
1396
|
-
description: JSON string
|
|
1610
|
+
description: JSON string containing model metadata and structure information
|
|
1397
1611
|
sourceInfos:
|
|
1398
1612
|
type: array
|
|
1399
|
-
description: Array of JSON
|
|
1613
|
+
description: Array of JSON strings containing source information for each data source
|
|
1400
1614
|
items:
|
|
1401
1615
|
type: string
|
|
1402
1616
|
queries:
|
|
1403
1617
|
type: array
|
|
1404
|
-
|
|
1618
|
+
description: Array of named queries defined in the model
|
|
1405
1619
|
items:
|
|
1406
1620
|
$ref: "#/components/schemas/Query"
|
|
1407
1621
|
|
|
1408
1622
|
View:
|
|
1409
1623
|
type: object
|
|
1410
|
-
description: Named model view
|
|
1624
|
+
description: Named model view definition
|
|
1411
1625
|
properties:
|
|
1412
1626
|
name:
|
|
1413
1627
|
type: string
|
|
1414
|
-
description:
|
|
1628
|
+
description: Name of the view
|
|
1415
1629
|
annotations:
|
|
1416
1630
|
type: array
|
|
1417
|
-
description: Annotations attached to view
|
|
1631
|
+
description: Annotations attached to the view
|
|
1418
1632
|
items:
|
|
1419
1633
|
type: string
|
|
1420
1634
|
|
|
1421
1635
|
Query:
|
|
1422
1636
|
type: object
|
|
1423
|
-
description: Named model query
|
|
1637
|
+
description: Named model query definition
|
|
1424
1638
|
properties:
|
|
1425
1639
|
name:
|
|
1426
1640
|
type: string
|
|
1427
|
-
description:
|
|
1641
|
+
description: Name of the query
|
|
1428
1642
|
sourceName:
|
|
1429
1643
|
type: string
|
|
1430
|
-
description:
|
|
1644
|
+
description: Name of the source this query operates on
|
|
1431
1645
|
annotations:
|
|
1432
1646
|
type: array
|
|
1433
|
-
description: Annotations attached to query
|
|
1647
|
+
description: Annotations attached to the query
|
|
1434
1648
|
items:
|
|
1435
1649
|
type: string
|
|
1436
1650
|
|
|
1437
1651
|
NotebookCell:
|
|
1438
1652
|
type: object
|
|
1439
|
-
description:
|
|
1653
|
+
description: Individual cell within a Malloy notebook
|
|
1440
1654
|
properties:
|
|
1441
1655
|
type:
|
|
1442
1656
|
type: string
|
|
1443
1657
|
enum: ["markdown", "code"]
|
|
1444
|
-
description: Type of notebook cell
|
|
1658
|
+
description: Type of notebook cell
|
|
1445
1659
|
text:
|
|
1446
1660
|
type: string
|
|
1447
|
-
description: Text contents of the notebook cell
|
|
1661
|
+
description: Text contents of the notebook cell
|
|
1448
1662
|
result:
|
|
1449
1663
|
type: string
|
|
1450
|
-
description: JSON string
|
|
1664
|
+
description: JSON string containing the execution result for this cell
|
|
1451
1665
|
newSources:
|
|
1452
1666
|
type: array
|
|
1453
|
-
description:
|
|
1454
|
-
Array of JSON string of SourceInfo made available in the notebook cell. Only *new*
|
|
1455
|
-
SourceInfos are returned. The complete list of SourceInfos is available be concatenating the prior
|
|
1456
|
-
notebook cells. The SourceInfos are in the order they are made available in the notebook cell.
|
|
1667
|
+
description: Array of JSON strings containing SourceInfo objects made available in this cell
|
|
1457
1668
|
items:
|
|
1458
1669
|
type: string
|
|
1459
1670
|
|
|
1460
1671
|
QueryResult:
|
|
1461
1672
|
type: object
|
|
1462
|
-
description:
|
|
1673
|
+
description: Results from executing a Malloy query
|
|
1463
1674
|
properties:
|
|
1464
1675
|
result:
|
|
1465
1676
|
type: string
|
|
1466
|
-
description: JSON string
|
|
1677
|
+
description: JSON string containing the query results, metadata, and execution information
|
|
1467
1678
|
resource:
|
|
1468
1679
|
type: string
|
|
1469
|
-
description: Resource path to the query result
|
|
1680
|
+
description: Resource path to the query result
|
|
1470
1681
|
|
|
1471
1682
|
Database:
|
|
1472
1683
|
type: object
|
|
1473
|
-
description:
|
|
1684
|
+
description: Embedded database within a Malloy package
|
|
1474
1685
|
properties:
|
|
1475
1686
|
resource:
|
|
1476
1687
|
type: string
|
|
1477
|
-
description: Resource path to the database
|
|
1688
|
+
description: Resource path to the database
|
|
1478
1689
|
path:
|
|
1479
1690
|
type: string
|
|
1480
|
-
description:
|
|
1691
|
+
description: Relative path to the database file within its package directory
|
|
1481
1692
|
info:
|
|
1482
1693
|
$ref: "#/components/schemas/TableDescription"
|
|
1483
1694
|
type:
|
|
1484
1695
|
type: string
|
|
1696
|
+
description: Type of embedded database
|
|
1485
1697
|
enum: ["embedded", "materialized"]
|
|
1486
|
-
description: Type of database.
|
|
1487
1698
|
|
|
1488
1699
|
Schedule:
|
|
1489
1700
|
type: object
|
|
1490
|
-
description:
|
|
1701
|
+
description: Scheduled task configuration and status
|
|
1491
1702
|
properties:
|
|
1492
1703
|
resource:
|
|
1493
1704
|
type: string
|
|
1494
|
-
description: Resource in the package that the schedule is attached to
|
|
1705
|
+
description: Resource path in the package that the schedule is attached to
|
|
1495
1706
|
schedule:
|
|
1496
1707
|
type: string
|
|
1497
|
-
description: Schedule
|
|
1708
|
+
description: Schedule expression in cron format for executing the task
|
|
1498
1709
|
action:
|
|
1499
1710
|
type: string
|
|
1500
|
-
description: Action to execute
|
|
1711
|
+
description: Action to execute when the schedule triggers
|
|
1501
1712
|
connection:
|
|
1502
1713
|
type: string
|
|
1503
|
-
description:
|
|
1714
|
+
description: Name of the connection to perform the action on
|
|
1504
1715
|
lastRunTime:
|
|
1505
1716
|
type: number
|
|
1506
|
-
description:
|
|
1717
|
+
description: Unix timestamp in milliseconds of the last execution
|
|
1507
1718
|
lastRunStatus:
|
|
1508
1719
|
type: string
|
|
1509
|
-
description: Status of the last
|
|
1720
|
+
description: Status of the last execution
|
|
1510
1721
|
|
|
1511
1722
|
SchemaName:
|
|
1512
1723
|
description: A schema name in a Connection.
|
|
@@ -1527,14 +1738,17 @@ components:
|
|
|
1527
1738
|
|
|
1528
1739
|
Connection:
|
|
1529
1740
|
type: object
|
|
1741
|
+
description: Database connection configuration and metadata
|
|
1530
1742
|
properties:
|
|
1531
1743
|
resource:
|
|
1532
1744
|
type: string
|
|
1533
|
-
description: Resource path to the connection
|
|
1745
|
+
description: Resource path to the connection
|
|
1534
1746
|
name:
|
|
1535
1747
|
type: string
|
|
1748
|
+
description: Name of the connection
|
|
1536
1749
|
type:
|
|
1537
1750
|
type: string
|
|
1751
|
+
description: Type of database connection
|
|
1538
1752
|
enum: [postgres, bigquery, snowflake, trino, mysql]
|
|
1539
1753
|
attributes:
|
|
1540
1754
|
$ref: "#/components/schemas/ConnectionAttributes"
|
|
@@ -1551,95 +1765,138 @@ components:
|
|
|
1551
1765
|
|
|
1552
1766
|
ConnectionAttributes:
|
|
1553
1767
|
type: object
|
|
1768
|
+
description: Connection capabilities and configuration attributes
|
|
1554
1769
|
properties:
|
|
1555
1770
|
dialectName:
|
|
1556
1771
|
type: string
|
|
1772
|
+
description: SQL dialect name for the connection
|
|
1557
1773
|
isPool:
|
|
1558
1774
|
type: boolean
|
|
1775
|
+
description: Whether the connection uses connection pooling
|
|
1559
1776
|
canPersist:
|
|
1560
1777
|
type: boolean
|
|
1778
|
+
description: Whether the connection supports persistent storage operations
|
|
1561
1779
|
canStream:
|
|
1562
1780
|
type: boolean
|
|
1781
|
+
description: Whether the connection supports streaming query results
|
|
1563
1782
|
|
|
1564
1783
|
PostgresConnection:
|
|
1565
1784
|
type: object
|
|
1785
|
+
description: PostgreSQL database connection configuration
|
|
1566
1786
|
properties:
|
|
1567
1787
|
host:
|
|
1568
1788
|
type: string
|
|
1789
|
+
description: PostgreSQL server hostname or IP address
|
|
1569
1790
|
port:
|
|
1570
1791
|
type: integer
|
|
1792
|
+
description: PostgreSQL server port number
|
|
1571
1793
|
databaseName:
|
|
1572
1794
|
type: string
|
|
1795
|
+
description: Name of the PostgreSQL database
|
|
1573
1796
|
userName:
|
|
1574
1797
|
type: string
|
|
1798
|
+
description: PostgreSQL username for authentication
|
|
1575
1799
|
password:
|
|
1576
1800
|
type: string
|
|
1801
|
+
description: PostgreSQL password for authentication
|
|
1577
1802
|
connectionString:
|
|
1578
1803
|
type: string
|
|
1804
|
+
description: Complete PostgreSQL connection string (alternative to individual parameters)
|
|
1579
1805
|
|
|
1580
1806
|
MysqlConnection:
|
|
1581
1807
|
type: object
|
|
1808
|
+
description: MySQL database connection configuration
|
|
1582
1809
|
properties:
|
|
1583
1810
|
host:
|
|
1584
1811
|
type: string
|
|
1812
|
+
description: MySQL server hostname or IP address
|
|
1585
1813
|
port:
|
|
1586
1814
|
type: integer
|
|
1815
|
+
description: MySQL server port number
|
|
1587
1816
|
database:
|
|
1588
1817
|
type: string
|
|
1818
|
+
description: Name of the MySQL database
|
|
1589
1819
|
user:
|
|
1590
1820
|
type: string
|
|
1821
|
+
description: MySQL username for authentication
|
|
1591
1822
|
password:
|
|
1592
1823
|
type: string
|
|
1824
|
+
description: MySQL password for authentication
|
|
1593
1825
|
|
|
1594
1826
|
BigqueryConnection:
|
|
1595
1827
|
type: object
|
|
1828
|
+
description: Google BigQuery database connection configuration
|
|
1596
1829
|
properties:
|
|
1597
1830
|
defaultProjectId:
|
|
1598
1831
|
type: string
|
|
1832
|
+
description: Default BigQuery project ID for queries
|
|
1599
1833
|
billingProjectId:
|
|
1600
1834
|
type: string
|
|
1835
|
+
description: BigQuery project ID for billing purposes
|
|
1601
1836
|
location:
|
|
1602
1837
|
type: string
|
|
1838
|
+
description: BigQuery dataset location/region
|
|
1603
1839
|
serviceAccountKeyJson:
|
|
1604
1840
|
type: string
|
|
1841
|
+
description: JSON string containing Google Cloud service account credentials
|
|
1605
1842
|
maximumBytesBilled:
|
|
1606
1843
|
type: string
|
|
1844
|
+
description: Maximum bytes to bill for query execution (prevents runaway costs)
|
|
1607
1845
|
queryTimeoutMilliseconds:
|
|
1608
1846
|
type: string
|
|
1847
|
+
description: Query timeout in milliseconds
|
|
1609
1848
|
|
|
1610
1849
|
SnowflakeConnection:
|
|
1611
1850
|
type: object
|
|
1851
|
+
description: Snowflake database connection configuration
|
|
1612
1852
|
properties:
|
|
1613
1853
|
account:
|
|
1614
1854
|
type: string
|
|
1855
|
+
description: Snowflake account identifier
|
|
1615
1856
|
username:
|
|
1616
1857
|
type: string
|
|
1858
|
+
description: Snowflake username for authentication
|
|
1617
1859
|
password:
|
|
1618
1860
|
type: string
|
|
1861
|
+
description: Snowflake password for authentication
|
|
1619
1862
|
warehouse:
|
|
1620
1863
|
type: string
|
|
1864
|
+
description: Snowflake warehouse name
|
|
1621
1865
|
database:
|
|
1622
1866
|
type: string
|
|
1867
|
+
description: Snowflake database name
|
|
1623
1868
|
schema:
|
|
1624
1869
|
type: string
|
|
1870
|
+
description: Snowflake schema name
|
|
1871
|
+
role:
|
|
1872
|
+
type: string
|
|
1873
|
+
description: Snowflake role name
|
|
1625
1874
|
responseTimeoutMilliseconds:
|
|
1626
1875
|
type: integer
|
|
1876
|
+
description: Query response timeout in milliseconds
|
|
1627
1877
|
|
|
1628
1878
|
TrinoConnection:
|
|
1629
1879
|
type: object
|
|
1880
|
+
description: Trino database connection configuration
|
|
1630
1881
|
properties:
|
|
1631
1882
|
server:
|
|
1632
1883
|
type: string
|
|
1884
|
+
description: Trino server hostname or IP address
|
|
1633
1885
|
port:
|
|
1634
1886
|
type: number
|
|
1887
|
+
description: Trino server port number
|
|
1635
1888
|
catalog:
|
|
1636
1889
|
type: string
|
|
1890
|
+
description: Trino catalog name
|
|
1637
1891
|
schema:
|
|
1638
1892
|
type: string
|
|
1893
|
+
description: Trino schema name
|
|
1639
1894
|
user:
|
|
1640
1895
|
type: string
|
|
1896
|
+
description: Trino username for authentication
|
|
1641
1897
|
password:
|
|
1642
1898
|
type: string
|
|
1899
|
+
description: Trino password for authentication
|
|
1643
1900
|
|
|
1644
1901
|
SqlSource:
|
|
1645
1902
|
type: object
|
|
@@ -1647,7 +1904,7 @@ components:
|
|
|
1647
1904
|
resource:
|
|
1648
1905
|
type: string
|
|
1649
1906
|
description: Resource path to the sql source.
|
|
1650
|
-
# Pass source as an opaque JSON string that is malloyVersion
|
|
1907
|
+
# Pass source as an opaque JSON string that is malloyVersion dependent.
|
|
1651
1908
|
source:
|
|
1652
1909
|
type: string
|
|
1653
1910
|
|
|
@@ -1657,7 +1914,7 @@ components:
|
|
|
1657
1914
|
resource:
|
|
1658
1915
|
type: string
|
|
1659
1916
|
description: Resource path to the table source.
|
|
1660
|
-
# Pass source as an opaque JSON string that is malloyVersion
|
|
1917
|
+
# Pass source as an opaque JSON string that is malloyVersion dependent.
|
|
1661
1918
|
# TODO: Remove this once we update the Malloy Publisher connection.
|
|
1662
1919
|
source:
|
|
1663
1920
|
type: string
|
|
@@ -1673,7 +1930,7 @@ components:
|
|
|
1673
1930
|
resource:
|
|
1674
1931
|
type: string
|
|
1675
1932
|
description: Resource path to the temporary table.
|
|
1676
|
-
# Pass table as an opaque JSON string that is malloyVersion
|
|
1933
|
+
# Pass table as an opaque JSON string that is malloyVersion dependent.
|
|
1677
1934
|
table:
|
|
1678
1935
|
type: string
|
|
1679
1936
|
|
|
@@ -1683,68 +1940,83 @@ components:
|
|
|
1683
1940
|
resource:
|
|
1684
1941
|
type: string
|
|
1685
1942
|
description: Resource path to the query data.
|
|
1686
|
-
# Pass result as an opaque JSON string that is malloyVersion
|
|
1943
|
+
# Pass result as an opaque JSON string that is malloyVersion dependent.
|
|
1687
1944
|
data:
|
|
1688
1945
|
type: string
|
|
1689
1946
|
|
|
1690
1947
|
Error:
|
|
1691
1948
|
type: object
|
|
1949
|
+
description: Standard error response format
|
|
1692
1950
|
properties:
|
|
1693
|
-
code:
|
|
1694
|
-
type: integer
|
|
1695
1951
|
message:
|
|
1696
1952
|
type: string
|
|
1953
|
+
description: Human-readable error message describing what went wrong
|
|
1954
|
+
details:
|
|
1955
|
+
type: string
|
|
1956
|
+
description: Additional error details or context
|
|
1957
|
+
required:
|
|
1958
|
+
- message
|
|
1697
1959
|
|
|
1698
1960
|
Column:
|
|
1699
1961
|
type: object
|
|
1962
|
+
description: Database column definition
|
|
1700
1963
|
properties:
|
|
1701
1964
|
name:
|
|
1702
1965
|
type: string
|
|
1966
|
+
description: Name of the column
|
|
1703
1967
|
type:
|
|
1704
1968
|
type: string
|
|
1969
|
+
description: Data type of the column
|
|
1705
1970
|
|
|
1706
1971
|
TableDescription:
|
|
1707
1972
|
type: object
|
|
1973
|
+
description: Database table structure and metadata
|
|
1708
1974
|
properties:
|
|
1709
1975
|
name:
|
|
1710
1976
|
type: string
|
|
1977
|
+
description: Name of the table
|
|
1711
1978
|
rowCount:
|
|
1712
1979
|
type: integer
|
|
1980
|
+
description: Number of rows in the table
|
|
1713
1981
|
columns:
|
|
1714
1982
|
type: array
|
|
1983
|
+
description: List of columns in the table
|
|
1715
1984
|
items:
|
|
1716
1985
|
$ref: "#/components/schemas/Column"
|
|
1717
1986
|
|
|
1718
1987
|
WatchStatus:
|
|
1719
1988
|
type: object
|
|
1720
|
-
description: Current
|
|
1989
|
+
description: Current file watching status and configuration
|
|
1721
1990
|
properties:
|
|
1722
1991
|
enabled:
|
|
1723
1992
|
type: boolean
|
|
1724
|
-
description: Whether
|
|
1993
|
+
description: Whether file watching is currently active
|
|
1725
1994
|
projectName:
|
|
1726
1995
|
type: string
|
|
1727
|
-
description: Name of the project being watched
|
|
1996
|
+
description: Name of the project being watched for file changes
|
|
1728
1997
|
watchingPath:
|
|
1729
1998
|
type: string
|
|
1730
1999
|
nullable: true
|
|
1731
|
-
description: The path being
|
|
2000
|
+
description: The file system path being monitored for changes, null if not watching
|
|
1732
2001
|
|
|
1733
2002
|
StartWatchRequest:
|
|
1734
2003
|
type: object
|
|
1735
|
-
description: Request to start watching a project
|
|
2004
|
+
description: Request to start file watching for a project
|
|
1736
2005
|
properties:
|
|
1737
2006
|
projectName:
|
|
1738
2007
|
type: string
|
|
1739
|
-
description: Name of the project to
|
|
2008
|
+
description: Name of the project to start watching for file changes
|
|
1740
2009
|
required:
|
|
1741
2010
|
- projectName
|
|
1742
2011
|
|
|
1743
2012
|
ConnectionStatus:
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
2013
|
+
type: object
|
|
2014
|
+
description: Result of testing a database connection
|
|
2015
|
+
properties:
|
|
2016
|
+
status:
|
|
2017
|
+
type: string
|
|
2018
|
+
description: Connection test result status
|
|
2019
|
+
enum: ["ok", "failed"]
|
|
2020
|
+
errorMessage:
|
|
2021
|
+
type: string
|
|
2022
|
+
description: Error message if the connection test failed, null if successful
|