Wekan REST API v4.91
+Wekan REST API v4.92
@@ -3282,6 +3287,7 @@ System.out.println(response.toString()); "title": "string", "slug": "string", "archived": true, + "archivedAt": "string", "createdAt": "string", "modifiedAt": "string", "stars": 0, @@ -8086,6 +8092,7 @@ System.out.println(response.toString());Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
{
"title": "string",
"archived": true,
+ "archivedAt": "string",
"parentId": "string",
"listId": "string",
"swimlaneId": "string",
@@ -12192,6 +12199,7 @@ System.out.println(response.toString());
"title": "string",
"starred": true,
"archived": true,
+ "archivedAt": "string",
"boardId": "string",
"swimlaneId": "string",
"createdAt": "string",
@@ -12968,6 +12976,209 @@ System.out.println(response.toString());
To perform this operation, you must be authenticated by means of one of the following methods:
UserSecurity
+create_user_token
+
+
+Code samples
+
+# You can also use wget
+curl -X POST /api/createtoken/{user} \
+ -H 'Accept: application/json' \
+ -H 'Authorization: API_KEY'
+
+
+POST /api/createtoken/{user} HTTP/1.1
+
+Accept: application/json
+
+
+var headers = {
+ 'Accept':'application/json',
+ 'Authorization':'API_KEY'
+
+};
+
+$.ajax({
+ url: '/api/createtoken/{user}',
+ method: 'post',
+
+ headers: headers,
+ success: function(data) {
+ console.log(JSON.stringify(data));
+ }
+})
+
+
+const fetch = require('node-fetch');
+
+const headers = {
+ 'Accept':'application/json',
+ 'Authorization':'API_KEY'
+
+};
+
+fetch('/api/createtoken/{user}',
+{
+ method: 'POST',
+
+ headers: headers
+})
+.then(function(res) {
+ return res.json();
+}).then(function(body) {
+ console.log(body);
+});
+
+
+require 'rest-client'
+require 'json'
+
+headers = {
+ 'Accept' => 'application/json',
+ 'Authorization' => 'API_KEY'
+}
+
+result = RestClient.post '/api/createtoken/{user}',
+ params: {
+ }, headers: headers
+
+p JSON.parse(result)
+
+
+import requests
+headers = {
+ 'Accept': 'application/json',
+ 'Authorization': 'API_KEY'
+}
+
+r = requests.post('/api/createtoken/{user}', params={
+
+}, headers = headers)
+
+print r.json()
+
+
+URL obj = new URL("/api/createtoken/{user}");
+HttpURLConnection con = (HttpURLConnection) obj.openConnection();
+con.setRequestMethod("POST");
+int responseCode = con.getResponseCode();
+BufferedReader in = new BufferedReader(
+ new InputStreamReader(con.getInputStream()));
+String inputLine;
+StringBuffer response = new StringBuffer();
+while ((inputLine = in.readLine()) != null) {
+ response.append(inputLine);
+}
+in.close();
+System.out.println(response.toString());
+
+
+package main
+
+import (
+ "bytes"
+ "net/http"
+)
+
+func main() {
+
+ headers := map[string][]string{
+ "Accept": []string{"application/json"},
+ "Authorization": []string{"API_KEY"},
+
+ }
+
+ data := bytes.NewBuffer([]byte{jsonReq})
+ req, err := http.NewRequest("POST", "/api/createtoken/{user}", data)
+ req.Header = headers
+
+ client := &http.Client{}
+ resp, err := client.Do(req)
+ // ...
+}
+
+
+POST /api/createtoken/{user}
+Create a user token
+Only the admin user (the first user) can call the REST API.
+Parameters
+
+
+
+Name
+In
+Type
+Required
+Description
+
+
+
+
+user
+path
+string
+true
+the ID of the user to create token for.
+
+
+
+Detailed descriptions
+user: the ID of the user to create token for.
+
+Example responses
+
+
+200 Response
+
+{
+ "_id": "string"
+}
+
+Responses
+
+
+
+Status
+Meaning
+Description
+Schema
+
+
+
+
+200
+OK
+200 response
+Inline
+
+
+
+Response Schema
+Status Code 200
+
+
+
+Name
+Type
+Required
+Restrictions
+Description
+
+
+
+
+ยป _id
+string
+false
+none
+none
+
+
+
+
get_current_user
@@ -13148,7 +13359,10 @@ System.out.println(response.toString());
"sessionData": {
"totalHits": 0,
"lastHit": 0
- }
+ },
+ "importUsernames": [
+ "string"
+ ]
}
Responses
@@ -13809,7 +14023,10 @@ System.out.println(response.toString()); "sessionData": { "totalHits": 0, "lastHit": 0 - } + }, + "importUsernames": [ + "string" + ] }Responses
@@ -14892,6 +15109,7 @@ System.out.println(response.toString());{
"title": "string",
"archived": true,
+ "archivedAt": "string",
"boardId": "string",
"createdAt": "string",
"sort": 0,
@@ -15142,6 +15360,7 @@ UserSecurity
"title": "string",
"slug": "string",
"archived": true,
+ "archivedAt": "string",
"createdAt": "string",
"modifiedAt": "string",
"stars": 0,
@@ -15231,6 +15450,13 @@ UserSecurity
Is the board archived?
+archivedAt
+string|null
+false
+none
+Latest archiving time of the board
+
+
createdAt
string
true
@@ -15880,6 +16106,7 @@ UserSecurity
{
"title": "string",
"archived": true,
+ "archivedAt": "string",
"parentId": "string",
"listId": "string",
"swimlaneId": "string",
@@ -15957,6 +16184,13 @@ UserSecurity
is the card archived
+archivedAt
+string|null
+false
+none
+latest archiving date
+
+
parentId
string|null
false
@@ -16787,6 +17021,7 @@ UserSecurity
"title": "string",
"starred": true,
"archived": true,
+ "archivedAt": "string",
"boardId": "string",
"swimlaneId": "string",
"createdAt": "string",
@@ -16838,6 +17073,13 @@ UserSecurity
is the list archived
+archivedAt
+string|null
+false
+none
+latest archiving date
+
+
boardId
string
true
@@ -17058,6 +17300,7 @@ UserSecurity
{
"title": "string",
"archived": true,
+ "archivedAt": "string",
"boardId": "string",
"createdAt": "string",
"sort": 0,
@@ -17096,6 +17339,13 @@ UserSecurity
is the swimlane archived?
+archivedAt
+string|null
+false
+none
+latest archiving date of the swimlane
+
+
boardId
string
true
@@ -17305,7 +17555,10 @@ UserSecurity
"sessionData": {
"totalHits": 0,
"lastHit": 0
- }
+ },
+ "importUsernames": [
+ "string"
+ ]
}
@@ -17406,6 +17659,13 @@ UserSecurity
none
profile settings
+
+importUsernames
+[string]|null
+false
+none
+username for imported
+
UsersEmails
diff --git a/public/api/wekan.yml b/public/api/wekan.yml
index 63be097b8..01849e4d8 100644
--- a/public/api/wekan.yml
+++ b/public/api/wekan.yml
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
- version: v4.91
+ version: v4.92
description: |
The REST API allows you to control and extend Wekan with ease.
@@ -245,46 +245,6 @@ paths:
type: string
defaultSwimlaneId:
type: string
- /api/createtoken/{user}:
- post:
- operationId: createtoken
- summary: CreateToken for a user with REST API
- description: |
- Only the admin user (the first user) can call the REST API.
- consumes:
- - application/x-www-form-urlencoded
- - application/json
- tags:
- - Login
- parameters:
- - name: user
- in: path
- description: |
- the user ID
- type: string
- required: true
- responses:
- 200:
- description: |-
- Successful
- schema:
- items:
- properties:
- id:
- type: string
- token:
- type: string
- 400:
- description: |
- Error
- schema:
- items:
- properties:
- error:
- type: number
- reason:
- type: string
-
/api/boards/{board}:
get:
operationId: get_board
@@ -2176,6 +2136,37 @@ paths:
type: string
listId:
type: string
+ /api/createtoken/{user}:
+ post:
+ operationId: create_user_token
+ summary: Create a user token
+ description: |
+ Only the admin user (the first user) can call the REST API.
+ tags:
+ - Users
+ consumes:
+ - multipart/form-data
+ - application/json
+ parameters:
+ - name: user
+ in: path
+ description: |
+ the ID of the user to create token for.
+ type: string
+ required: true
+ produces:
+ - application/json
+ security:
+ - UserSecurity: []
+ responses:
+ '200':
+ description: |-
+ 200 response
+ schema:
+ type: object
+ properties:
+ _id:
+ type: string
/api/user:
get:
operationId: get_current_user
@@ -2401,6 +2392,11 @@ definitions:
description: |
Is the board archived?
type: boolean
+ archivedAt:
+ description: |
+ Latest archiving time of the board
+ type: string
+ x-nullable: true
createdAt:
description: |
Creation time of the board
@@ -2742,6 +2738,11 @@ definitions:
description: |
is the card archived
type: boolean
+ archivedAt:
+ description: |
+ latest archiving date
+ type: string
+ x-nullable: true
parentId:
description: |
ID of the parent card
@@ -3162,6 +3163,11 @@ definitions:
description: |
is the list archived
type: boolean
+ archivedAt:
+ description: |
+ latest archiving date
+ type: string
+ x-nullable: true
boardId:
description: |
the board associated to this list
@@ -3264,6 +3270,11 @@ definitions:
description: |
is the swimlane archived?
type: boolean
+ archivedAt:
+ description: |
+ latest archiving date of the swimlane
+ type: string
+ x-nullable: true
boardId:
description: |
the ID of the board the swimlane is attached to
@@ -3386,6 +3397,14 @@ definitions:
profile settings
$ref: "#/definitions/UsersSessiondata"
x-nullable: true
+ importUsernames:
+ description: |
+ username for imported
+ type: array
+ items:
+ type: string
+ x-nullable: true
+ x-nullable: true
required:
- createdAt
- modifiedAt
diff --git a/sandstorm-pkgdef.capnp b/sandstorm-pkgdef.capnp
index efbf015f7..7d732e702 100644
--- a/sandstorm-pkgdef.capnp
+++ b/sandstorm-pkgdef.capnp
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
- appVersion = 491,
+ appVersion = 492,
# Increment this for every release.
- appMarketingVersion = (defaultText = "4.91.0~2021-01-29"),
+ appMarketingVersion = (defaultText = "4.92.0~2021-02-03"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,