wekan.yml 83 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439
  1. swagger: '2.0'
  2. info:
  3. title: Wekan REST API
  4. version: v4.37
  5. description: |
  6. The REST API allows you to control and extend Wekan with ease.
  7. If you are an end-user and not a dev or a tester, [create an issue](https://github.com/wekan/wekan/issues/new) to request new APIs.
  8. > All API calls in the documentation are made using `curl`. However, you are free to use Java / Python / PHP / Golang / Ruby / Swift / Objective-C / Rust / Scala / C# or any other programming languages.
  9. # Production Security Concerns
  10. When calling a production Wekan server, ensure it is running via HTTPS and has a valid SSL Certificate. The login method requires you to post your username and password in plaintext, which is why we highly suggest only calling the REST login api over HTTPS. Also, few things to note:
  11. * Only call via HTTPS
  12. * Implement a timed authorization token expiration strategy
  13. * Ensure the calling user only has permissions for what they are calling and no more
  14. schemes:
  15. - http
  16. securityDefinitions:
  17. UserSecurity:
  18. type: apiKey
  19. in: header
  20. name: Authorization
  21. paths:
  22. /users/login:
  23. post:
  24. operationId: login
  25. summary: Login with REST API
  26. consumes:
  27. - application/x-www-form-urlencoded
  28. - application/json
  29. tags:
  30. - Login
  31. parameters:
  32. - name: username
  33. in: formData
  34. required: true
  35. description: |
  36. Your username
  37. type: string
  38. - name: password
  39. in: formData
  40. required: true
  41. description: |
  42. Your password
  43. type: string
  44. format: password
  45. responses:
  46. 200:
  47. description: |-
  48. Successful authentication
  49. schema:
  50. items:
  51. properties:
  52. id:
  53. type: string
  54. token:
  55. type: string
  56. tokenExpires:
  57. type: string
  58. 400:
  59. description: |
  60. Error in authentication
  61. schema:
  62. items:
  63. properties:
  64. error:
  65. type: number
  66. reason:
  67. type: string
  68. default:
  69. description: |
  70. Error in authentication
  71. /users/register:
  72. post:
  73. operationId: register
  74. summary: Register with REST API
  75. description: |
  76. Notes:
  77. - You will need to provide the token for any of the authenticated methods.
  78. consumes:
  79. - application/x-www-form-urlencoded
  80. - application/json
  81. tags:
  82. - Login
  83. parameters:
  84. - name: username
  85. in: formData
  86. required: true
  87. description: |
  88. Your username
  89. type: string
  90. - name: password
  91. in: formData
  92. required: true
  93. description: |
  94. Your password
  95. type: string
  96. format: password
  97. - name: email
  98. in: formData
  99. required: true
  100. description: |
  101. Your email
  102. type: string
  103. responses:
  104. 200:
  105. description: |-
  106. Successful registration
  107. schema:
  108. items:
  109. properties:
  110. id:
  111. type: string
  112. token:
  113. type: string
  114. tokenExpires:
  115. type: string
  116. 400:
  117. description: |
  118. Error in registration
  119. schema:
  120. items:
  121. properties:
  122. error:
  123. type: number
  124. reason:
  125. type: string
  126. default:
  127. description: |
  128. Error in registration
  129. /api/boards:
  130. get:
  131. operationId: get_public_boards
  132. summary: Get all public boards
  133. tags:
  134. - Boards
  135. produces:
  136. - application/json
  137. security:
  138. - UserSecurity: []
  139. responses:
  140. '200':
  141. description: |-
  142. 200 response
  143. schema:
  144. type: array
  145. items:
  146. type: object
  147. properties:
  148. _id:
  149. type: string
  150. title:
  151. type: string
  152. post:
  153. operationId: new_board
  154. summary: Create a board
  155. description: |
  156. This allows to create a board.
  157. The color has to be chosen between `belize`, `nephritis`, `pomegranate`,
  158. `pumpkin`, `wisteria`, `moderatepink`, `strongcyan`,
  159. `limegreen`, `midnight`, `dark`, `relax`, `corteza`:
  160. <img src="https://wekan.github.io/board-colors.png" width="40%" alt="Wekan logo" />
  161. tags:
  162. - Boards
  163. consumes:
  164. - multipart/form-data
  165. - application/json
  166. parameters:
  167. - name: title
  168. in: formData
  169. description: |
  170. the new title of the board
  171. type: string
  172. required: true
  173. - name: owner
  174. in: formData
  175. description: |
  176. "ABCDE12345" <= User ID in Wekan.
  177. (Not username or email)
  178. type: string
  179. required: true
  180. - name: isAdmin
  181. in: formData
  182. description: |
  183. is the owner an admin of the board (default true)
  184. type: boolean
  185. required: false
  186. - name: isActive
  187. in: formData
  188. description: |
  189. is the board active (default true)
  190. type: boolean
  191. required: false
  192. - name: isNoComments
  193. in: formData
  194. description: |
  195. disable comments (default false)
  196. type: boolean
  197. required: false
  198. - name: isCommentOnly
  199. in: formData
  200. description: |
  201. only enable comments (default false)
  202. type: boolean
  203. required: false
  204. - name: isWorker
  205. in: formData
  206. description: |
  207. only move cards, assign himself to card and comment (default false)
  208. type: boolean
  209. required: false
  210. - name: permission
  211. in: formData
  212. description: |
  213. "private" board <== Set to "public" if you
  214. want public Wekan board
  215. type: string
  216. required: false
  217. - name: color
  218. in: formData
  219. description: |
  220. the color of the board
  221. type: string
  222. required: false
  223. produces:
  224. - application/json
  225. security:
  226. - UserSecurity: []
  227. responses:
  228. '200':
  229. description: |-
  230. 200 response
  231. schema:
  232. type: object
  233. properties:
  234. _id:
  235. type: string
  236. defaultSwimlaneId:
  237. type: string
  238. /api/boards/{board}:
  239. get:
  240. operationId: get_board
  241. summary: Get the board with that particular ID
  242. tags:
  243. - Boards
  244. parameters:
  245. - name: board
  246. in: path
  247. description: |
  248. the ID of the board to retrieve the data
  249. type: string
  250. required: true
  251. produces:
  252. - application/json
  253. security:
  254. - UserSecurity: []
  255. responses:
  256. '200':
  257. description: |-
  258. 200 response
  259. schema:
  260. $ref: "#/definitions/Boards"
  261. delete:
  262. operationId: delete_board
  263. summary: Delete a board
  264. tags:
  265. - Boards
  266. parameters:
  267. - name: board
  268. in: path
  269. description: |
  270. the ID of the board
  271. type: string
  272. required: true
  273. produces:
  274. - application/json
  275. security:
  276. - UserSecurity: []
  277. responses:
  278. '200':
  279. description: |-
  280. 200 response
  281. /api/boards/{board}/cards/{card}/checklists:
  282. get:
  283. operationId: get_all_checklists
  284. summary: Get the list of checklists attached to a card
  285. tags:
  286. - Checklists
  287. parameters:
  288. - name: board
  289. in: path
  290. description: |
  291. the board ID
  292. type: string
  293. required: true
  294. - name: card
  295. in: path
  296. description: |
  297. the card ID
  298. type: string
  299. required: true
  300. produces:
  301. - application/json
  302. security:
  303. - UserSecurity: []
  304. responses:
  305. '200':
  306. description: |-
  307. 200 response
  308. schema:
  309. type: array
  310. items:
  311. type: object
  312. properties:
  313. _id:
  314. type: string
  315. title:
  316. type: string
  317. post:
  318. operationId: new_checklist
  319. summary: create a new checklist
  320. tags:
  321. - Checklists
  322. consumes:
  323. - multipart/form-data
  324. - application/json
  325. parameters:
  326. - name: title
  327. in: formData
  328. description: |
  329. the title of the new checklist
  330. type: string
  331. required: true
  332. - name: items
  333. in: formData
  334. description: |
  335. the list of items on the new checklist
  336. type: string
  337. required: false
  338. - name: board
  339. in: path
  340. description: |
  341. the board ID
  342. type: string
  343. required: true
  344. - name: card
  345. in: path
  346. description: |
  347. the card ID
  348. type: string
  349. required: true
  350. produces:
  351. - application/json
  352. security:
  353. - UserSecurity: []
  354. responses:
  355. '200':
  356. description: |-
  357. 200 response
  358. schema:
  359. type: object
  360. properties:
  361. _id:
  362. type: string
  363. /api/boards/{board}/cards/{card}/checklists/{checklist}:
  364. get:
  365. operationId: get_checklist
  366. summary: Get a checklist
  367. tags:
  368. - Checklists
  369. parameters:
  370. - name: board
  371. in: path
  372. description: |
  373. the board ID
  374. type: string
  375. required: true
  376. - name: card
  377. in: path
  378. description: |
  379. the card ID
  380. type: string
  381. required: true
  382. - name: checklist
  383. in: path
  384. description: |
  385. the ID of the checklist
  386. type: string
  387. required: true
  388. produces:
  389. - application/json
  390. security:
  391. - UserSecurity: []
  392. responses:
  393. '200':
  394. description: |-
  395. 200 response
  396. schema:
  397. type: object
  398. properties:
  399. cardId:
  400. type: string
  401. title:
  402. type: string
  403. finishedAt:
  404. type: string
  405. createdAt:
  406. type: string
  407. sort:
  408. type: number
  409. items:
  410. type: array
  411. items:
  412. type: object
  413. properties:
  414. _id:
  415. type: string
  416. title:
  417. type: string
  418. isFinished:
  419. type: boolean
  420. delete:
  421. operationId: delete_checklist
  422. summary: Delete a checklist
  423. description: |
  424. The checklist will be removed, not put in the recycle bin.
  425. tags:
  426. - Checklists
  427. parameters:
  428. - name: board
  429. in: path
  430. description: |
  431. the board ID
  432. type: string
  433. required: true
  434. - name: card
  435. in: path
  436. description: |
  437. the card ID
  438. type: string
  439. required: true
  440. - name: checklist
  441. in: path
  442. description: |
  443. the ID of the checklist to remove
  444. type: string
  445. required: true
  446. produces:
  447. - application/json
  448. security:
  449. - UserSecurity: []
  450. responses:
  451. '200':
  452. description: |-
  453. 200 response
  454. schema:
  455. type: object
  456. properties:
  457. _id:
  458. type: string
  459. /api/boards/{board}/cards/{card}/checklists/{checklist}/items/{item}:
  460. get:
  461. operationId: get_checklist_item
  462. summary: Get a checklist item
  463. tags:
  464. - ChecklistItems
  465. - Checklists
  466. parameters:
  467. - name: board
  468. in: path
  469. description: |
  470. the board ID
  471. type: string
  472. required: true
  473. - name: card
  474. in: path
  475. description: |
  476. the card ID
  477. type: string
  478. required: true
  479. - name: checklist
  480. in: path
  481. description: |
  482. the checklist ID
  483. type: string
  484. required: true
  485. - name: item
  486. in: path
  487. description: |
  488. the ID of the item
  489. type: string
  490. required: true
  491. produces:
  492. - application/json
  493. security:
  494. - UserSecurity: []
  495. responses:
  496. '200':
  497. description: |-
  498. 200 response
  499. schema:
  500. $ref: "#/definitions/ChecklistItems"
  501. put:
  502. operationId: edit_checklist_item
  503. summary: Edit a checklist item
  504. tags:
  505. - ChecklistItems
  506. - Checklists
  507. consumes:
  508. - multipart/form-data
  509. - application/json
  510. parameters:
  511. - name: isFinished
  512. in: formData
  513. description: |
  514. is the item checked?
  515. type: string
  516. required: false
  517. - name: title
  518. in: formData
  519. description: |
  520. the new text of the item
  521. type: string
  522. required: false
  523. - name: board
  524. in: path
  525. description: |
  526. the board ID
  527. type: string
  528. required: true
  529. - name: card
  530. in: path
  531. description: |
  532. the card ID
  533. type: string
  534. required: true
  535. - name: checklist
  536. in: path
  537. description: |
  538. the checklist ID
  539. type: string
  540. required: true
  541. - name: item
  542. in: path
  543. description: |
  544. the ID of the item
  545. type: string
  546. required: true
  547. produces:
  548. - application/json
  549. security:
  550. - UserSecurity: []
  551. responses:
  552. '200':
  553. description: |-
  554. 200 response
  555. schema:
  556. type: object
  557. properties:
  558. _id:
  559. type: string
  560. delete:
  561. operationId: delete_checklist_item
  562. summary: Delete a checklist item
  563. description: |
  564. Note: this operation can't be reverted.
  565. tags:
  566. - ChecklistItems
  567. - Checklists
  568. parameters:
  569. - name: board
  570. in: path
  571. description: |
  572. the board ID
  573. type: string
  574. required: true
  575. - name: card
  576. in: path
  577. description: |
  578. the card ID
  579. type: string
  580. required: true
  581. - name: checklist
  582. in: path
  583. description: |
  584. the checklist ID
  585. type: string
  586. required: true
  587. - name: item
  588. in: path
  589. description: |
  590. the ID of the item to be removed
  591. type: string
  592. required: true
  593. produces:
  594. - application/json
  595. security:
  596. - UserSecurity: []
  597. responses:
  598. '200':
  599. description: |-
  600. 200 response
  601. schema:
  602. type: object
  603. properties:
  604. _id:
  605. type: string
  606. /api/boards/{board}/cards/{card}/comments:
  607. get:
  608. operationId: get_all_comments
  609. summary: Get all comments attached to a card
  610. tags:
  611. - CardComments
  612. parameters:
  613. - name: board
  614. in: path
  615. description: |
  616. the board ID of the card
  617. type: string
  618. required: true
  619. - name: card
  620. in: path
  621. description: |
  622. the ID of the card
  623. type: string
  624. required: true
  625. produces:
  626. - application/json
  627. security:
  628. - UserSecurity: []
  629. responses:
  630. '200':
  631. description: |-
  632. 200 response
  633. schema:
  634. type: array
  635. items:
  636. type: object
  637. properties:
  638. _id:
  639. type: string
  640. comment:
  641. type: string
  642. authorId:
  643. type: string
  644. post:
  645. operationId: new_comment
  646. summary: Add a comment on a card
  647. tags:
  648. - CardComments
  649. consumes:
  650. - multipart/form-data
  651. - application/json
  652. parameters:
  653. - name: authorId
  654. in: formData
  655. description: |
  656. the user who 'posted' the comment
  657. type: string
  658. required: true
  659. - name: comment
  660. in: formData
  661. description: the comment value
  662. type: string
  663. required: true
  664. - name: board
  665. in: path
  666. description: |
  667. the board ID of the card
  668. type: string
  669. required: true
  670. - name: card
  671. in: path
  672. description: |
  673. the ID of the card
  674. type: string
  675. required: true
  676. produces:
  677. - application/json
  678. security:
  679. - UserSecurity: []
  680. responses:
  681. '200':
  682. description: |-
  683. 200 response
  684. schema:
  685. type: object
  686. properties:
  687. _id:
  688. type: string
  689. /api/boards/{board}/cards/{card}/comments/{comment}:
  690. get:
  691. operationId: get_comment
  692. summary: Get a comment on a card
  693. tags:
  694. - CardComments
  695. parameters:
  696. - name: board
  697. in: path
  698. description: |
  699. the board ID of the card
  700. type: string
  701. required: true
  702. - name: card
  703. in: path
  704. description: |
  705. the ID of the card
  706. type: string
  707. required: true
  708. - name: comment
  709. in: path
  710. description: |
  711. the ID of the comment to retrieve
  712. type: string
  713. required: true
  714. produces:
  715. - application/json
  716. security:
  717. - UserSecurity: []
  718. responses:
  719. '200':
  720. description: |-
  721. 200 response
  722. schema:
  723. $ref: "#/definitions/CardComments"
  724. delete:
  725. operationId: delete_comment
  726. summary: Delete a comment on a card
  727. tags:
  728. - CardComments
  729. parameters:
  730. - name: board
  731. in: path
  732. description: |
  733. the board ID of the card
  734. type: string
  735. required: true
  736. - name: card
  737. in: path
  738. description: |
  739. the ID of the card
  740. type: string
  741. required: true
  742. - name: comment
  743. in: path
  744. description: |
  745. the ID of the comment to delete
  746. type: string
  747. required: true
  748. produces:
  749. - application/json
  750. security:
  751. - UserSecurity: []
  752. responses:
  753. '200':
  754. description: |-
  755. 200 response
  756. schema:
  757. type: object
  758. properties:
  759. _id:
  760. type: string
  761. /api/boards/{board}/cardsByCustomField/{customField}/{customFieldValue}:
  762. get:
  763. operationId: get_cards_by_custom_field
  764. summary: Get all Cards that matchs a value of a specific custom field
  765. tags:
  766. - Cards
  767. parameters:
  768. - name: board
  769. in: path
  770. description: |
  771. the board ID
  772. type: string
  773. required: true
  774. - name: customField
  775. in: path
  776. description: |
  777. the list ID
  778. type: string
  779. required: true
  780. - name: customFieldValue
  781. in: path
  782. description: |
  783. the value to look for
  784. type: string
  785. required: true
  786. produces:
  787. - application/json
  788. security:
  789. - UserSecurity: []
  790. responses:
  791. '200':
  792. description: |-
  793. 200 response
  794. schema:
  795. type: array
  796. items:
  797. type: object
  798. properties:
  799. _id:
  800. type: string
  801. title:
  802. type: string
  803. description:
  804. type: string
  805. listId:
  806. type: string
  807. swinlaneId:
  808. type: string
  809. /api/boards/{board}/custom-fields:
  810. get:
  811. operationId: get_all_custom_fields
  812. summary: Get the list of Custom Fields attached to a board
  813. tags:
  814. - CustomFields
  815. parameters:
  816. - name: board
  817. in: path
  818. description: the board value
  819. type: string
  820. required: true
  821. produces:
  822. - application/json
  823. security:
  824. - UserSecurity: []
  825. responses:
  826. '200':
  827. description: |-
  828. 200 response
  829. schema:
  830. type: array
  831. items:
  832. type: object
  833. properties:
  834. _id:
  835. type: string
  836. name:
  837. type: string
  838. type:
  839. type: string
  840. post:
  841. operationId: new_custom_field
  842. summary: Create a Custom Field
  843. tags:
  844. - CustomFields
  845. consumes:
  846. - multipart/form-data
  847. - application/json
  848. parameters:
  849. - name: name
  850. in: formData
  851. description: |
  852. the name of the custom field
  853. type: string
  854. required: true
  855. - name: type
  856. in: formData
  857. description: |
  858. the type of the custom field
  859. type: string
  860. required: true
  861. - name: settings
  862. in: formData
  863. description: |
  864. the settings object of the custom field
  865. type: string
  866. required: true
  867. - name: showOnCard
  868. in: formData
  869. description: |
  870. should we show the custom field on cards?
  871. type: boolean
  872. required: true
  873. - name: automaticallyOnCard
  874. in: formData
  875. description: |
  876. should the custom fields automatically be added on cards?
  877. type: boolean
  878. required: true
  879. - name: showLabelOnMiniCard
  880. in: formData
  881. description: |
  882. should the label of the custom field be shown on minicards?
  883. type: boolean
  884. required: true
  885. - name: authorId
  886. in: formData
  887. description: the authorId value
  888. type: string
  889. required: true
  890. - name: board
  891. in: path
  892. description: the board value
  893. type: string
  894. required: true
  895. produces:
  896. - application/json
  897. security:
  898. - UserSecurity: []
  899. responses:
  900. '200':
  901. description: |-
  902. 200 response
  903. schema:
  904. type: object
  905. properties:
  906. _id:
  907. type: string
  908. /api/boards/{board}/custom-fields/{customField}:
  909. get:
  910. operationId: get_custom_field
  911. summary: Get a Custom Fields attached to a board
  912. tags:
  913. - CustomFields
  914. parameters:
  915. - name: board
  916. in: path
  917. description: the board value
  918. type: string
  919. required: true
  920. - name: customField
  921. in: path
  922. description: |
  923. the ID of the custom field
  924. type: string
  925. required: true
  926. produces:
  927. - application/json
  928. security:
  929. - UserSecurity: []
  930. responses:
  931. '200':
  932. description: |-
  933. 200 response
  934. schema:
  935. $ref: "#/definitions/CustomFields"
  936. delete:
  937. operationId: delete_custom_field
  938. summary: Delete a Custom Fields attached to a board
  939. description: |
  940. The Custom Field can't be retrieved after this operation
  941. tags:
  942. - CustomFields
  943. parameters:
  944. - name: board
  945. in: path
  946. description: the board value
  947. type: string
  948. required: true
  949. - name: customField
  950. in: path
  951. description: |
  952. the ID of the custom field
  953. type: string
  954. required: true
  955. produces:
  956. - application/json
  957. security:
  958. - UserSecurity: []
  959. responses:
  960. '200':
  961. description: |-
  962. 200 response
  963. schema:
  964. type: object
  965. properties:
  966. _id:
  967. type: string
  968. /api/boards/{board}/export:
  969. get:
  970. operationId: exportJson
  971. summary: This route is used to export the board to a json file format.
  972. description: |
  973. If user is already logged-in, pass loginToken as param
  974. "authToken": '/api/boards/:boardId/export?authToken=:token'
  975. See https://blog.kayla.com.au/server-side-route-authentication-in-meteor/
  976. for detailed explanations
  977. tags:
  978. - Boards
  979. parameters:
  980. - name: board
  981. in: path
  982. description: |
  983. the ID of the board we are exporting
  984. type: string
  985. required: true
  986. produces:
  987. - application/json
  988. security:
  989. - UserSecurity: []
  990. responses:
  991. '200':
  992. description: |-
  993. 200 response
  994. /api/boards/{board}/integrations:
  995. get:
  996. operationId: get_all_integrations
  997. summary: Get all integrations in board
  998. tags:
  999. - Integrations
  1000. parameters:
  1001. - name: board
  1002. in: path
  1003. description: |
  1004. the board ID
  1005. type: string
  1006. required: true
  1007. produces:
  1008. - application/json
  1009. security:
  1010. - UserSecurity: []
  1011. responses:
  1012. '200':
  1013. description: |-
  1014. 200 response
  1015. schema:
  1016. type: array
  1017. items:
  1018. $ref: "#/definitions/Integrations"
  1019. post:
  1020. operationId: new_integration
  1021. summary: Create a new integration
  1022. tags:
  1023. - Integrations
  1024. consumes:
  1025. - multipart/form-data
  1026. - application/json
  1027. parameters:
  1028. - name: url
  1029. in: formData
  1030. description: |
  1031. the URL of the integration
  1032. type: string
  1033. required: true
  1034. - name: board
  1035. in: path
  1036. description: |
  1037. the board ID
  1038. type: string
  1039. required: true
  1040. produces:
  1041. - application/json
  1042. security:
  1043. - UserSecurity: []
  1044. responses:
  1045. '200':
  1046. description: |-
  1047. 200 response
  1048. schema:
  1049. type: object
  1050. properties:
  1051. _id:
  1052. type: string
  1053. /api/boards/{board}/integrations/{int}:
  1054. get:
  1055. operationId: get_integration
  1056. summary: Get a single integration in board
  1057. tags:
  1058. - Integrations
  1059. parameters:
  1060. - name: board
  1061. in: path
  1062. description: |
  1063. the board ID
  1064. type: string
  1065. required: true
  1066. - name: int
  1067. in: path
  1068. description: |
  1069. the integration ID
  1070. type: string
  1071. required: true
  1072. produces:
  1073. - application/json
  1074. security:
  1075. - UserSecurity: []
  1076. responses:
  1077. '200':
  1078. description: |-
  1079. 200 response
  1080. schema:
  1081. $ref: "#/definitions/Integrations"
  1082. put:
  1083. operationId: edit_integration
  1084. summary: Edit integration data
  1085. tags:
  1086. - Integrations
  1087. consumes:
  1088. - multipart/form-data
  1089. - application/json
  1090. parameters:
  1091. - name: enabled
  1092. in: formData
  1093. description: |
  1094. is the integration enabled?
  1095. type: string
  1096. required: false
  1097. - name: title
  1098. in: formData
  1099. description: |
  1100. new name of the integration
  1101. type: string
  1102. required: false
  1103. - name: url
  1104. in: formData
  1105. description: |
  1106. new URL of the integration
  1107. type: string
  1108. required: false
  1109. - name: token
  1110. in: formData
  1111. description: |
  1112. new token of the integration
  1113. type: string
  1114. required: false
  1115. - name: activities
  1116. in: formData
  1117. description: |
  1118. new list of activities of the integration
  1119. type: string
  1120. required: false
  1121. - name: board
  1122. in: path
  1123. description: |
  1124. the board ID
  1125. type: string
  1126. required: true
  1127. - name: int
  1128. in: path
  1129. description: |
  1130. the integration ID
  1131. type: string
  1132. required: true
  1133. produces:
  1134. - application/json
  1135. security:
  1136. - UserSecurity: []
  1137. responses:
  1138. '200':
  1139. description: |-
  1140. 200 response
  1141. schema:
  1142. type: object
  1143. properties:
  1144. _id:
  1145. type: string
  1146. delete:
  1147. operationId: delete_integration
  1148. summary: Delete integration
  1149. tags:
  1150. - Integrations
  1151. parameters:
  1152. - name: board
  1153. in: path
  1154. description: |
  1155. the board ID
  1156. type: string
  1157. required: true
  1158. - name: int
  1159. in: path
  1160. description: |
  1161. the integration ID
  1162. type: string
  1163. required: true
  1164. produces:
  1165. - application/json
  1166. security:
  1167. - UserSecurity: []
  1168. responses:
  1169. '200':
  1170. description: |-
  1171. 200 response
  1172. schema:
  1173. type: object
  1174. properties:
  1175. _id:
  1176. type: string
  1177. /api/boards/{board}/integrations/{int}/activities:
  1178. delete:
  1179. operationId: delete_integration_activities
  1180. summary: Delete subscribed activities
  1181. tags:
  1182. - Integrations
  1183. parameters:
  1184. - name: board
  1185. in: path
  1186. description: |
  1187. the board ID
  1188. type: string
  1189. required: true
  1190. - name: int
  1191. in: path
  1192. description: |
  1193. the integration ID
  1194. type: string
  1195. required: true
  1196. produces:
  1197. - application/json
  1198. security:
  1199. - UserSecurity: []
  1200. responses:
  1201. '200':
  1202. description: |-
  1203. 200 response
  1204. schema:
  1205. $ref: "#/definitions/Integrations"
  1206. post:
  1207. operationId: new_integration_activities
  1208. summary: Add subscribed activities
  1209. tags:
  1210. - Integrations
  1211. consumes:
  1212. - multipart/form-data
  1213. - application/json
  1214. parameters:
  1215. - name: activities
  1216. in: formData
  1217. description: the activities value
  1218. type: string
  1219. required: true
  1220. - name: board
  1221. in: path
  1222. description: |
  1223. the board ID
  1224. type: string
  1225. required: true
  1226. - name: int
  1227. in: path
  1228. description: |
  1229. the integration ID
  1230. type: string
  1231. required: true
  1232. produces:
  1233. - application/json
  1234. security:
  1235. - UserSecurity: []
  1236. responses:
  1237. '200':
  1238. description: |-
  1239. 200 response
  1240. schema:
  1241. $ref: "#/definitions/Integrations"
  1242. /api/boards/{board}/labels:
  1243. put:
  1244. operationId: add_board_label
  1245. summary: Add a label to a board
  1246. description: |
  1247. If the board doesn't have the name/color label, this function
  1248. adds the label to the board.
  1249. tags:
  1250. - Boards
  1251. consumes:
  1252. - multipart/form-data
  1253. - application/json
  1254. parameters:
  1255. - name: label
  1256. in: formData
  1257. description: the label value
  1258. type: string
  1259. required: true
  1260. - name: board
  1261. in: path
  1262. description: |
  1263. the board
  1264. type: string
  1265. required: true
  1266. produces:
  1267. - application/json
  1268. security:
  1269. - UserSecurity: []
  1270. responses:
  1271. '200':
  1272. description: |-
  1273. 200 response
  1274. schema:
  1275. type: string
  1276. /api/boards/{board}/lists:
  1277. get:
  1278. operationId: get_all_lists
  1279. summary: Get the list of Lists attached to a board
  1280. tags:
  1281. - Lists
  1282. parameters:
  1283. - name: board
  1284. in: path
  1285. description: |
  1286. the board ID
  1287. type: string
  1288. required: true
  1289. produces:
  1290. - application/json
  1291. security:
  1292. - UserSecurity: []
  1293. responses:
  1294. '200':
  1295. description: |-
  1296. 200 response
  1297. schema:
  1298. type: array
  1299. items:
  1300. type: object
  1301. properties:
  1302. _id:
  1303. type: string
  1304. title:
  1305. type: string
  1306. post:
  1307. operationId: new_list
  1308. summary: Add a List to a board
  1309. tags:
  1310. - Lists
  1311. consumes:
  1312. - multipart/form-data
  1313. - application/json
  1314. parameters:
  1315. - name: title
  1316. in: formData
  1317. description: |
  1318. the title of the List
  1319. type: string
  1320. required: true
  1321. - name: board
  1322. in: path
  1323. description: |
  1324. the board ID
  1325. type: string
  1326. required: true
  1327. produces:
  1328. - application/json
  1329. security:
  1330. - UserSecurity: []
  1331. responses:
  1332. '200':
  1333. description: |-
  1334. 200 response
  1335. schema:
  1336. type: object
  1337. properties:
  1338. _id:
  1339. type: string
  1340. /api/boards/{board}/lists/{list}:
  1341. get:
  1342. operationId: get_list
  1343. summary: Get a List attached to a board
  1344. tags:
  1345. - Lists
  1346. parameters:
  1347. - name: board
  1348. in: path
  1349. description: |
  1350. the board ID
  1351. type: string
  1352. required: true
  1353. - name: list
  1354. in: path
  1355. description: |
  1356. the List ID
  1357. type: string
  1358. required: true
  1359. produces:
  1360. - application/json
  1361. security:
  1362. - UserSecurity: []
  1363. responses:
  1364. '200':
  1365. description: |-
  1366. 200 response
  1367. schema:
  1368. $ref: "#/definitions/Lists"
  1369. delete:
  1370. operationId: delete_list
  1371. summary: Delete a List
  1372. description: |
  1373. This **deletes** a list from a board.
  1374. The list is not put in the recycle bin.
  1375. tags:
  1376. - Lists
  1377. parameters:
  1378. - name: board
  1379. in: path
  1380. description: |
  1381. the board ID
  1382. type: string
  1383. required: true
  1384. - name: list
  1385. in: path
  1386. description: |
  1387. the ID of the list to remove
  1388. type: string
  1389. required: true
  1390. produces:
  1391. - application/json
  1392. security:
  1393. - UserSecurity: []
  1394. responses:
  1395. '200':
  1396. description: |-
  1397. 200 response
  1398. schema:
  1399. type: object
  1400. properties:
  1401. _id:
  1402. type: string
  1403. /api/boards/{board}/lists/{list}/cards:
  1404. get:
  1405. operationId: get_all_cards
  1406. summary: Get all Cards attached to a List
  1407. tags:
  1408. - Cards
  1409. parameters:
  1410. - name: board
  1411. in: path
  1412. description: |
  1413. the board ID
  1414. type: string
  1415. required: true
  1416. - name: list
  1417. in: path
  1418. description: |
  1419. the list ID
  1420. type: string
  1421. required: true
  1422. produces:
  1423. - application/json
  1424. security:
  1425. - UserSecurity: []
  1426. responses:
  1427. '200':
  1428. description: |-
  1429. 200 response
  1430. schema:
  1431. type: array
  1432. items:
  1433. type: object
  1434. properties:
  1435. _id:
  1436. type: string
  1437. title:
  1438. type: string
  1439. description:
  1440. type: string
  1441. post:
  1442. operationId: new_card
  1443. summary: Create a new Card
  1444. tags:
  1445. - Cards
  1446. consumes:
  1447. - multipart/form-data
  1448. - application/json
  1449. parameters:
  1450. - name: authorId
  1451. in: formData
  1452. description: the authorId value
  1453. type: string
  1454. required: true
  1455. - name: members
  1456. in: formData
  1457. description: |
  1458. the member IDs list of the new card
  1459. type: string
  1460. required: false
  1461. - name: assignees
  1462. in: formData
  1463. description: |
  1464. the array of maximum one ID of assignee of the new card
  1465. type: string
  1466. required: false
  1467. - name: title
  1468. in: formData
  1469. description: |
  1470. the title of the new card
  1471. type: string
  1472. required: true
  1473. - name: description
  1474. in: formData
  1475. description: |
  1476. the description of the new card
  1477. type: string
  1478. required: true
  1479. - name: swimlaneId
  1480. in: formData
  1481. description: |
  1482. the swimlane ID of the new card
  1483. type: string
  1484. required: true
  1485. - name: board
  1486. in: path
  1487. description: |
  1488. the board ID of the new card
  1489. type: string
  1490. required: true
  1491. - name: list
  1492. in: path
  1493. description: |
  1494. the list ID of the new card
  1495. type: string
  1496. required: true
  1497. produces:
  1498. - application/json
  1499. security:
  1500. - UserSecurity: []
  1501. responses:
  1502. '200':
  1503. description: |-
  1504. 200 response
  1505. schema:
  1506. type: object
  1507. properties:
  1508. _id:
  1509. type: string
  1510. /api/boards/{board}/lists/{list}/cards/{card}:
  1511. get:
  1512. operationId: get_card
  1513. summary: Get a Card
  1514. tags:
  1515. - Cards
  1516. parameters:
  1517. - name: board
  1518. in: path
  1519. description: |
  1520. the board ID
  1521. type: string
  1522. required: true
  1523. - name: list
  1524. in: path
  1525. description: |
  1526. the list ID of the card
  1527. type: string
  1528. required: true
  1529. - name: card
  1530. in: path
  1531. description: |
  1532. the card ID
  1533. type: string
  1534. required: true
  1535. produces:
  1536. - application/json
  1537. security:
  1538. - UserSecurity: []
  1539. responses:
  1540. '200':
  1541. description: |-
  1542. 200 response
  1543. schema:
  1544. $ref: "#/definitions/Cards"
  1545. put:
  1546. operationId: edit_card
  1547. summary: Edit Fields in a Card
  1548. description: |
  1549. Edit a card
  1550. The color has to be chosen between `white`, `green`, `yellow`, `orange`,
  1551. `red`, `purple`, `blue`, `sky`, `lime`, `pink`, `black`, `silver`,
  1552. `peachpuff`, `crimson`, `plum`, `darkgreen`, `slateblue`, `magenta`,
  1553. `gold`, `navy`, `gray`, `saddlebrown`, `paleturquoise`, `mistyrose`,
  1554. `indigo`:
  1555. <img src="/card-colors.png" width="40%" alt="Wekan card colors" />
  1556. Note: setting the color to white has the same effect than removing it.
  1557. tags:
  1558. - Cards
  1559. consumes:
  1560. - multipart/form-data
  1561. - application/json
  1562. parameters:
  1563. - name: title
  1564. in: formData
  1565. description: |
  1566. the new title of the card
  1567. type: string
  1568. required: false
  1569. - name: parentId
  1570. in: formData
  1571. description: |
  1572. change the parent of the card
  1573. type: string
  1574. required: false
  1575. - name: description
  1576. in: formData
  1577. description: |
  1578. the new description of the card
  1579. type: string
  1580. required: false
  1581. - name: color
  1582. in: formData
  1583. description: |
  1584. the new color of the card
  1585. type: string
  1586. required: false
  1587. - name: vote
  1588. in: formData
  1589. description: |
  1590. the vote object
  1591. type: object
  1592. required: false
  1593. - name: labelIds
  1594. in: formData
  1595. description: |
  1596. the new list of label IDs attached to the card
  1597. type: string
  1598. required: false
  1599. - name: requestedBy
  1600. in: formData
  1601. description: |
  1602. the new requestedBy field of the card
  1603. type: string
  1604. required: false
  1605. - name: assignedBy
  1606. in: formData
  1607. description: |
  1608. the new assignedBy field of the card
  1609. type: string
  1610. required: false
  1611. - name: receivedAt
  1612. in: formData
  1613. description: |
  1614. the new receivedAt field of the card
  1615. type: string
  1616. required: false
  1617. - name: startAt
  1618. in: formData
  1619. description: |
  1620. the new startAt field of the card
  1621. type: string
  1622. required: false
  1623. - name: dueAt
  1624. in: formData
  1625. description: |
  1626. the new dueAt field of the card
  1627. type: string
  1628. required: false
  1629. - name: endAt
  1630. in: formData
  1631. description: |
  1632. the new endAt field of the card
  1633. type: string
  1634. required: false
  1635. - name: spentTime
  1636. in: formData
  1637. description: |
  1638. the new spentTime field of the card
  1639. type: string
  1640. required: false
  1641. - name: isOverTime
  1642. in: formData
  1643. description: |
  1644. the new isOverTime field of the card
  1645. type: boolean
  1646. required: false
  1647. - name: customFields
  1648. in: formData
  1649. description: |
  1650. the new customFields value of the card
  1651. type: string
  1652. required: false
  1653. - name: members
  1654. in: formData
  1655. description: |
  1656. the new list of member IDs attached to the card
  1657. type: string
  1658. required: false
  1659. - name: assignees
  1660. in: formData
  1661. description: |
  1662. the array of maximum one ID of assignee attached to the card
  1663. type: string
  1664. required: false
  1665. - name: swimlaneId
  1666. in: formData
  1667. description: |
  1668. the new swimlane ID of the card
  1669. type: string
  1670. required: false
  1671. - name: listId
  1672. in: formData
  1673. description: |
  1674. the new list ID of the card (move operation)
  1675. type: string
  1676. required: false
  1677. - name: authorId
  1678. in: formData
  1679. description: |
  1680. change the owner of the card
  1681. type: string
  1682. required: false
  1683. - name: board
  1684. in: path
  1685. description: |
  1686. the board ID of the card
  1687. type: string
  1688. required: true
  1689. - name: list
  1690. in: path
  1691. description: |
  1692. the list ID of the card
  1693. type: string
  1694. required: true
  1695. - name: card
  1696. in: path
  1697. description: |
  1698. the ID of the card
  1699. type: string
  1700. required: true
  1701. produces:
  1702. - application/json
  1703. security:
  1704. - UserSecurity: []
  1705. responses:
  1706. '200':
  1707. description: |-
  1708. 200 response
  1709. schema:
  1710. type: object
  1711. properties:
  1712. _id:
  1713. type: string
  1714. delete:
  1715. operationId: delete_card
  1716. summary: Delete a card from a board
  1717. description: |
  1718. This operation **deletes** a card, and therefore the card
  1719. is not put in the recycle bin.
  1720. tags:
  1721. - Cards
  1722. parameters:
  1723. - name: board
  1724. in: path
  1725. description: |
  1726. the board ID of the card
  1727. type: string
  1728. required: true
  1729. - name: list
  1730. in: path
  1731. description: |
  1732. the list ID of the card
  1733. type: string
  1734. required: true
  1735. - name: card
  1736. in: path
  1737. description: |
  1738. the ID of the card
  1739. type: string
  1740. required: true
  1741. produces:
  1742. - application/json
  1743. security:
  1744. - UserSecurity: []
  1745. responses:
  1746. '200':
  1747. description: |-
  1748. 200 response
  1749. schema:
  1750. type: object
  1751. properties:
  1752. _id:
  1753. type: string
  1754. /api/boards/{board}/members/{member}:
  1755. post:
  1756. operationId: set_board_member_permission
  1757. summary: Change the permission of a member of a board
  1758. tags:
  1759. - Boards
  1760. - Users
  1761. consumes:
  1762. - multipart/form-data
  1763. - application/json
  1764. parameters:
  1765. - name: isAdmin
  1766. in: formData
  1767. description: |
  1768. admin capability
  1769. type: boolean
  1770. required: true
  1771. - name: isNoComments
  1772. in: formData
  1773. description: |
  1774. NoComments capability
  1775. type: boolean
  1776. required: true
  1777. - name: isCommentOnly
  1778. in: formData
  1779. description: |
  1780. CommentsOnly capability
  1781. type: boolean
  1782. required: true
  1783. - name: isWorker
  1784. in: formData
  1785. description: |
  1786. Worker capability
  1787. type: boolean
  1788. required: true
  1789. - name: board
  1790. in: path
  1791. description: |
  1792. the ID of the board that we are changing
  1793. type: string
  1794. required: true
  1795. - name: member
  1796. in: path
  1797. description: |
  1798. the ID of the user to change permissions
  1799. type: string
  1800. required: true
  1801. produces:
  1802. - application/json
  1803. security:
  1804. - UserSecurity: []
  1805. responses:
  1806. '200':
  1807. description: |-
  1808. 200 response
  1809. /api/boards/{board}/members/{user}/add:
  1810. post:
  1811. operationId: add_board_member
  1812. summary: Add New Board Member with Role
  1813. description: |
  1814. Only the admin user (the first user) can call the REST API.
  1815. **Note**: see [Boards.set_board_member_permission](#set_board_member_permission)
  1816. to later change the permissions.
  1817. tags:
  1818. - Users
  1819. - Boards
  1820. consumes:
  1821. - multipart/form-data
  1822. - application/json
  1823. parameters:
  1824. - name: action
  1825. in: formData
  1826. description: the action value
  1827. type: string
  1828. required: true
  1829. - name: isAdmin
  1830. in: formData
  1831. description: |
  1832. is the user an admin of the board
  1833. type: boolean
  1834. required: true
  1835. - name: isNoComments
  1836. in: formData
  1837. description: |
  1838. disable comments
  1839. type: boolean
  1840. required: true
  1841. - name: isCommentOnly
  1842. in: formData
  1843. description: |
  1844. only enable comments
  1845. type: boolean
  1846. required: true
  1847. - name: board
  1848. in: path
  1849. description: |
  1850. the board ID
  1851. type: string
  1852. required: true
  1853. - name: user
  1854. in: path
  1855. description: |
  1856. the user ID
  1857. type: string
  1858. required: true
  1859. produces:
  1860. - application/json
  1861. security:
  1862. - UserSecurity: []
  1863. responses:
  1864. '200':
  1865. description: |-
  1866. 200 response
  1867. schema:
  1868. type: object
  1869. properties:
  1870. _id:
  1871. type: string
  1872. title:
  1873. type: string
  1874. /api/boards/{board}/members/{user}/remove:
  1875. post:
  1876. operationId: remove_board_member
  1877. summary: Remove Member from Board
  1878. description: |
  1879. Only the admin user (the first user) can call the REST API.
  1880. tags:
  1881. - Users
  1882. - Boards
  1883. consumes:
  1884. - multipart/form-data
  1885. - application/json
  1886. parameters:
  1887. - name: action
  1888. in: formData
  1889. description: |
  1890. the action (needs to be `remove`)
  1891. type: string
  1892. required: true
  1893. - name: board
  1894. in: path
  1895. description: |
  1896. the board ID
  1897. type: string
  1898. required: true
  1899. - name: user
  1900. in: path
  1901. description: |
  1902. the user ID
  1903. type: string
  1904. required: true
  1905. produces:
  1906. - application/json
  1907. security:
  1908. - UserSecurity: []
  1909. responses:
  1910. '200':
  1911. description: |-
  1912. 200 response
  1913. schema:
  1914. type: object
  1915. properties:
  1916. _id:
  1917. type: string
  1918. title:
  1919. type: string
  1920. /api/boards/{board}/swimlanes:
  1921. get:
  1922. operationId: get_all_swimlanes
  1923. summary: Get the list of swimlanes attached to a board
  1924. tags:
  1925. - Swimlanes
  1926. parameters:
  1927. - name: board
  1928. in: path
  1929. description: |
  1930. the ID of the board
  1931. type: string
  1932. required: true
  1933. produces:
  1934. - application/json
  1935. security:
  1936. - UserSecurity: []
  1937. responses:
  1938. '200':
  1939. description: |-
  1940. 200 response
  1941. schema:
  1942. type: array
  1943. items:
  1944. type: object
  1945. properties:
  1946. _id:
  1947. type: string
  1948. title:
  1949. type: string
  1950. post:
  1951. operationId: new_swimlane
  1952. summary: Add a swimlane to a board
  1953. tags:
  1954. - Swimlanes
  1955. consumes:
  1956. - multipart/form-data
  1957. - application/json
  1958. parameters:
  1959. - name: title
  1960. in: formData
  1961. description: |
  1962. the new title of the swimlane
  1963. type: string
  1964. required: true
  1965. - name: board
  1966. in: path
  1967. description: |
  1968. the ID of the board
  1969. type: string
  1970. required: true
  1971. produces:
  1972. - application/json
  1973. security:
  1974. - UserSecurity: []
  1975. responses:
  1976. '200':
  1977. description: |-
  1978. 200 response
  1979. schema:
  1980. type: object
  1981. properties:
  1982. _id:
  1983. type: string
  1984. /api/boards/{board}/swimlanes/{swimlane}:
  1985. get:
  1986. operationId: get_swimlane
  1987. summary: Get a swimlane
  1988. tags:
  1989. - Swimlanes
  1990. parameters:
  1991. - name: board
  1992. in: path
  1993. description: |
  1994. the ID of the board
  1995. type: string
  1996. required: true
  1997. - name: swimlane
  1998. in: path
  1999. description: |
  2000. the ID of the swimlane
  2001. type: string
  2002. required: true
  2003. produces:
  2004. - application/json
  2005. security:
  2006. - UserSecurity: []
  2007. responses:
  2008. '200':
  2009. description: |-
  2010. 200 response
  2011. schema:
  2012. $ref: "#/definitions/Swimlanes"
  2013. delete:
  2014. operationId: delete_swimlane
  2015. summary: Delete a swimlane
  2016. description: |
  2017. The swimlane will be deleted, not moved to the recycle bin
  2018. tags:
  2019. - Swimlanes
  2020. parameters:
  2021. - name: board
  2022. in: path
  2023. description: |
  2024. the ID of the board
  2025. type: string
  2026. required: true
  2027. - name: swimlane
  2028. in: path
  2029. description: |
  2030. the ID of the swimlane
  2031. type: string
  2032. required: true
  2033. produces:
  2034. - application/json
  2035. security:
  2036. - UserSecurity: []
  2037. responses:
  2038. '200':
  2039. description: |-
  2040. 200 response
  2041. schema:
  2042. type: object
  2043. properties:
  2044. _id:
  2045. type: string
  2046. /api/boards/{board}/swimlanes/{swimlane}/cards:
  2047. get:
  2048. operationId: get_swimlane_cards
  2049. summary: get all cards attached to a swimlane
  2050. tags:
  2051. - Cards
  2052. parameters:
  2053. - name: board
  2054. in: path
  2055. description: |
  2056. the board ID
  2057. type: string
  2058. required: true
  2059. - name: swimlane
  2060. in: path
  2061. description: |
  2062. the swimlane ID
  2063. type: string
  2064. required: true
  2065. produces:
  2066. - application/json
  2067. security:
  2068. - UserSecurity: []
  2069. responses:
  2070. '200':
  2071. description: |-
  2072. 200 response
  2073. schema:
  2074. type: array
  2075. items:
  2076. type: object
  2077. properties:
  2078. _id:
  2079. type: string
  2080. title:
  2081. type: string
  2082. description:
  2083. type: string
  2084. listId:
  2085. type: string
  2086. /api/user:
  2087. get:
  2088. operationId: get_current_user
  2089. summary: returns the current user
  2090. tags:
  2091. - Users
  2092. produces:
  2093. - application/json
  2094. security:
  2095. - UserSecurity: []
  2096. responses:
  2097. '200':
  2098. description: |-
  2099. 200 response
  2100. schema:
  2101. $ref: "#/definitions/Users"
  2102. /api/users:
  2103. get:
  2104. operationId: get_all_users
  2105. summary: return all the users
  2106. description: |
  2107. Only the admin user (the first user) can call the REST API.
  2108. tags:
  2109. - Users
  2110. produces:
  2111. - application/json
  2112. security:
  2113. - UserSecurity: []
  2114. responses:
  2115. '200':
  2116. description: |-
  2117. 200 response
  2118. schema:
  2119. type: array
  2120. items:
  2121. type: object
  2122. properties:
  2123. _id:
  2124. type: string
  2125. username:
  2126. type: string
  2127. post:
  2128. operationId: new_user
  2129. summary: Create a new user
  2130. description: |
  2131. Only the admin user (the first user) can call the REST API.
  2132. tags:
  2133. - Users
  2134. consumes:
  2135. - multipart/form-data
  2136. - application/json
  2137. parameters:
  2138. - name: username
  2139. in: formData
  2140. description: |
  2141. the new username
  2142. type: string
  2143. required: true
  2144. - name: email
  2145. in: formData
  2146. description: |
  2147. the email of the new user
  2148. type: string
  2149. required: true
  2150. - name: password
  2151. in: formData
  2152. description: |
  2153. the password of the new user
  2154. type: string
  2155. required: true
  2156. produces:
  2157. - application/json
  2158. security:
  2159. - UserSecurity: []
  2160. responses:
  2161. '200':
  2162. description: |-
  2163. 200 response
  2164. schema:
  2165. type: object
  2166. properties:
  2167. _id:
  2168. type: string
  2169. /api/users/{user}:
  2170. get:
  2171. operationId: get_user
  2172. summary: get a given user
  2173. description: |
  2174. Only the admin user (the first user) can call the REST API.
  2175. tags:
  2176. - Users
  2177. parameters:
  2178. - name: user
  2179. in: path
  2180. description: |
  2181. the user ID
  2182. type: string
  2183. required: true
  2184. produces:
  2185. - application/json
  2186. security:
  2187. - UserSecurity: []
  2188. responses:
  2189. '200':
  2190. description: |-
  2191. 200 response
  2192. schema:
  2193. $ref: "#/definitions/Users"
  2194. put:
  2195. operationId: edit_user
  2196. summary: edit a given user
  2197. description: |
  2198. Only the admin user (the first user) can call the REST API.
  2199. Possible values for *action*:
  2200. - `takeOwnership`: The admin takes the ownership of ALL boards of the user (archived and not archived) where the user is admin on.
  2201. - `disableLogin`: Disable a user (the user is not allowed to login and his login tokens are purged)
  2202. - `enableLogin`: Enable a user
  2203. tags:
  2204. - Users
  2205. consumes:
  2206. - multipart/form-data
  2207. - application/json
  2208. parameters:
  2209. - name: action
  2210. in: formData
  2211. description: |
  2212. the action
  2213. type: string
  2214. required: true
  2215. - name: user
  2216. in: path
  2217. description: |
  2218. the user ID
  2219. type: string
  2220. required: true
  2221. produces:
  2222. - application/json
  2223. security:
  2224. - UserSecurity: []
  2225. responses:
  2226. '200':
  2227. description: |-
  2228. 200 response
  2229. schema:
  2230. type: object
  2231. properties:
  2232. _id:
  2233. type: string
  2234. title:
  2235. type: string
  2236. delete:
  2237. operationId: delete_user
  2238. summary: Delete a user
  2239. description: |
  2240. Only the admin user (the first user) can call the REST API.
  2241. tags:
  2242. - Users
  2243. parameters:
  2244. - name: user
  2245. in: path
  2246. description: |
  2247. the ID of the user to delete
  2248. type: string
  2249. required: true
  2250. produces:
  2251. - application/json
  2252. security:
  2253. - UserSecurity: []
  2254. responses:
  2255. '200':
  2256. description: |-
  2257. 200 response
  2258. schema:
  2259. type: object
  2260. properties:
  2261. _id:
  2262. type: string
  2263. /api/users/{user}/boards:
  2264. get:
  2265. operationId: get_boards_from_user
  2266. summary: Get all boards attached to a user
  2267. tags:
  2268. - Boards
  2269. parameters:
  2270. - name: user
  2271. in: path
  2272. description: |
  2273. the ID of the user to retrieve the data
  2274. type: string
  2275. required: true
  2276. produces:
  2277. - application/json
  2278. security:
  2279. - UserSecurity: []
  2280. responses:
  2281. '200':
  2282. description: |-
  2283. 200 response
  2284. schema:
  2285. type: array
  2286. items:
  2287. type: object
  2288. properties:
  2289. _id:
  2290. type: string
  2291. title:
  2292. type: string
  2293. definitions:
  2294. Boards:
  2295. type: object
  2296. description: This is a Board.
  2297. properties:
  2298. title:
  2299. description: |
  2300. The title of the board
  2301. type: string
  2302. slug:
  2303. description: |
  2304. The title slugified.
  2305. type: string
  2306. archived:
  2307. description: |
  2308. Is the board archived?
  2309. type: boolean
  2310. createdAt:
  2311. description: |
  2312. Creation time of the board
  2313. type: string
  2314. modifiedAt:
  2315. description: |
  2316. Last modification time of the board
  2317. type: string
  2318. x-nullable: true
  2319. stars:
  2320. description: |
  2321. How many stars the board has
  2322. type: number
  2323. labels:
  2324. description: |
  2325. List of labels attached to a board
  2326. type: array
  2327. items:
  2328. $ref: "#/definitions/BoardsLabels"
  2329. members:
  2330. description: |
  2331. List of members of a board
  2332. type: array
  2333. items:
  2334. $ref: "#/definitions/BoardsMembers"
  2335. permission:
  2336. description: |
  2337. visibility of the board
  2338. type: string
  2339. enum:
  2340. - public
  2341. - private
  2342. color:
  2343. description: |
  2344. The color of the board.
  2345. type: string
  2346. enum:
  2347. - belize
  2348. - nephritis
  2349. - pomegranate
  2350. - pumpkin
  2351. - wisteria
  2352. - moderatepink
  2353. - strongcyan
  2354. - limegreen
  2355. - midnight
  2356. - dark
  2357. - relax
  2358. - corteza
  2359. - clearblue
  2360. - natural
  2361. - modern
  2362. description:
  2363. description: |
  2364. The description of the board
  2365. type: string
  2366. x-nullable: true
  2367. subtasksDefaultBoardId:
  2368. description: |
  2369. The default board ID assigned to subtasks.
  2370. type: string
  2371. x-nullable: true
  2372. subtasksDefaultListId:
  2373. description: |
  2374. The default List ID assigned to subtasks.
  2375. type: string
  2376. x-nullable: true
  2377. dateSettingsDefaultBoardId:
  2378. type: string
  2379. x-nullable: true
  2380. dateSettingsDefaultListId:
  2381. type: string
  2382. x-nullable: true
  2383. allowsSubtasks:
  2384. description: |
  2385. Does the board allows subtasks?
  2386. type: boolean
  2387. allowsAttachments:
  2388. description: |
  2389. Does the board allows attachments?
  2390. type: boolean
  2391. allowsChecklists:
  2392. description: |
  2393. Does the board allows checklists?
  2394. type: boolean
  2395. allowsComments:
  2396. description: |
  2397. Does the board allows comments?
  2398. type: boolean
  2399. allowsDescriptionTitle:
  2400. description: |
  2401. Does the board allows description title?
  2402. type: boolean
  2403. allowsDescriptionText:
  2404. description: |
  2405. Does the board allows description text?
  2406. type: boolean
  2407. allowsActivities:
  2408. description: |
  2409. Does the board allows comments?
  2410. type: boolean
  2411. allowsLabels:
  2412. description: |
  2413. Does the board allows labels?
  2414. type: boolean
  2415. allowsAssignee:
  2416. description: |
  2417. Does the board allows assignee?
  2418. type: boolean
  2419. allowsMembers:
  2420. description: |
  2421. Does the board allows members?
  2422. type: boolean
  2423. allowsRequestedBy:
  2424. description: |
  2425. Does the board allows requested by?
  2426. type: boolean
  2427. allowsAssignedBy:
  2428. description: |
  2429. Does the board allows requested by?
  2430. type: boolean
  2431. allowsReceivedDate:
  2432. description: |
  2433. Does the board allows received date?
  2434. type: boolean
  2435. allowsStartDate:
  2436. description: |
  2437. Does the board allows start date?
  2438. type: boolean
  2439. allowsEndDate:
  2440. description: |
  2441. Does the board allows end date?
  2442. type: boolean
  2443. allowsDueDate:
  2444. description: |
  2445. Does the board allows due date?
  2446. type: boolean
  2447. presentParentTask:
  2448. description: |
  2449. Controls how to present the parent task:
  2450. - `prefix-with-full-path`: add a prefix with the full path
  2451. - `prefix-with-parent`: add a prefisx with the parent name
  2452. - `subtext-with-full-path`: add a subtext with the full path
  2453. - `subtext-with-parent`: add a subtext with the parent name
  2454. - `no-parent`: does not show the parent at all
  2455. type: string
  2456. enum:
  2457. - prefix-with-full-path
  2458. - prefix-with-parent
  2459. - subtext-with-full-path
  2460. - subtext-with-parent
  2461. - no-parent
  2462. x-nullable: true
  2463. startAt:
  2464. description: |
  2465. Starting date of the board.
  2466. type: string
  2467. x-nullable: true
  2468. dueAt:
  2469. description: |
  2470. Due date of the board.
  2471. type: string
  2472. x-nullable: true
  2473. endAt:
  2474. description: |
  2475. End date of the board.
  2476. type: string
  2477. x-nullable: true
  2478. spentTime:
  2479. description: |
  2480. Time spent in the board.
  2481. type: number
  2482. x-nullable: true
  2483. isOvertime:
  2484. description: |
  2485. Is the board overtimed?
  2486. type: boolean
  2487. x-nullable: true
  2488. type:
  2489. description: |
  2490. The type of board
  2491. type: string
  2492. sort:
  2493. description: |
  2494. Sort value
  2495. type: number
  2496. required:
  2497. - title
  2498. - slug
  2499. - archived
  2500. - createdAt
  2501. - stars
  2502. - labels
  2503. - members
  2504. - permission
  2505. - color
  2506. - allowsSubtasks
  2507. - allowsAttachments
  2508. - allowsChecklists
  2509. - allowsComments
  2510. - allowsDescriptionTitle
  2511. - allowsDescriptionText
  2512. - allowsActivities
  2513. - allowsLabels
  2514. - allowsAssignee
  2515. - allowsMembers
  2516. - allowsRequestedBy
  2517. - allowsAssignedBy
  2518. - allowsReceivedDate
  2519. - allowsStartDate
  2520. - allowsEndDate
  2521. - allowsDueDate
  2522. - type
  2523. - sort
  2524. BoardsLabels:
  2525. type: object
  2526. properties:
  2527. _id:
  2528. description: |
  2529. Unique id of a label
  2530. type: string
  2531. name:
  2532. description: |
  2533. Name of a label
  2534. type: string
  2535. color:
  2536. description: |
  2537. color of a label.
  2538. Can be amongst `green`, `yellow`, `orange`, `red`, `purple`,
  2539. `blue`, `sky`, `lime`, `pink`, `black`,
  2540. `silver`, `peachpuff`, `crimson`, `plum`, `darkgreen`,
  2541. `slateblue`, `magenta`, `gold`, `navy`, `gray`,
  2542. `saddlebrown`, `paleturquoise`, `mistyrose`, `indigo`
  2543. type: string
  2544. enum:
  2545. - green
  2546. - yellow
  2547. - orange
  2548. - red
  2549. - purple
  2550. - blue
  2551. - sky
  2552. - lime
  2553. - pink
  2554. - black
  2555. - silver
  2556. - peachpuff
  2557. - crimson
  2558. - plum
  2559. - darkgreen
  2560. - slateblue
  2561. - magenta
  2562. - gold
  2563. - navy
  2564. - gray
  2565. - saddlebrown
  2566. - paleturquoise
  2567. - mistyrose
  2568. - indigo
  2569. required:
  2570. - _id
  2571. - color
  2572. BoardsMembers:
  2573. type: object
  2574. properties:
  2575. userId:
  2576. description: |
  2577. The uniq ID of the member
  2578. type: string
  2579. isAdmin:
  2580. description: |
  2581. Is the member an admin of the board?
  2582. type: boolean
  2583. isActive:
  2584. description: |
  2585. Is the member active?
  2586. type: boolean
  2587. isNoComments:
  2588. description: |
  2589. Is the member not allowed to make comments
  2590. type: boolean
  2591. isCommentOnly:
  2592. description: |
  2593. Is the member only allowed to comment on the board
  2594. type: boolean
  2595. isWorker:
  2596. description: |
  2597. Is the member only allowed to move card, assign himself to card and comment
  2598. type: boolean
  2599. required:
  2600. - userId
  2601. - isAdmin
  2602. - isActive
  2603. CardComments:
  2604. type: object
  2605. description: A comment on a card
  2606. properties:
  2607. boardId:
  2608. description: |
  2609. the board ID
  2610. type: string
  2611. cardId:
  2612. description: |
  2613. the card ID
  2614. type: string
  2615. text:
  2616. description: |
  2617. the text of the comment
  2618. type: string
  2619. createdAt:
  2620. description: |
  2621. when was the comment created
  2622. type: string
  2623. modifiedAt:
  2624. type: string
  2625. userId:
  2626. description: |
  2627. the author ID of the comment
  2628. type: string
  2629. required:
  2630. - boardId
  2631. - cardId
  2632. - text
  2633. - createdAt
  2634. - modifiedAt
  2635. - userId
  2636. Cards:
  2637. type: object
  2638. properties:
  2639. title:
  2640. description: |
  2641. the title of the card
  2642. type: string
  2643. x-nullable: true
  2644. archived:
  2645. description: |
  2646. is the card archived
  2647. type: boolean
  2648. parentId:
  2649. description: |
  2650. ID of the parent card
  2651. type: string
  2652. x-nullable: true
  2653. listId:
  2654. description: |
  2655. List ID where the card is
  2656. type: string
  2657. x-nullable: true
  2658. swimlaneId:
  2659. description: |
  2660. Swimlane ID where the card is
  2661. type: string
  2662. boardId:
  2663. description: |
  2664. Board ID of the card
  2665. type: string
  2666. x-nullable: true
  2667. coverId:
  2668. description: |
  2669. Cover ID of the card
  2670. type: string
  2671. x-nullable: true
  2672. color:
  2673. type: string
  2674. enum:
  2675. - white
  2676. - green
  2677. - yellow
  2678. - orange
  2679. - red
  2680. - purple
  2681. - blue
  2682. - sky
  2683. - lime
  2684. - pink
  2685. - black
  2686. - silver
  2687. - peachpuff
  2688. - crimson
  2689. - plum
  2690. - darkgreen
  2691. - slateblue
  2692. - magenta
  2693. - gold
  2694. - navy
  2695. - gray
  2696. - saddlebrown
  2697. - paleturquoise
  2698. - mistyrose
  2699. - indigo
  2700. x-nullable: true
  2701. createdAt:
  2702. description: |
  2703. creation date
  2704. type: string
  2705. modifiedAt:
  2706. type: string
  2707. customFields:
  2708. description: |
  2709. list of custom fields
  2710. type: array
  2711. items:
  2712. $ref: "#/definitions/CardsCustomfields"
  2713. x-nullable: true
  2714. dateLastActivity:
  2715. description: |
  2716. Date of last activity
  2717. type: string
  2718. description:
  2719. description: |
  2720. description of the card
  2721. type: string
  2722. x-nullable: true
  2723. requestedBy:
  2724. description: |
  2725. who requested the card (ID of the user)
  2726. type: string
  2727. x-nullable: true
  2728. assignedBy:
  2729. description: |
  2730. who assigned the card (ID of the user)
  2731. type: string
  2732. x-nullable: true
  2733. labelIds:
  2734. description: |
  2735. list of labels ID the card has
  2736. type: array
  2737. items:
  2738. type: string
  2739. x-nullable: true
  2740. x-nullable: true
  2741. members:
  2742. description: |
  2743. list of members (user IDs)
  2744. type: array
  2745. items:
  2746. type: string
  2747. x-nullable: true
  2748. x-nullable: true
  2749. assignees:
  2750. description: |
  2751. who is assignee of the card (user ID),
  2752. maximum one ID of assignee in array.
  2753. type: array
  2754. items:
  2755. type: string
  2756. x-nullable: true
  2757. x-nullable: true
  2758. receivedAt:
  2759. description: |
  2760. Date the card was received
  2761. type: string
  2762. x-nullable: true
  2763. startAt:
  2764. description: |
  2765. Date the card was started to be worked on
  2766. type: string
  2767. x-nullable: true
  2768. dueAt:
  2769. description: |
  2770. Date the card is due
  2771. type: string
  2772. x-nullable: true
  2773. endAt:
  2774. description: |
  2775. Date the card ended
  2776. type: string
  2777. x-nullable: true
  2778. spentTime:
  2779. description: |
  2780. How much time has been spent on this
  2781. type: number
  2782. x-nullable: true
  2783. isOvertime:
  2784. description: |
  2785. is the card over time?
  2786. type: boolean
  2787. x-nullable: true
  2788. userId:
  2789. description: |
  2790. user ID of the author of the card
  2791. type: string
  2792. sort:
  2793. description: |
  2794. Sort value
  2795. type: number
  2796. subtaskSort:
  2797. description: |
  2798. subtask sort value
  2799. type: number
  2800. x-nullable: true
  2801. type:
  2802. description: |
  2803. type of the card
  2804. type: string
  2805. linkedId:
  2806. description: |
  2807. ID of the linked card
  2808. type: string
  2809. x-nullable: true
  2810. vote:
  2811. description: |
  2812. vote object, see below
  2813. $ref: "#/definitions/CardsVote"
  2814. x-nullable: true
  2815. required:
  2816. - archived
  2817. - swimlaneId
  2818. - createdAt
  2819. - modifiedAt
  2820. - dateLastActivity
  2821. - userId
  2822. - sort
  2823. - type
  2824. CardsVote:
  2825. type: object
  2826. properties:
  2827. question:
  2828. type: string
  2829. positive:
  2830. description: |
  2831. list of members (user IDs)
  2832. type: array
  2833. items:
  2834. type: string
  2835. x-nullable: true
  2836. negative:
  2837. description: |
  2838. list of members (user IDs)
  2839. type: array
  2840. items:
  2841. type: string
  2842. x-nullable: true
  2843. end:
  2844. type: string
  2845. public:
  2846. type: boolean
  2847. allowNonBoardMembers:
  2848. type: boolean
  2849. required:
  2850. - question
  2851. - public
  2852. - allowNonBoardMembers
  2853. CardsCustomfields:
  2854. type: object
  2855. ChecklistItems:
  2856. type: object
  2857. description: An item in a checklist
  2858. properties:
  2859. title:
  2860. description: |
  2861. the text of the item
  2862. type: string
  2863. sort:
  2864. description: |
  2865. the sorting field of the item
  2866. type: number
  2867. isFinished:
  2868. description: |
  2869. Is the item checked?
  2870. type: boolean
  2871. checklistId:
  2872. description: |
  2873. the checklist ID the item is attached to
  2874. type: string
  2875. cardId:
  2876. description: |
  2877. the card ID the item is attached to
  2878. type: string
  2879. createdAt:
  2880. type: string
  2881. x-nullable: true
  2882. modifiedAt:
  2883. type: string
  2884. required:
  2885. - title
  2886. - sort
  2887. - isFinished
  2888. - checklistId
  2889. - cardId
  2890. - modifiedAt
  2891. Checklists:
  2892. type: object
  2893. description: A Checklist
  2894. properties:
  2895. cardId:
  2896. description: |
  2897. The ID of the card the checklist is in
  2898. type: string
  2899. title:
  2900. description: |
  2901. the title of the checklist
  2902. type: string
  2903. finishedAt:
  2904. description: |
  2905. When was the checklist finished
  2906. type: string
  2907. x-nullable: true
  2908. createdAt:
  2909. description: |
  2910. Creation date of the checklist
  2911. type: string
  2912. modifiedAt:
  2913. type: string
  2914. sort:
  2915. description: |
  2916. sorting value of the checklist
  2917. type: number
  2918. required:
  2919. - cardId
  2920. - title
  2921. - createdAt
  2922. - modifiedAt
  2923. - sort
  2924. CustomFields:
  2925. type: object
  2926. description: A custom field on a card in the board
  2927. properties:
  2928. boardIds:
  2929. description: |
  2930. the ID of the board
  2931. type: array
  2932. items:
  2933. type: string
  2934. name:
  2935. description: |
  2936. name of the custom field
  2937. type: string
  2938. type:
  2939. description: |
  2940. type of the custom field
  2941. type: string
  2942. enum:
  2943. - text
  2944. - number
  2945. - date
  2946. - dropdown
  2947. - currency
  2948. settings:
  2949. description: |
  2950. settings of the custom field
  2951. $ref: "#/definitions/CustomFieldsSettings"
  2952. showOnCard:
  2953. description: |
  2954. should we show on the cards this custom field
  2955. type: boolean
  2956. automaticallyOnCard:
  2957. description: |
  2958. should the custom fields automatically be added on cards?
  2959. type: boolean
  2960. showLabelOnMiniCard:
  2961. description: |
  2962. should the label of the custom field be shown on minicards?
  2963. type: boolean
  2964. createdAt:
  2965. type: string
  2966. x-nullable: true
  2967. modifiedAt:
  2968. type: string
  2969. required:
  2970. - boardIds
  2971. - name
  2972. - type
  2973. - settings
  2974. - showOnCard
  2975. - automaticallyOnCard
  2976. - showLabelOnMiniCard
  2977. - modifiedAt
  2978. CustomFieldsSettings:
  2979. type: object
  2980. properties:
  2981. currencyCode:
  2982. type: string
  2983. dropdownItems:
  2984. description: |
  2985. list of drop down items objects
  2986. type: array
  2987. items:
  2988. $ref: "#/definitions/CustomFieldsSettingsDropdownitems"
  2989. CustomFieldsSettingsDropdownitems:
  2990. type: object
  2991. Integrations:
  2992. type: object
  2993. description: Integration with third-party applications
  2994. properties:
  2995. enabled:
  2996. description: |
  2997. is the integration enabled?
  2998. type: boolean
  2999. title:
  3000. description: |
  3001. name of the integration
  3002. type: string
  3003. x-nullable: true
  3004. type:
  3005. description: |
  3006. type of the integratation (Default to 'outgoing-webhooks')
  3007. type: string
  3008. activities:
  3009. description: |
  3010. activities the integration gets triggered (list)
  3011. type: array
  3012. items:
  3013. type: string
  3014. url:
  3015. type: string
  3016. token:
  3017. description: |
  3018. token of the integration
  3019. type: string
  3020. x-nullable: true
  3021. boardId:
  3022. description: |
  3023. Board ID of the integration
  3024. type: string
  3025. createdAt:
  3026. description: |
  3027. Creation date of the integration
  3028. type: string
  3029. modifiedAt:
  3030. type: string
  3031. userId:
  3032. description: |
  3033. user ID who created the interation
  3034. type: string
  3035. required:
  3036. - enabled
  3037. - type
  3038. - activities
  3039. - url
  3040. - boardId
  3041. - createdAt
  3042. - modifiedAt
  3043. - userId
  3044. Lists:
  3045. type: object
  3046. description: A list (column) in the Wekan board.
  3047. properties:
  3048. title:
  3049. description: |
  3050. the title of the list
  3051. type: string
  3052. starred:
  3053. description: |
  3054. if a list is stared
  3055. then we put it on the top
  3056. type: boolean
  3057. x-nullable: true
  3058. archived:
  3059. description: |
  3060. is the list archived
  3061. type: boolean
  3062. boardId:
  3063. description: |
  3064. the board associated to this list
  3065. type: string
  3066. swimlaneId:
  3067. description: |
  3068. the swimlane associated to this list. Used for templates
  3069. type: string
  3070. createdAt:
  3071. description: |
  3072. creation date
  3073. type: string
  3074. sort:
  3075. description: |
  3076. is the list sorted
  3077. type: number
  3078. x-nullable: true
  3079. updatedAt:
  3080. description: |
  3081. last update of the list
  3082. type: string
  3083. x-nullable: true
  3084. modifiedAt:
  3085. type: string
  3086. wipLimit:
  3087. description: |
  3088. WIP object, see below
  3089. $ref: "#/definitions/ListsWiplimit"
  3090. x-nullable: true
  3091. color:
  3092. description: |
  3093. the color of the list
  3094. type: string
  3095. enum:
  3096. - white
  3097. - green
  3098. - yellow
  3099. - orange
  3100. - red
  3101. - purple
  3102. - blue
  3103. - sky
  3104. - lime
  3105. - pink
  3106. - black
  3107. - peachpuff
  3108. - crimson
  3109. - plum
  3110. - darkgreen
  3111. - slateblue
  3112. - magenta
  3113. - gold
  3114. - navy
  3115. - gray
  3116. - saddlebrown
  3117. - paleturquoise
  3118. - mistyrose
  3119. - indigo
  3120. x-nullable: true
  3121. type:
  3122. description: |
  3123. The type of list
  3124. type: string
  3125. required:
  3126. - title
  3127. - archived
  3128. - boardId
  3129. - swimlaneId
  3130. - createdAt
  3131. - modifiedAt
  3132. - type
  3133. ListsWiplimit:
  3134. type: object
  3135. properties:
  3136. value:
  3137. description: |
  3138. value of the WIP
  3139. type: number
  3140. enabled:
  3141. description: |
  3142. is the WIP enabled
  3143. type: boolean
  3144. soft:
  3145. description: |
  3146. is the WIP a soft or hard requirement
  3147. type: boolean
  3148. required:
  3149. - value
  3150. - enabled
  3151. - soft
  3152. Swimlanes:
  3153. type: object
  3154. description: A swimlane is an line in the kaban board.
  3155. properties:
  3156. title:
  3157. description: |
  3158. the title of the swimlane
  3159. type: string
  3160. archived:
  3161. description: |
  3162. is the swimlane archived?
  3163. type: boolean
  3164. boardId:
  3165. description: |
  3166. the ID of the board the swimlane is attached to
  3167. type: string
  3168. createdAt:
  3169. description: |
  3170. creation date of the swimlane
  3171. type: string
  3172. sort:
  3173. description: |
  3174. the sort value of the swimlane
  3175. type: number
  3176. x-nullable: true
  3177. color:
  3178. description: |
  3179. the color of the swimlane
  3180. type: string
  3181. enum:
  3182. - white
  3183. - green
  3184. - yellow
  3185. - orange
  3186. - red
  3187. - purple
  3188. - blue
  3189. - sky
  3190. - lime
  3191. - pink
  3192. - black
  3193. - peachpuff
  3194. - crimson
  3195. - plum
  3196. - darkgreen
  3197. - slateblue
  3198. - magenta
  3199. - gold
  3200. - navy
  3201. - gray
  3202. - saddlebrown
  3203. - paleturquoise
  3204. - mistyrose
  3205. - indigo
  3206. x-nullable: true
  3207. updatedAt:
  3208. description: |
  3209. when was the swimlane last edited
  3210. type: string
  3211. x-nullable: true
  3212. modifiedAt:
  3213. type: string
  3214. type:
  3215. description: |
  3216. The type of swimlane
  3217. type: string
  3218. required:
  3219. - title
  3220. - archived
  3221. - boardId
  3222. - createdAt
  3223. - modifiedAt
  3224. - type
  3225. Users:
  3226. type: object
  3227. description: A User in wekan
  3228. properties:
  3229. username:
  3230. description: |
  3231. the username of the user
  3232. type: string
  3233. x-nullable: true
  3234. emails:
  3235. description: |
  3236. the list of emails attached to a user
  3237. type: array
  3238. items:
  3239. $ref: "#/definitions/UsersEmails"
  3240. x-nullable: true
  3241. createdAt:
  3242. description: |
  3243. creation date of the user
  3244. type: string
  3245. modifiedAt:
  3246. type: string
  3247. profile:
  3248. description: |
  3249. profile settings
  3250. $ref: "#/definitions/UsersProfile"
  3251. x-nullable: true
  3252. services:
  3253. description: |
  3254. services field of the user
  3255. type: object
  3256. x-nullable: true
  3257. heartbeat:
  3258. description: |
  3259. last time the user has been seen
  3260. type: string
  3261. x-nullable: true
  3262. isAdmin:
  3263. description: |
  3264. is the user an admin of the board?
  3265. type: boolean
  3266. x-nullable: true
  3267. createdThroughApi:
  3268. description: |
  3269. was the user created through the API?
  3270. type: boolean
  3271. x-nullable: true
  3272. loginDisabled:
  3273. description: |
  3274. loginDisabled field of the user
  3275. type: boolean
  3276. x-nullable: true
  3277. authenticationMethod:
  3278. description: |
  3279. authentication method of the user
  3280. type: string
  3281. required:
  3282. - createdAt
  3283. - modifiedAt
  3284. - authenticationMethod
  3285. UsersEmails:
  3286. type: object
  3287. properties:
  3288. address:
  3289. description: |
  3290. The email address
  3291. type: string
  3292. verified:
  3293. description: |
  3294. Has the email been verified
  3295. type: boolean
  3296. required:
  3297. - address
  3298. - verified
  3299. UsersProfile:
  3300. type: object
  3301. properties:
  3302. avatarUrl:
  3303. description: |
  3304. URL of the avatar of the user
  3305. type: string
  3306. emailBuffer:
  3307. description: |
  3308. list of email buffers of the user
  3309. type: array
  3310. items:
  3311. type: string
  3312. x-nullable: true
  3313. fullname:
  3314. description: |
  3315. full name of the user
  3316. type: string
  3317. showDesktopDragHandles:
  3318. description: |
  3319. does the user want to hide system messages?
  3320. type: boolean
  3321. hideCheckedItems:
  3322. description: |
  3323. does the user want to hide checked checklist items?
  3324. type: boolean
  3325. hiddenSystemMessages:
  3326. description: |
  3327. does the user want to hide system messages?
  3328. type: boolean
  3329. hiddenMinicardLabelText:
  3330. description: |
  3331. does the user want to hide minicard label texts?
  3332. type: boolean
  3333. initials:
  3334. description: |
  3335. initials of the user
  3336. type: string
  3337. invitedBoards:
  3338. description: |
  3339. board IDs the user has been invited to
  3340. type: array
  3341. items:
  3342. type: string
  3343. x-nullable: true
  3344. language:
  3345. description: |
  3346. language of the user
  3347. type: string
  3348. notifications:
  3349. description: |
  3350. enabled notifications for the user
  3351. type: array
  3352. items:
  3353. $ref: "#/definitions/UsersProfileNotifications"
  3354. activity:
  3355. description: |
  3356. The id of the activity this notification references
  3357. type: string
  3358. read:
  3359. description: |
  3360. the date on which this notification was read
  3361. type: string
  3362. showCardsCountAt:
  3363. description: |
  3364. showCardCountAt field of the user
  3365. type: number
  3366. startDayOfWeek:
  3367. description: |
  3368. startDayOfWeek field of the user
  3369. type: number
  3370. starredBoards:
  3371. description: |
  3372. list of starred board IDs
  3373. type: array
  3374. items:
  3375. type: string
  3376. x-nullable: true
  3377. icode:
  3378. description: |
  3379. icode
  3380. type: string
  3381. boardView:
  3382. description: |
  3383. boardView field of the user
  3384. type: string
  3385. enum:
  3386. - board-view-swimlanes
  3387. - board-view-lists
  3388. - board-view-cal
  3389. listSortBy:
  3390. description: |
  3391. default sort list for user
  3392. type: string
  3393. enum:
  3394. - -modifiedat
  3395. - modifiedat
  3396. - -title
  3397. - title
  3398. - -sort
  3399. - sort
  3400. templatesBoardId:
  3401. description: |
  3402. Reference to the templates board
  3403. type: string
  3404. cardTemplatesSwimlaneId:
  3405. description: |
  3406. Reference to the card templates swimlane Id
  3407. type: string
  3408. listTemplatesSwimlaneId:
  3409. description: |
  3410. Reference to the list templates swimlane Id
  3411. type: string
  3412. boardTemplatesSwimlaneId:
  3413. description: |
  3414. Reference to the board templates swimlane Id
  3415. type: string
  3416. required:
  3417. - activity
  3418. - templatesBoardId
  3419. - cardTemplatesSwimlaneId
  3420. - listTemplatesSwimlaneId
  3421. - boardTemplatesSwimlaneId