diff --git a/server/api/limits.go b/server/api/limits.go index cf6b73f63..99ea43ca1 100644 --- a/server/api/limits.go +++ b/server/api/limits.go @@ -56,6 +56,12 @@ func (a *API) handleNotifyAdminUpgrade(w http.ResponseWriter, r *http.Request) { // --- // produces: // - application/json + // parameters: + // - name: teamID + // in: path + // description: Team ID + // required: true + // type: string // security: // - BearerAuth: [] // responses: diff --git a/server/api/search.go b/server/api/search.go index a84bef4b2..bdc1d4e34 100644 --- a/server/api/search.go +++ b/server/api/search.go @@ -267,7 +267,7 @@ func (a *API) handleSearchLinkableBoards(w http.ResponseWriter, r *http.Request) } func (a *API) handleSearchAllBoards(w http.ResponseWriter, r *http.Request) { - // swagger:operation GET /boards/search searchBoards + // swagger:operation GET /boards/search searchAllBoards // // Returns the boards that match with a search term // diff --git a/server/api/users.go b/server/api/users.go index d2d909fe5..368d6ca32 100644 --- a/server/api/users.go +++ b/server/api/users.go @@ -22,7 +22,7 @@ func (a *API) registerUsersRoutes(r *mux.Router) { } func (a *API) handleGetUsersList(w http.ResponseWriter, r *http.Request) { - // swagger:operation POST /users getUser + // swagger:operation POST /users getUsersList // // Returns a user[] // diff --git a/server/main/doc.go b/server/main/doc.go index ede43ced9..7d7427eba 100644 --- a/server/main/doc.go +++ b/server/main/doc.go @@ -2,25 +2,25 @@ // // Focalboard Server // -// Schemes: http, https -// Host: localhost -// BasePath: /api/v2 -// Version: 1.0.0 -// License: Custom https://github.com/mattermost/focalboard/blob/main/LICENSE.txt -// Contact: Focalboard https://www.focalboard.com +// Schemes: http, https +// Host: localhost +// BasePath: /api/v2 +// Version: 2.0.0 +// License: Custom https://github.com/mattermost/focalboard/blob/main/LICENSE.txt +// Contact: Focalboard https://www.focalboard.com // -// Consumes: -// - application/json +// Consumes: +// - application/json // -// Produces: -// - application/json +// Produces: +// - application/json // -// securityDefinitions: -// BearerAuth: -// type: apiKey -// name: Authorization -// in: header -// description: 'Pass session token using Bearer authentication, e.g. set header "Authorization: Bearer "' +// securityDefinitions: +// BearerAuth: +// type: apiKey +// name: Authorization +// in: header +// description: 'Pass session token using Bearer authentication, e.g. set header "Authorization: Bearer "' // // swagger:meta package main diff --git a/server/swagger/docs/html/.openapi-generator/VERSION b/server/swagger/docs/html/.openapi-generator/VERSION index 1e20ec35c..6d54bbd77 100644 --- a/server/swagger/docs/html/.openapi-generator/VERSION +++ b/server/swagger/docs/html/.openapi-generator/VERSION @@ -1 +1 @@ -5.4.0 \ No newline at end of file +6.0.1 \ No newline at end of file diff --git a/server/swagger/docs/html/index.html b/server/swagger/docs/html/index.html index fd66ff41a..6a2e8ff31 100644 --- a/server/swagger/docs/html/index.html +++ b/server/swagger/docs/html/index.html @@ -846,659 +846,7 @@ ul.nav-tabs { @@ -1906,6 +893,9 @@ ul.nav-tabs {
  • changePassword
  • +
  • + cloudLimits +
  • createBoard
  • @@ -1951,9 +941,15 @@ ul.nav-tabs {
  • getBoards
  • +
  • + getChannel +
  • getClientConfig
  • +
  • + getFile +
  • getMe
  • @@ -1984,9 +980,27 @@ ul.nav-tabs {
  • getUser
  • +
  • + getUserBoardsInsights +
  • getUserCategoryBoards
  • +
  • + getUserConfig +
  • +
  • + getUsersList +
  • +
  • + handleNotifyAdminUpgrade +
  • +
  • + handleTeamBoardsInsights +
  • +
  • + hello +
  • insertBoardsAndBlocks
  • @@ -2026,9 +1040,18 @@ ul.nav-tabs {
  • register
  • +
  • + searchAllBoards +
  • searchBoards
  • +
  • + searchLinkableBoards +
  • +
  • + searchMyChannels +
  • undeleteBlock
  • @@ -2066,7 +1089,7 @@ ul.nav-tabs {
    @@ -19875,10 +23103,11 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Workspace ID - BlockPatchBatch body = ; // BlockPatchBatch | + Object body = Object; // Object | + oas_any_type_not_mapped disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk patching) try { - apiInstance.patchBlocks(boardID, body); + apiInstance.patchBlocks(boardID, body, disableNotify); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBlocks"); e.printStackTrace(); @@ -19895,10 +23124,11 @@ public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Workspace ID - BlockPatchBatch body = ; // BlockPatchBatch | + Object body = Object; // Object | + oas_any_type_not_mapped disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk patching) try { - apiInstance.patchBlocks(boardID, body); + apiInstance.patchBlocks(boardID, body, disableNotify); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBlocks"); e.printStackTrace(); @@ -19922,10 +23152,12 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *boardID = boardID_example; // Workspace ID (default to null) -BlockPatchBatch *body = ; // +Object *body = Object; // +oas_any_type_not_mapped *disableNotify = ; // Disables notifications (for bulk patching) (optional) (default to null) [apiInstance patchBlocksWith:boardID body:body + disableNotify:disableNotify completionHandler: ^(NSError* error) { if (error) { NSLog(@"Error: %@", error); @@ -19947,7 +23179,10 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() var boardID = boardID_example; // {String} Workspace ID -var body = ; // {BlockPatchBatch} +var body = Object; // {Object} +var opts = { + 'disableNotify': // {oas_any_type_not_mapped} Disables notifications (for bulk patching) +}; var callback = function(error, data, response) { if (error) { @@ -19956,7 +23191,7 @@ var callback = function(error, data, response) { console.log('API called successfully.'); } }; -api.patchBlocks(boardID, body, callback); +api.patchBlocks(boardID, body, opts, callback);
    @@ -19984,10 +23219,11 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); var boardID = boardID_example; // String | Workspace ID (default to null) - var body = new BlockPatchBatch(); // BlockPatchBatch | + var body = Object; // Object | + var disableNotify = new oas_any_type_not_mapped(); // oas_any_type_not_mapped | Disables notifications (for bulk patching) (optional) (default to null) try { - apiInstance.patchBlocks(boardID, body); + apiInstance.patchBlocks(boardID, body, disableNotify); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.patchBlocks: " + e.Message ); } @@ -20009,10 +23245,11 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $boardID = boardID_example; // String | Workspace ID -$body = ; // BlockPatchBatch | +$body = Object; // Object | +$disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk patching) try { - $api_instance->patchBlocks($boardID, $body); + $api_instance->patchBlocks($boardID, $body, $disableNotify); } catch (Exception $e) { echo 'Exception when calling DefaultApi->patchBlocks: ', $e->getMessage(), PHP_EOL; } @@ -20032,10 +23269,11 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $boardID = boardID_example; # String | Workspace ID -my $body = WWW::OPenAPIClient::Object::BlockPatchBatch->new(); # BlockPatchBatch | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | +my $disableNotify = ; # oas_any_type_not_mapped | Disables notifications (for bulk patching) eval { - $api_instance->patchBlocks(boardID => $boardID, body => $body); + $api_instance->patchBlocks(boardID => $boardID, body => $body, disableNotify => $disableNotify); }; if ($@) { warn "Exception when calling DefaultApi->patchBlocks: $@\n"; @@ -20057,10 +23295,11 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() boardID = boardID_example # String | Workspace ID (default to null) -body = # BlockPatchBatch | +body = Object # Object | +disableNotify = # oas_any_type_not_mapped | Disables notifications (for bulk patching) (optional) (default to null) try: - api_instance.patch_blocks(boardID, body) + api_instance.patch_blocks(boardID, body, disableNotify=disableNotify) except ApiException as e: print("Exception when calling DefaultApi->patchBlocks: %s\n" % e) @@ -20070,10 +23309,11 @@ except ApiException as e: pub fn main() { let boardID = boardID_example; // String - let body = ; // BlockPatchBatch + let body = Object; // Object + let disableNotify = ; // oas_any_type_not_mapped let mut context = DefaultApi::Context::default(); - let result = client.patchBlocks(boardID, body, &context).wait(); + let result = client.patchBlocks(boardID, body, disableNotify, &context).wait(); println!("{:?}", result); } @@ -20169,6 +23409,33 @@ $(document).ready(function() { +
    Query parameters
    + + + + + + + + + +
    NameDescription
    disable_notify + + +
    +
    +
    + + oas_any_type_not_mapped + + +
    +Disables notifications (for bulk patching) +
    +
    +
    +
    +

    Responses

    @@ -20239,6 +23506,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -20300,23 +23571,7 @@ $(document).ready(function() { -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/boards/{boardID}" \ - -d '{ - "showDescription" : true, - "updatedProperties" : { - "key" : "{}" - }, - "icon" : "icon", - "deletedCardProperties" : [ "deletedCardProperties", "deletedCardProperties" ], - "description" : "description", - "updatedCardProperties" : [ { - "key" : "{}" - }, { - "key" : "{}" - } ], - "title" : "title", - "type" : "type", - "deletedProperties" : [ "deletedProperties", "deletedProperties" ] -}' + -d ''
    @@ -20341,10 +23596,10 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - BoardPatch body = ; // BoardPatch | + Object body = Object; // Object | try { - Board result = apiInstance.patchBoard(boardID, body); + Object result = apiInstance.patchBoard(boardID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBoard"); @@ -20362,10 +23617,10 @@ public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - BoardPatch body = ; // BoardPatch | + Object body = Object; // Object | try { - Board result = apiInstance.patchBoard(boardID, body); + Object result = apiInstance.patchBoard(boardID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBoard"); @@ -20390,11 +23645,11 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *boardID = boardID_example; // Board ID (default to null) -BoardPatch *body = ; // +Object *body = Object; // [apiInstance patchBoardWith:boardID body:body - completionHandler: ^(Board output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -20418,7 +23673,7 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() var boardID = boardID_example; // {String} Board ID -var body = ; // {BoardPatch} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -20455,10 +23710,10 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); var boardID = boardID_example; // String | Board ID (default to null) - var body = new BoardPatch(); // BoardPatch | + var body = Object; // Object | try { - Board result = apiInstance.patchBoard(boardID, body); + Object result = apiInstance.patchBoard(boardID, body); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.patchBoard: " + e.Message ); @@ -20481,7 +23736,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $boardID = boardID_example; // String | Board ID -$body = ; // BoardPatch | +$body = Object; // Object | try { $result = $api_instance->patchBoard($boardID, $body); @@ -20505,7 +23760,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $boardID = boardID_example; # String | Board ID -my $body = WWW::OPenAPIClient::Object::BoardPatch->new(); # BoardPatch | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { my $result = $api_instance->patchBoard(boardID => $boardID, body => $body); @@ -20531,7 +23786,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() boardID = boardID_example # String | Board ID (default to null) -body = # BoardPatch | +body = Object # Object | try: api_response = api_instance.patch_board(boardID, body) @@ -20545,7 +23800,7 @@ except ApiException as e: pub fn main() { let boardID = boardID_example; // String - let body = ; // BoardPatch + let body = Object; // Object let mut context = DefaultApi::Context::default(); let result = client.patchBoard(boardID, body, &context).wait(); @@ -20692,6 +23947,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -20780,6 +24039,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -20841,64 +24104,7 @@ $(document).ready(function() { -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/boards-and-blocks" \ - -d '{ - "boardIDs" : [ "boardIDs", "boardIDs" ], - "boardPatches" : [ { - "showDescription" : true, - "updatedProperties" : { - "key" : "{}" - }, - "icon" : "icon", - "deletedCardProperties" : [ "deletedCardProperties", "deletedCardProperties" ], - "description" : "description", - "updatedCardProperties" : [ { - "key" : "{}" - }, { - "key" : "{}" - } ], - "title" : "title", - "type" : "type", - "deletedProperties" : [ "deletedProperties", "deletedProperties" ] - }, { - "showDescription" : true, - "updatedProperties" : { - "key" : "{}" - }, - "icon" : "icon", - "deletedCardProperties" : [ "deletedCardProperties", "deletedCardProperties" ], - "description" : "description", - "updatedCardProperties" : [ { - "key" : "{}" - }, { - "key" : "{}" - } ], - "title" : "title", - "type" : "type", - "deletedProperties" : [ "deletedProperties", "deletedProperties" ] - } ], - "blockIDs" : [ "blockIDs", "blockIDs" ], - "blockPatches" : [ { - "schema" : 0, - "updatedFields" : { - "key" : "{}" - }, - "boardId" : "boardId", - "title" : "title", - "type" : "type", - "deletedFields" : [ "deletedFields", "deletedFields" ], - "parentId" : "parentId" - }, { - "schema" : 0, - "updatedFields" : { - "key" : "{}" - }, - "boardId" : "boardId", - "title" : "title", - "type" : "type", - "deletedFields" : [ "deletedFields", "deletedFields" ], - "parentId" : "parentId" - } ] -}' + -d ''
    @@ -20922,10 +24128,10 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); - PatchBoardsAndBlocks body = ; // PatchBoardsAndBlocks | + Object body = Object; // Object | try { - BoardsAndBlocks result = apiInstance.patchBoardsAndBlocks(body); + Object result = apiInstance.patchBoardsAndBlocks(body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBoardsAndBlocks"); @@ -20942,10 +24148,10 @@ public class DefaultApiExample { public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); - PatchBoardsAndBlocks body = ; // PatchBoardsAndBlocks | + Object body = Object; // Object | try { - BoardsAndBlocks result = apiInstance.patchBoardsAndBlocks(body); + Object result = apiInstance.patchBoardsAndBlocks(body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#patchBoardsAndBlocks"); @@ -20969,10 +24175,10 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; -PatchBoardsAndBlocks *body = ; // +Object *body = Object; // [apiInstance patchBoardsAndBlocksWith:body - completionHandler: ^(BoardsAndBlocks output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -20995,7 +24201,7 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() -var body = ; // {PatchBoardsAndBlocks} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -21031,10 +24237,10 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); - var body = new PatchBoardsAndBlocks(); // PatchBoardsAndBlocks | + var body = Object; // Object | try { - BoardsAndBlocks result = apiInstance.patchBoardsAndBlocks(body); + Object result = apiInstance.patchBoardsAndBlocks(body); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.patchBoardsAndBlocks: " + e.Message ); @@ -21056,7 +24262,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); -$body = ; // PatchBoardsAndBlocks | +$body = Object; // Object | try { $result = $api_instance->patchBoardsAndBlocks($body); @@ -21079,7 +24285,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); -my $body = WWW::OPenAPIClient::Object::PatchBoardsAndBlocks->new(); # PatchBoardsAndBlocks | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { my $result = $api_instance->patchBoardsAndBlocks(body => $body); @@ -21104,7 +24310,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() -body = # PatchBoardsAndBlocks | +body = Object # Object | try: api_response = api_instance.patch_boards_and_blocks(body) @@ -21117,7 +24323,7 @@ except ApiException as e:
    extern crate DefaultApi;
     
     pub fn main() {
    -    let body = ; // PatchBoardsAndBlocks
    +    let body = Object; // Object
     
         let mut context = DefaultApi::Context::default();
         let result = client.patchBoardsAndBlocks(body, &context).wait();
    @@ -21234,6 +24440,10 @@ $(document).ready(function() {
                                             }
                                             if (schema.$ref != null) {
                                               schema = defsParser.$refs.get(schema.$ref);
    +                                          Object.keys(schema.properties).forEach( (item) => {
    +                                            if (schema.properties[item].$ref != null) {
    +                                              schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref);
    +                                            }
                                             } else if (schema.items != null && schema.items.$ref != null) {
                                                 schema.items = defsParser.$refs.get(schema.items.$ref);
                                             } else {
    @@ -21300,6 +24510,10 @@ $(document).ready(function() {
                                             }
                                             if (schema.$ref != null) {
                                               schema = defsParser.$refs.get(schema.$ref);
    +                                          Object.keys(schema.properties).forEach( (item) => {
    +                                            if (schema.properties[item].$ref != null) {
    +                                              schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref);
    +                                            }
                                             } else if (schema.items != null && schema.items.$ref != null) {
                                                 schema.items = defsParser.$refs.get(schema.items.$ref);
                                             } else {
    @@ -21361,13 +24575,7 @@ $(document).ready(function() {
      -H "Accept: application/json" \
      -H "Content-Type: application/json" \
      "http://localhost/api/v2/boards/{boardID}/sharing" \
    - -d '{
    -  "update_at" : 0,
    -  "modifiedBy" : "modifiedBy",
    -  "id" : "id",
    -  "enabled" : true,
    -  "token" : "token"
    -}'
    + -d ''
     
    @@ -21392,7 +24600,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - Sharing body = ; // Sharing | + Object body = Object; // Object | try { apiInstance.postSharing(boardID, body); @@ -21412,7 +24620,7 @@ public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - Sharing body = ; // Sharing | + Object body = Object; // Object | try { apiInstance.postSharing(boardID, body); @@ -21439,7 +24647,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *boardID = boardID_example; // Board ID (default to null) -Sharing *body = ; // +Object *body = Object; // [apiInstance postSharingWith:boardID body:body @@ -21464,7 +24672,7 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() var boardID = boardID_example; // {String} Board ID -var body = ; // {Sharing} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -21501,7 +24709,7 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); var boardID = boardID_example; // String | Board ID (default to null) - var body = new Sharing(); // Sharing | + var body = Object; // Object | try { apiInstance.postSharing(boardID, body); @@ -21526,7 +24734,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $boardID = boardID_example; // String | Board ID -$body = ; // Sharing | +$body = Object; // Object | try { $api_instance->postSharing($boardID, $body); @@ -21549,7 +24757,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $boardID = boardID_example; # String | Board ID -my $body = WWW::OPenAPIClient::Object::Sharing->new(); # Sharing | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { $api_instance->postSharing(boardID => $boardID, body => $body); @@ -21574,7 +24782,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() boardID = boardID_example # String | Board ID (default to null) -body = # Sharing | +body = Object # Object | try: api_instance.post_sharing(boardID, body) @@ -21587,7 +24795,7 @@ except ApiException as e: pub fn main() { let boardID = boardID_example; // String - let body = ; // Sharing + let body = Object; // Object let mut context = DefaultApi::Context::default(); let result = client.postSharing(boardID, body, &context).wait(); @@ -21756,6 +24964,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -22147,6 +25359,10 @@ Team ID } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -22207,12 +25423,7 @@ Team ID -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/register" \ - -d '{ - "password" : "password", - "email" : "email", - "token" : "token", - "username" : "username" -}' + -d ''
    @@ -22229,7 +25440,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); - RegisterRequest body = ; // RegisterRequest | + Object body = Object; // Object | try { apiInstance.register(body); @@ -22248,7 +25459,7 @@ public class DefaultApiExample { public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); - RegisterRequest body = ; // RegisterRequest | + Object body = Object; // Object | try { apiInstance.register(body); @@ -22268,7 +25479,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; -RegisterRequest *body = ; // +Object *body = Object; // [apiInstance registerWith:body completionHandler: ^(NSError* error) { @@ -22284,7 +25495,7 @@ RegisterRequest *body = ; // // Create an instance of the API class var api = new FocalboardServer.DefaultApi() -var body = ; // {RegisterRequest} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -22316,7 +25527,7 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); - var body = new RegisterRequest(); // RegisterRequest | + var body = Object; // Object | try { apiInstance.register(body); @@ -22335,7 +25546,7 @@ require_once(__DIR__ . '/vendor/autoload.php'); // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); -$body = ; // RegisterRequest | +$body = Object; // Object | try { $api_instance->register($body); @@ -22352,7 +25563,7 @@ use WWW::OPenAPIClient::DefaultApi; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); -my $body = WWW::OPenAPIClient::Object::RegisterRequest->new(); # RegisterRequest | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { $api_instance->register(body => $body); @@ -22371,7 +25582,7 @@ from pprint import pprint # Create an instance of the API class api_instance = openapi_client.DefaultApi() -body = # RegisterRequest | +body = Object # Object | try: api_instance.register(body) @@ -22383,7 +25594,7 @@ except ApiException as e:
    extern crate DefaultApi;
     
     pub fn main() {
    -    let body = ; // RegisterRequest
    +    let body = Object; // Object
     
         let mut context = DefaultApi::Context::default();
         let result = client.register(body, &context).wait();
    @@ -22544,6 +25755,10 @@ $(document).ready(function() {
                                             }
                                             if (schema.$ref != null) {
                                               schema = defsParser.$refs.get(schema.$ref);
    +                                          Object.keys(schema.properties).forEach( (item) => {
    +                                            if (schema.properties[item].$ref != null) {
    +                                              schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref);
    +                                            }
                                             } else if (schema.items != null && schema.items.$ref != null) {
                                                 schema.items = defsParser.$refs.get(schema.items.$ref);
                                             } else {
    @@ -22567,6 +25782,461 @@ $(document).ready(function() {
                             
                           

    +
    +
    +
    +

    searchAllBoards

    +

    +
    +
    +
    +

    +

    Returns the boards that match with a search term

    +

    +
    +
    /boards/search
    +

    +

    Usage and SDK Samples

    +

    + + +
    +
    +
    curl -X GET \
    +-H "Authorization: [[apiKey]]" \
    + -H "Accept: application/json" \
    + "http://localhost/api/v2/boards/search?q=q_example"
    +
    +
    +
    +
    import org.openapitools.client.*;
    +import org.openapitools.client.auth.*;
    +import org.openapitools.client.model.*;
    +import org.openapitools.client.api.DefaultApi;
    +
    +import java.io.File;
    +import java.util.*;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        ApiClient defaultClient = Configuration.getDefaultApiClient();
    +        
    +        // Configure API key authorization: BearerAuth
    +        ApiKeyAuth BearerAuth = (ApiKeyAuth) defaultClient.getAuthentication("BearerAuth");
    +        BearerAuth.setApiKey("YOUR API KEY");
    +        // Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +        //BearerAuth.setApiKeyPrefix("Token");
    +
    +        // Create an instance of the API class
    +        DefaultApi apiInstance = new DefaultApi();
    +        String q = q_example; // String | The search term. Must have at least one character
    +
    +        try {
    +            array[Object] result = apiInstance.searchAllBoards(q);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchAllBoards");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    +
    + +
    +
    import org.openapitools.client.api.DefaultApi;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        DefaultApi apiInstance = new DefaultApi();
    +        String q = q_example; // String | The search term. Must have at least one character
    +
    +        try {
    +            array[Object] result = apiInstance.searchAllBoards(q);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchAllBoards");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    + +
    +
    Configuration *apiConfig = [Configuration sharedConfig];
    +
    +// Configure API key authorization: (authentication scheme: BearerAuth)
    +[apiConfig setApiKey:@"YOUR_API_KEY" forApiKeyIdentifier:@"Authorization"];
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +//[apiConfig setApiKeyPrefix:@"Bearer" forApiKeyIdentifier:@"Authorization"];
    +
    +
    +// Create an instance of the API class
    +DefaultApi *apiInstance = [[DefaultApi alloc] init];
    +String *q = q_example; // The search term. Must have at least one character (default to null)
    +
    +[apiInstance searchAllBoardsWith:q
    +              completionHandler: ^(array[Object] output, NSError* error) {
    +    if (output) {
    +        NSLog(@"%@", output);
    +    }
    +    if (error) {
    +        NSLog(@"Error: %@", error);
    +    }
    +}];
    +
    +
    + +
    +
    var FocalboardServer = require('focalboard_server');
    +var defaultClient = FocalboardServer.ApiClient.instance;
    +
    +// Configure API key authorization: BearerAuth
    +var BearerAuth = defaultClient.authentications['BearerAuth'];
    +BearerAuth.apiKey = "YOUR API KEY";
    +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +//BearerAuth.apiKeyPrefix['Authorization'] = "Token";
    +
    +// Create an instance of the API class
    +var api = new FocalboardServer.DefaultApi()
    +var q = q_example; // {String} The search term. Must have at least one character
    +
    +var callback = function(error, data, response) {
    +  if (error) {
    +    console.error(error);
    +  } else {
    +    console.log('API called successfully. Returned data: ' + data);
    +  }
    +};
    +api.searchAllBoards(q, callback);
    +
    +
    + + +
    +
    using System;
    +using System.Diagnostics;
    +using Org.OpenAPITools.Api;
    +using Org.OpenAPITools.Client;
    +using Org.OpenAPITools.Model;
    +
    +namespace Example
    +{
    +    public class searchAllBoardsExample
    +    {
    +        public void main()
    +        {
    +            // Configure API key authorization: BearerAuth
    +            Configuration.Default.ApiKey.Add("Authorization", "YOUR_API_KEY");
    +            // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +            // Configuration.Default.ApiKeyPrefix.Add("Authorization", "Bearer");
    +
    +            // Create an instance of the API class
    +            var apiInstance = new DefaultApi();
    +            var q = q_example;  // String | The search term. Must have at least one character (default to null)
    +
    +            try {
    +                array[Object] result = apiInstance.searchAllBoards(q);
    +                Debug.WriteLine(result);
    +            } catch (Exception e) {
    +                Debug.Print("Exception when calling DefaultApi.searchAllBoards: " + e.Message );
    +            }
    +        }
    +    }
    +}
    +
    +
    + +
    +
    <?php
    +require_once(__DIR__ . '/vendor/autoload.php');
    +
    +// Configure API key authorization: BearerAuth
    +OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authorization', 'YOUR_API_KEY');
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +// OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('Authorization', 'Bearer');
    +
    +// Create an instance of the API class
    +$api_instance = new OpenAPITools\Client\Api\DefaultApi();
    +$q = q_example; // String | The search term. Must have at least one character
    +
    +try {
    +    $result = $api_instance->searchAllBoards($q);
    +    print_r($result);
    +} catch (Exception $e) {
    +    echo 'Exception when calling DefaultApi->searchAllBoards: ', $e->getMessage(), PHP_EOL;
    +}
    +?>
    +
    + +
    +
    use Data::Dumper;
    +use WWW::OPenAPIClient::Configuration;
    +use WWW::OPenAPIClient::DefaultApi;
    +
    +# Configure API key authorization: BearerAuth
    +$WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY';
    +# uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +#$WWW::OPenAPIClient::Configuration::api_key_prefix->{'Authorization'} = "Bearer";
    +
    +# Create an instance of the API class
    +my $api_instance = WWW::OPenAPIClient::DefaultApi->new();
    +my $q = q_example; # String | The search term. Must have at least one character
    +
    +eval {
    +    my $result = $api_instance->searchAllBoards(q => $q);
    +    print Dumper($result);
    +};
    +if ($@) {
    +    warn "Exception when calling DefaultApi->searchAllBoards: $@\n";
    +}
    +
    + +
    +
    from __future__ import print_statement
    +import time
    +import openapi_client
    +from openapi_client.rest import ApiException
    +from pprint import pprint
    +
    +# Configure API key authorization: BearerAuth
    +openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY'
    +# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +# openapi_client.configuration.api_key_prefix['Authorization'] = 'Bearer'
    +
    +# Create an instance of the API class
    +api_instance = openapi_client.DefaultApi()
    +q = q_example # String | The search term. Must have at least one character (default to null)
    +
    +try:
    +    api_response = api_instance.search_all_boards(q)
    +    pprint(api_response)
    +except ApiException as e:
    +    print("Exception when calling DefaultApi->searchAllBoards: %s\n" % e)
    +
    + +
    +
    extern crate DefaultApi;
    +
    +pub fn main() {
    +    let q = q_example; // String
    +
    +    let mut context = DefaultApi::Context::default();
    +    let result = client.searchAllBoards(q, &context).wait();
    +
    +    println!("{:?}", result);
    +}
    +
    +
    +
    + +

    Scopes

    + + +
    + +

    Parameters

    + + + + + +
    Query parameters
    + + + + + + + + + +
    NameDescription
    q* + + +
    +
    +
    + + String + + +
    +The search term. Must have at least one character +
    +
    +
    + Required +
    +
    +
    +
    + +

    Responses

    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +
    +
    +
    @@ -22576,7 +26246,7 @@ $(document).ready(function() {

    -

    Returns the boards that match with a search term

    +

    Returns the boards that match with a search term in the team


    /teams/{teamID}/boards/search
    @@ -22631,7 +26301,7 @@ public class DefaultApiExample { String q = q_example; // String | The search term. Must have at least one character try { - array[Board] result = apiInstance.searchBoards(teamID, q); + array[Object] result = apiInstance.searchBoards(teamID, q); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#searchBoards"); @@ -22652,7 +26322,7 @@ public class DefaultApiExample { String q = q_example; // String | The search term. Must have at least one character try { - array[Board] result = apiInstance.searchBoards(teamID, q); + array[Object] result = apiInstance.searchBoards(teamID, q); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#searchBoards"); @@ -22681,7 +26351,7 @@ String *q = q_example; // The search term. Must have at least one character (def [apiInstance searchBoardsWith:teamID q:q - completionHandler: ^(array[Board] output, NSError* error) { + completionHandler: ^(array[Object] output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -22745,7 +26415,7 @@ namespace Example var q = q_example; // String | The search term. Must have at least one character (default to null) try { - array[Board] result = apiInstance.searchBoards(teamID, q); + array[Object] result = apiInstance.searchBoards(teamID, q); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.searchBoards: " + e.Message ); @@ -22965,6 +26635,10 @@ The search term. Must have at least one character } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -23031,6 +26705,10 @@ The search term. Must have at least one character } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -23054,6 +26732,996 @@ The search term. Must have at least one character

    +
    +
    +
    +

    searchLinkableBoards

    +

    +
    +
    +
    +

    +

    Returns the boards that match with a search term in the team and the +user has permission to manage members

    +

    +
    +
    /teams/{teamID}/boards/search/linkable
    +

    +

    Usage and SDK Samples

    +

    + + +
    +
    +
    curl -X GET \
    +-H "Authorization: [[apiKey]]" \
    + -H "Accept: application/json" \
    + "http://localhost/api/v2/teams/{teamID}/boards/search/linkable?q=q_example"
    +
    +
    +
    +
    import org.openapitools.client.*;
    +import org.openapitools.client.auth.*;
    +import org.openapitools.client.model.*;
    +import org.openapitools.client.api.DefaultApi;
    +
    +import java.io.File;
    +import java.util.*;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        ApiClient defaultClient = Configuration.getDefaultApiClient();
    +        
    +        // Configure API key authorization: BearerAuth
    +        ApiKeyAuth BearerAuth = (ApiKeyAuth) defaultClient.getAuthentication("BearerAuth");
    +        BearerAuth.setApiKey("YOUR API KEY");
    +        // Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +        //BearerAuth.setApiKeyPrefix("Token");
    +
    +        // Create an instance of the API class
    +        DefaultApi apiInstance = new DefaultApi();
    +        String teamID = teamID_example; // String | Team ID
    +        String q = q_example; // String | The search term. Must have at least one character
    +
    +        try {
    +            array[Object] result = apiInstance.searchLinkableBoards(teamID, q);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchLinkableBoards");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    +
    + +
    +
    import org.openapitools.client.api.DefaultApi;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        DefaultApi apiInstance = new DefaultApi();
    +        String teamID = teamID_example; // String | Team ID
    +        String q = q_example; // String | The search term. Must have at least one character
    +
    +        try {
    +            array[Object] result = apiInstance.searchLinkableBoards(teamID, q);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchLinkableBoards");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    + +
    +
    Configuration *apiConfig = [Configuration sharedConfig];
    +
    +// Configure API key authorization: (authentication scheme: BearerAuth)
    +[apiConfig setApiKey:@"YOUR_API_KEY" forApiKeyIdentifier:@"Authorization"];
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +//[apiConfig setApiKeyPrefix:@"Bearer" forApiKeyIdentifier:@"Authorization"];
    +
    +
    +// Create an instance of the API class
    +DefaultApi *apiInstance = [[DefaultApi alloc] init];
    +String *teamID = teamID_example; // Team ID (default to null)
    +String *q = q_example; // The search term. Must have at least one character (default to null)
    +
    +[apiInstance searchLinkableBoardsWith:teamID
    +    q:q
    +              completionHandler: ^(array[Object] output, NSError* error) {
    +    if (output) {
    +        NSLog(@"%@", output);
    +    }
    +    if (error) {
    +        NSLog(@"Error: %@", error);
    +    }
    +}];
    +
    +
    + +
    +
    var FocalboardServer = require('focalboard_server');
    +var defaultClient = FocalboardServer.ApiClient.instance;
    +
    +// Configure API key authorization: BearerAuth
    +var BearerAuth = defaultClient.authentications['BearerAuth'];
    +BearerAuth.apiKey = "YOUR API KEY";
    +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +//BearerAuth.apiKeyPrefix['Authorization'] = "Token";
    +
    +// Create an instance of the API class
    +var api = new FocalboardServer.DefaultApi()
    +var teamID = teamID_example; // {String} Team ID
    +var q = q_example; // {String} The search term. Must have at least one character
    +
    +var callback = function(error, data, response) {
    +  if (error) {
    +    console.error(error);
    +  } else {
    +    console.log('API called successfully. Returned data: ' + data);
    +  }
    +};
    +api.searchLinkableBoards(teamID, q, callback);
    +
    +
    + + +
    +
    using System;
    +using System.Diagnostics;
    +using Org.OpenAPITools.Api;
    +using Org.OpenAPITools.Client;
    +using Org.OpenAPITools.Model;
    +
    +namespace Example
    +{
    +    public class searchLinkableBoardsExample
    +    {
    +        public void main()
    +        {
    +            // Configure API key authorization: BearerAuth
    +            Configuration.Default.ApiKey.Add("Authorization", "YOUR_API_KEY");
    +            // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +            // Configuration.Default.ApiKeyPrefix.Add("Authorization", "Bearer");
    +
    +            // Create an instance of the API class
    +            var apiInstance = new DefaultApi();
    +            var teamID = teamID_example;  // String | Team ID (default to null)
    +            var q = q_example;  // String | The search term. Must have at least one character (default to null)
    +
    +            try {
    +                array[Object] result = apiInstance.searchLinkableBoards(teamID, q);
    +                Debug.WriteLine(result);
    +            } catch (Exception e) {
    +                Debug.Print("Exception when calling DefaultApi.searchLinkableBoards: " + e.Message );
    +            }
    +        }
    +    }
    +}
    +
    +
    + +
    +
    <?php
    +require_once(__DIR__ . '/vendor/autoload.php');
    +
    +// Configure API key authorization: BearerAuth
    +OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authorization', 'YOUR_API_KEY');
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +// OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('Authorization', 'Bearer');
    +
    +// Create an instance of the API class
    +$api_instance = new OpenAPITools\Client\Api\DefaultApi();
    +$teamID = teamID_example; // String | Team ID
    +$q = q_example; // String | The search term. Must have at least one character
    +
    +try {
    +    $result = $api_instance->searchLinkableBoards($teamID, $q);
    +    print_r($result);
    +} catch (Exception $e) {
    +    echo 'Exception when calling DefaultApi->searchLinkableBoards: ', $e->getMessage(), PHP_EOL;
    +}
    +?>
    +
    + +
    +
    use Data::Dumper;
    +use WWW::OPenAPIClient::Configuration;
    +use WWW::OPenAPIClient::DefaultApi;
    +
    +# Configure API key authorization: BearerAuth
    +$WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY';
    +# uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +#$WWW::OPenAPIClient::Configuration::api_key_prefix->{'Authorization'} = "Bearer";
    +
    +# Create an instance of the API class
    +my $api_instance = WWW::OPenAPIClient::DefaultApi->new();
    +my $teamID = teamID_example; # String | Team ID
    +my $q = q_example; # String | The search term. Must have at least one character
    +
    +eval {
    +    my $result = $api_instance->searchLinkableBoards(teamID => $teamID, q => $q);
    +    print Dumper($result);
    +};
    +if ($@) {
    +    warn "Exception when calling DefaultApi->searchLinkableBoards: $@\n";
    +}
    +
    + +
    +
    from __future__ import print_statement
    +import time
    +import openapi_client
    +from openapi_client.rest import ApiException
    +from pprint import pprint
    +
    +# Configure API key authorization: BearerAuth
    +openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY'
    +# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +# openapi_client.configuration.api_key_prefix['Authorization'] = 'Bearer'
    +
    +# Create an instance of the API class
    +api_instance = openapi_client.DefaultApi()
    +teamID = teamID_example # String | Team ID (default to null)
    +q = q_example # String | The search term. Must have at least one character (default to null)
    +
    +try:
    +    api_response = api_instance.search_linkable_boards(teamID, q)
    +    pprint(api_response)
    +except ApiException as e:
    +    print("Exception when calling DefaultApi->searchLinkableBoards: %s\n" % e)
    +
    + +
    +
    extern crate DefaultApi;
    +
    +pub fn main() {
    +    let teamID = teamID_example; // String
    +    let q = q_example; // String
    +
    +    let mut context = DefaultApi::Context::default();
    +    let result = client.searchLinkableBoards(teamID, q, &context).wait();
    +
    +    println!("{:?}", result);
    +}
    +
    +
    +
    + +

    Scopes

    + + +
    + +

    Parameters

    + +
    Path parameters
    + + + + + + + + + +
    NameDescription
    teamID* + + +
    +
    +
    + + String + + +
    +Team ID +
    +
    +
    + Required +
    +
    +
    +
    + + + + +
    Query parameters
    + + + + + + + + + +
    NameDescription
    q* + + +
    +
    +
    + + String + + +
    +The search term. Must have at least one character +
    +
    +
    + Required +
    +
    +
    +
    + +

    Responses

    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +
    +
    +
    +
    +
    +
    +

    searchMyChannels

    +

    +
    +
    +
    +

    +

    Returns the user available channels

    +

    +
    +
    /teams/{teamID}/channels
    +

    +

    Usage and SDK Samples

    +

    + + +
    +
    +
    curl -X GET \
    +-H "Authorization: [[apiKey]]" \
    + -H "Accept: application/json" \
    + "http://localhost/api/v2/teams/{teamID}/channels?search=search_example"
    +
    +
    +
    +
    import org.openapitools.client.*;
    +import org.openapitools.client.auth.*;
    +import org.openapitools.client.model.*;
    +import org.openapitools.client.api.DefaultApi;
    +
    +import java.io.File;
    +import java.util.*;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        ApiClient defaultClient = Configuration.getDefaultApiClient();
    +        
    +        // Configure API key authorization: BearerAuth
    +        ApiKeyAuth BearerAuth = (ApiKeyAuth) defaultClient.getAuthentication("BearerAuth");
    +        BearerAuth.setApiKey("YOUR API KEY");
    +        // Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +        //BearerAuth.setApiKeyPrefix("Token");
    +
    +        // Create an instance of the API class
    +        DefaultApi apiInstance = new DefaultApi();
    +        String teamID = teamID_example; // String | Team ID
    +        String search = search_example; // String | string to filter channels list
    +
    +        try {
    +            array[Channel] result = apiInstance.searchMyChannels(teamID, search);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchMyChannels");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    +
    + +
    +
    import org.openapitools.client.api.DefaultApi;
    +
    +public class DefaultApiExample {
    +    public static void main(String[] args) {
    +        DefaultApi apiInstance = new DefaultApi();
    +        String teamID = teamID_example; // String | Team ID
    +        String search = search_example; // String | string to filter channels list
    +
    +        try {
    +            array[Channel] result = apiInstance.searchMyChannels(teamID, search);
    +            System.out.println(result);
    +        } catch (ApiException e) {
    +            System.err.println("Exception when calling DefaultApi#searchMyChannels");
    +            e.printStackTrace();
    +        }
    +    }
    +}
    +
    + +
    +
    Configuration *apiConfig = [Configuration sharedConfig];
    +
    +// Configure API key authorization: (authentication scheme: BearerAuth)
    +[apiConfig setApiKey:@"YOUR_API_KEY" forApiKeyIdentifier:@"Authorization"];
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +//[apiConfig setApiKeyPrefix:@"Bearer" forApiKeyIdentifier:@"Authorization"];
    +
    +
    +// Create an instance of the API class
    +DefaultApi *apiInstance = [[DefaultApi alloc] init];
    +String *teamID = teamID_example; // Team ID (default to null)
    +String *search = search_example; // string to filter channels list (optional) (default to null)
    +
    +[apiInstance searchMyChannelsWith:teamID
    +    search:search
    +              completionHandler: ^(array[Channel] output, NSError* error) {
    +    if (output) {
    +        NSLog(@"%@", output);
    +    }
    +    if (error) {
    +        NSLog(@"Error: %@", error);
    +    }
    +}];
    +
    +
    + +
    +
    var FocalboardServer = require('focalboard_server');
    +var defaultClient = FocalboardServer.ApiClient.instance;
    +
    +// Configure API key authorization: BearerAuth
    +var BearerAuth = defaultClient.authentications['BearerAuth'];
    +BearerAuth.apiKey = "YOUR API KEY";
    +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    +//BearerAuth.apiKeyPrefix['Authorization'] = "Token";
    +
    +// Create an instance of the API class
    +var api = new FocalboardServer.DefaultApi()
    +var teamID = teamID_example; // {String} Team ID
    +var opts = {
    +  'search': search_example // {String} string to filter channels list
    +};
    +
    +var callback = function(error, data, response) {
    +  if (error) {
    +    console.error(error);
    +  } else {
    +    console.log('API called successfully. Returned data: ' + data);
    +  }
    +};
    +api.searchMyChannels(teamID, opts, callback);
    +
    +
    + + +
    +
    using System;
    +using System.Diagnostics;
    +using Org.OpenAPITools.Api;
    +using Org.OpenAPITools.Client;
    +using Org.OpenAPITools.Model;
    +
    +namespace Example
    +{
    +    public class searchMyChannelsExample
    +    {
    +        public void main()
    +        {
    +            // Configure API key authorization: BearerAuth
    +            Configuration.Default.ApiKey.Add("Authorization", "YOUR_API_KEY");
    +            // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +            // Configuration.Default.ApiKeyPrefix.Add("Authorization", "Bearer");
    +
    +            // Create an instance of the API class
    +            var apiInstance = new DefaultApi();
    +            var teamID = teamID_example;  // String | Team ID (default to null)
    +            var search = search_example;  // String | string to filter channels list (optional)  (default to null)
    +
    +            try {
    +                array[Channel] result = apiInstance.searchMyChannels(teamID, search);
    +                Debug.WriteLine(result);
    +            } catch (Exception e) {
    +                Debug.Print("Exception when calling DefaultApi.searchMyChannels: " + e.Message );
    +            }
    +        }
    +    }
    +}
    +
    +
    + +
    +
    <?php
    +require_once(__DIR__ . '/vendor/autoload.php');
    +
    +// Configure API key authorization: BearerAuth
    +OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authorization', 'YOUR_API_KEY');
    +// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +// OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('Authorization', 'Bearer');
    +
    +// Create an instance of the API class
    +$api_instance = new OpenAPITools\Client\Api\DefaultApi();
    +$teamID = teamID_example; // String | Team ID
    +$search = search_example; // String | string to filter channels list
    +
    +try {
    +    $result = $api_instance->searchMyChannels($teamID, $search);
    +    print_r($result);
    +} catch (Exception $e) {
    +    echo 'Exception when calling DefaultApi->searchMyChannels: ', $e->getMessage(), PHP_EOL;
    +}
    +?>
    +
    + +
    +
    use Data::Dumper;
    +use WWW::OPenAPIClient::Configuration;
    +use WWW::OPenAPIClient::DefaultApi;
    +
    +# Configure API key authorization: BearerAuth
    +$WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY';
    +# uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +#$WWW::OPenAPIClient::Configuration::api_key_prefix->{'Authorization'} = "Bearer";
    +
    +# Create an instance of the API class
    +my $api_instance = WWW::OPenAPIClient::DefaultApi->new();
    +my $teamID = teamID_example; # String | Team ID
    +my $search = search_example; # String | string to filter channels list
    +
    +eval {
    +    my $result = $api_instance->searchMyChannels(teamID => $teamID, search => $search);
    +    print Dumper($result);
    +};
    +if ($@) {
    +    warn "Exception when calling DefaultApi->searchMyChannels: $@\n";
    +}
    +
    + +
    +
    from __future__ import print_statement
    +import time
    +import openapi_client
    +from openapi_client.rest import ApiException
    +from pprint import pprint
    +
    +# Configure API key authorization: BearerAuth
    +openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY'
    +# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
    +# openapi_client.configuration.api_key_prefix['Authorization'] = 'Bearer'
    +
    +# Create an instance of the API class
    +api_instance = openapi_client.DefaultApi()
    +teamID = teamID_example # String | Team ID (default to null)
    +search = search_example # String | string to filter channels list (optional) (default to null)
    +
    +try:
    +    api_response = api_instance.search_my_channels(teamID, search=search)
    +    pprint(api_response)
    +except ApiException as e:
    +    print("Exception when calling DefaultApi->searchMyChannels: %s\n" % e)
    +
    + +
    +
    extern crate DefaultApi;
    +
    +pub fn main() {
    +    let teamID = teamID_example; // String
    +    let search = search_example; // String
    +
    +    let mut context = DefaultApi::Context::default();
    +    let result = client.searchMyChannels(teamID, search, &context).wait();
    +
    +    println!("{:?}", result);
    +}
    +
    +
    +
    + +

    Scopes

    + + +
    + +

    Parameters

    + +
    Path parameters
    + + + + + + + + + +
    NameDescription
    teamID* + + +
    +
    +
    + + String + + +
    +Team ID +
    +
    +
    + Required +
    +
    +
    +
    + + + + +
    Query parameters
    + + + + + + + + + +
    NameDescription
    search + + + +
    + +

    Responses

    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +

    +

    + + + + + + +
    +
    +
    + +
    + +
    +
    +
    +
    +
    @@ -23118,7 +27786,7 @@ public class DefaultApiExample { String blockID = blockID_example; // String | ID of block to undelete try { - BlockPatch result = apiInstance.undeleteBlock(boardID, blockID); + Object result = apiInstance.undeleteBlock(boardID, blockID); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#undeleteBlock"); @@ -23139,7 +27807,7 @@ public class DefaultApiExample { String blockID = blockID_example; // String | ID of block to undelete try { - BlockPatch result = apiInstance.undeleteBlock(boardID, blockID); + Object result = apiInstance.undeleteBlock(boardID, blockID); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#undeleteBlock"); @@ -23168,7 +27836,7 @@ String *blockID = blockID_example; // ID of block to undelete (default to null) [apiInstance undeleteBlockWith:boardID blockID:blockID - completionHandler: ^(BlockPatch output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -23232,7 +27900,7 @@ namespace Example var blockID = blockID_example; // String | ID of block to undelete (default to null) try { - BlockPatch result = apiInstance.undeleteBlock(boardID, blockID); + Object result = apiInstance.undeleteBlock(boardID, blockID); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.undeleteBlock: " + e.Message ); @@ -23442,6 +28110,10 @@ ID of block to undelete } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -23530,6 +28202,10 @@ ID of block to undelete } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -23921,6 +28597,10 @@ ID of board to undelete } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -23983,23 +28663,8 @@ generated IDs

    -H "Authorization: [[apiKey]]" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ - "http://localhost/api/v2/boards/{boardID}/blocks" \ - -d '{ - "schema" : 1, - "createdBy" : "createdBy", - "deleteAt" : 6, - "boardId" : "boardId", - "updateAt" : 5, - "modifiedBy" : "modifiedBy", - "id" : "id", - "fields" : { - "key" : "{}" - }, - "title" : "title", - "type" : "type", - "createAt" : 0, - "parentId" : "parentId" -}' + "http://localhost/api/v2/boards/{boardID}/blocks?disable_notify=" \ + -d ''
    @@ -24024,10 +28689,11 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - array[Block] body = ; // array[Block] | + array[Object] body = ; // array[Object] | + oas_any_type_not_mapped disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk inserting) try { - array[Block] result = apiInstance.updateBlocks(boardID, body); + array[Object] result = apiInstance.updateBlocks(boardID, body, disableNotify); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateBlocks"); @@ -24045,10 +28711,11 @@ public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID - array[Block] body = ; // array[Block] | + array[Object] body = ; // array[Object] | + oas_any_type_not_mapped disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk inserting) try { - array[Block] result = apiInstance.updateBlocks(boardID, body); + array[Object] result = apiInstance.updateBlocks(boardID, body, disableNotify); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateBlocks"); @@ -24073,11 +28740,13 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *boardID = boardID_example; // Board ID (default to null) -array[Block] *body = ; // +array[Object] *body = ; // +oas_any_type_not_mapped *disableNotify = ; // Disables notifications (for bulk inserting) (optional) (default to null) [apiInstance updateBlocksWith:boardID body:body - completionHandler: ^(array[Block] output, NSError* error) { + disableNotify:disableNotify + completionHandler: ^(array[Object] output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -24101,7 +28770,10 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() var boardID = boardID_example; // {String} Board ID -var body = ; // {array[Block]} +var body = ; // {array[Object]} +var opts = { + 'disableNotify': // {oas_any_type_not_mapped} Disables notifications (for bulk inserting) +}; var callback = function(error, data, response) { if (error) { @@ -24110,7 +28782,7 @@ var callback = function(error, data, response) { console.log('API called successfully. Returned data: ' + data); } }; -api.updateBlocks(boardID, body, callback); +api.updateBlocks(boardID, body, opts, callback);
    @@ -24138,10 +28810,11 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); var boardID = boardID_example; // String | Board ID (default to null) - var body = new array[Block](); // array[Block] | + var body = new array[Object](); // array[Object] | + var disableNotify = new oas_any_type_not_mapped(); // oas_any_type_not_mapped | Disables notifications (for bulk inserting) (optional) (default to null) try { - array[Block] result = apiInstance.updateBlocks(boardID, body); + array[Object] result = apiInstance.updateBlocks(boardID, body, disableNotify); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.updateBlocks: " + e.Message ); @@ -24164,10 +28837,11 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $boardID = boardID_example; // String | Board ID -$body = ; // array[Block] | +$body = ; // array[Object] | +$disableNotify = ; // oas_any_type_not_mapped | Disables notifications (for bulk inserting) try { - $result = $api_instance->updateBlocks($boardID, $body); + $result = $api_instance->updateBlocks($boardID, $body, $disableNotify); print_r($result); } catch (Exception $e) { echo 'Exception when calling DefaultApi->updateBlocks: ', $e->getMessage(), PHP_EOL; @@ -24188,10 +28862,11 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $boardID = boardID_example; # String | Board ID -my $body = [WWW::OPenAPIClient::Object::array[Block]->new()]; # array[Block] | +my $body = [WWW::OPenAPIClient::Object::array[Object]->new()]; # array[Object] | +my $disableNotify = ; # oas_any_type_not_mapped | Disables notifications (for bulk inserting) eval { - my $result = $api_instance->updateBlocks(boardID => $boardID, body => $body); + my $result = $api_instance->updateBlocks(boardID => $boardID, body => $body, disableNotify => $disableNotify); print Dumper($result); }; if ($@) { @@ -24214,10 +28889,11 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() boardID = boardID_example # String | Board ID (default to null) -body = # array[Block] | +body = # array[Object] | +disableNotify = # oas_any_type_not_mapped | Disables notifications (for bulk inserting) (optional) (default to null) try: - api_response = api_instance.update_blocks(boardID, body) + api_response = api_instance.update_blocks(boardID, body, disableNotify=disableNotify) pprint(api_response) except ApiException as e: print("Exception when calling DefaultApi->updateBlocks: %s\n" % e) @@ -24228,10 +28904,11 @@ except ApiException as e: pub fn main() { let boardID = boardID_example; // String - let body = ; // array[Block] + let body = ; // array[Object] + let disableNotify = ; // oas_any_type_not_mapped let mut context = DefaultApi::Context::default(); - let result = client.updateBlocks(boardID, body, &context).wait(); + let result = client.updateBlocks(boardID, body, disableNotify, &context).wait(); println!("{:?}", result); } @@ -24330,6 +29007,33 @@ $(document).ready(function() { +
    Query parameters
    + + + + + + + + + +
    NameDescription
    disable_notify + + +
    +
    +
    + + oas_any_type_not_mapped + + +
    +Disables notifications (for bulk inserting) +
    +
    +
    +
    +

    Responses

    @@ -24381,6 +29085,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -24447,6 +29155,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -24508,15 +29220,7 @@ $(document).ready(function() { -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/teams/{teamID}/categories/{categoryID}" \ - -d '{ - "deleteAt" : 6, - "teamID" : "teamID", - "name" : "name", - "updateAt" : 1, - "id" : "id", - "userID" : "userID", - "createAt" : 0 -}' + -d ''
    @@ -24542,10 +29246,10 @@ public class DefaultApiExample { DefaultApi apiInstance = new DefaultApi(); String teamID = teamID_example; // String | Team ID String categoryID = categoryID_example; // String | Category ID - Category body = ; // Category | + Object body = Object; // Object | try { - Category result = apiInstance.updateCategory(teamID, categoryID, body); + Object result = apiInstance.updateCategory(teamID, categoryID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateCategory"); @@ -24564,10 +29268,10 @@ public class DefaultApiExample { DefaultApi apiInstance = new DefaultApi(); String teamID = teamID_example; // String | Team ID String categoryID = categoryID_example; // String | Category ID - Category body = ; // Category | + Object body = Object; // Object | try { - Category result = apiInstance.updateCategory(teamID, categoryID, body); + Object result = apiInstance.updateCategory(teamID, categoryID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateCategory"); @@ -24593,12 +29297,12 @@ public class DefaultApiExample { DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *teamID = teamID_example; // Team ID (default to null) String *categoryID = categoryID_example; // Category ID (default to null) -Category *body = ; // +Object *body = Object; // [apiInstance updateCategoryWith:teamID categoryID:categoryID body:body - completionHandler: ^(Category output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -24623,7 +29327,7 @@ BearerAuth.apiKey = "YOUR API KEY"; var api = new FocalboardServer.DefaultApi() var teamID = teamID_example; // {String} Team ID var categoryID = categoryID_example; // {String} Category ID -var body = ; // {Category} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -24661,10 +29365,10 @@ namespace Example var apiInstance = new DefaultApi(); var teamID = teamID_example; // String | Team ID (default to null) var categoryID = categoryID_example; // String | Category ID (default to null) - var body = new Category(); // Category | + var body = Object; // Object | try { - Category result = apiInstance.updateCategory(teamID, categoryID, body); + Object result = apiInstance.updateCategory(teamID, categoryID, body); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.updateCategory: " + e.Message ); @@ -24688,7 +29392,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $teamID = teamID_example; // String | Team ID $categoryID = categoryID_example; // String | Category ID -$body = ; // Category | +$body = Object; // Object | try { $result = $api_instance->updateCategory($teamID, $categoryID, $body); @@ -24713,7 +29417,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $teamID = teamID_example; # String | Team ID my $categoryID = categoryID_example; # String | Category ID -my $body = WWW::OPenAPIClient::Object::Category->new(); # Category | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { my $result = $api_instance->updateCategory(teamID => $teamID, categoryID => $categoryID, body => $body); @@ -24740,7 +29444,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' api_instance = openapi_client.DefaultApi() teamID = teamID_example # String | Team ID (default to null) categoryID = categoryID_example # String | Category ID (default to null) -body = # Category | +body = Object # Object | try: api_response = api_instance.update_category(teamID, categoryID, body) @@ -24755,7 +29459,7 @@ except ApiException as e: pub fn main() { let teamID = teamID_example; // String let categoryID = categoryID_example; // String - let body = ; // Category + let body = Object; // Object let mut context = DefaultApi::Context::default(); let result = client.updateCategory(teamID, categoryID, body, &context).wait(); @@ -24925,6 +29629,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -24991,6 +29699,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -25448,6 +30160,10 @@ Board ID } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -25509,15 +30225,7 @@ Board ID -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/boards/{boardID}/members/{userID}" \ - -d '{ - "schemeAdmin" : true, - "schemeCommenter" : true, - "schemeViewer" : true, - "roles" : "roles", - "schemeEditor" : true, - "boardId" : "boardId", - "userId" : "userId" -}' + -d ''
    @@ -25543,10 +30251,10 @@ public class DefaultApiExample { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID String userID = userID_example; // String | User ID - BoardMember body = ; // BoardMember | + Object body = Object; // Object | try { - BoardMember result = apiInstance.updateMember(boardID, userID, body); + Object result = apiInstance.updateMember(boardID, userID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateMember"); @@ -25565,10 +30273,10 @@ public class DefaultApiExample { DefaultApi apiInstance = new DefaultApi(); String boardID = boardID_example; // String | Board ID String userID = userID_example; // String | User ID - BoardMember body = ; // BoardMember | + Object body = Object; // Object | try { - BoardMember result = apiInstance.updateMember(boardID, userID, body); + Object result = apiInstance.updateMember(boardID, userID, body); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#updateMember"); @@ -25594,12 +30302,12 @@ public class DefaultApiExample { DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *boardID = boardID_example; // Board ID (default to null) String *userID = userID_example; // User ID (default to null) -BoardMember *body = ; // +Object *body = Object; // [apiInstance updateMemberWith:boardID userID:userID body:body - completionHandler: ^(BoardMember output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -25624,7 +30332,7 @@ BearerAuth.apiKey = "YOUR API KEY"; var api = new FocalboardServer.DefaultApi() var boardID = boardID_example; // {String} Board ID var userID = userID_example; // {String} User ID -var body = ; // {BoardMember} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -25662,10 +30370,10 @@ namespace Example var apiInstance = new DefaultApi(); var boardID = boardID_example; // String | Board ID (default to null) var userID = userID_example; // String | User ID (default to null) - var body = new BoardMember(); // BoardMember | + var body = Object; // Object | try { - BoardMember result = apiInstance.updateMember(boardID, userID, body); + Object result = apiInstance.updateMember(boardID, userID, body); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.updateMember: " + e.Message ); @@ -25689,7 +30397,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $boardID = boardID_example; // String | Board ID $userID = userID_example; // String | User ID -$body = ; // BoardMember | +$body = Object; // Object | try { $result = $api_instance->updateMember($boardID, $userID, $body); @@ -25714,7 +30422,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $boardID = boardID_example; # String | Board ID my $userID = userID_example; # String | User ID -my $body = WWW::OPenAPIClient::Object::BoardMember->new(); # BoardMember | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { my $result = $api_instance->updateMember(boardID => $boardID, userID => $userID, body => $body); @@ -25741,7 +30449,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' api_instance = openapi_client.DefaultApi() boardID = boardID_example # String | Board ID (default to null) userID = userID_example # String | User ID (default to null) -body = # BoardMember | +body = Object # Object | try: api_response = api_instance.update_member(boardID, userID, body) @@ -25756,7 +30464,7 @@ except ApiException as e: pub fn main() { let boardID = boardID_example; // String let userID = userID_example; // String - let body = ; // BoardMember + let body = Object; // Object let mut context = DefaultApi::Context::default(); let result = client.updateMember(boardID, userID, body, &context).wait(); @@ -25926,6 +30634,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -25992,6 +30704,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -26053,12 +30769,7 @@ $(document).ready(function() { -H "Accept: application/json" \ -H "Content-Type: application/json" \ "http://localhost/api/v2/users/{userID}/config" \ - -d '{ - "updatedFields" : { - "key" : "updatedFields" - }, - "deletedFields" : [ "deletedFields", "deletedFields" ] -}' + -d ''
    @@ -26083,7 +30794,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi apiInstance = new DefaultApi(); String userID = userID_example; // String | User ID - UserPropPatch body = ; // UserPropPatch | + Object body = Object; // Object | try { apiInstance.updateUserConfig(userID, body); @@ -26103,7 +30814,7 @@ public class DefaultApiExample { public static void main(String[] args) { DefaultApi apiInstance = new DefaultApi(); String userID = userID_example; // String | User ID - UserPropPatch body = ; // UserPropPatch | + Object body = Object; // Object | try { apiInstance.updateUserConfig(userID, body); @@ -26130,7 +30841,7 @@ public class DefaultApiExample { // Create an instance of the API class DefaultApi *apiInstance = [[DefaultApi alloc] init]; String *userID = userID_example; // User ID (default to null) -UserPropPatch *body = ; // +Object *body = Object; // [apiInstance updateUserConfigWith:userID body:body @@ -26155,7 +30866,7 @@ BearerAuth.apiKey = "YOUR API KEY"; // Create an instance of the API class var api = new FocalboardServer.DefaultApi() var userID = userID_example; // {String} User ID -var body = ; // {UserPropPatch} +var body = Object; // {Object} var callback = function(error, data, response) { if (error) { @@ -26192,7 +30903,7 @@ namespace Example // Create an instance of the API class var apiInstance = new DefaultApi(); var userID = userID_example; // String | User ID (default to null) - var body = new UserPropPatch(); // UserPropPatch | + var body = Object; // Object | try { apiInstance.updateUserConfig(userID, body); @@ -26217,7 +30928,7 @@ OpenAPITools\Client\Configuration::getDefaultConfiguration()->setApiKey('Authori // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\DefaultApi(); $userID = userID_example; // String | User ID -$body = ; // UserPropPatch | +$body = Object; // Object | try { $api_instance->updateUserConfig($userID, $body); @@ -26240,7 +30951,7 @@ $WWW::OPenAPIClient::Configuration::api_key->{'Authorization'} = 'YOUR_API_KEY'; # Create an instance of the API class my $api_instance = WWW::OPenAPIClient::DefaultApi->new(); my $userID = userID_example; # String | User ID -my $body = WWW::OPenAPIClient::Object::UserPropPatch->new(); # UserPropPatch | +my $body = WWW::OPenAPIClient::Object::Object->new(); # Object | eval { $api_instance->updateUserConfig(userID => $userID, body => $body); @@ -26265,7 +30976,7 @@ openapi_client.configuration.api_key['Authorization'] = 'YOUR_API_KEY' # Create an instance of the API class api_instance = openapi_client.DefaultApi() userID = userID_example # String | User ID (default to null) -body = # UserPropPatch | +body = Object # Object | try: api_instance.update_user_config(userID, body) @@ -26278,7 +30989,7 @@ except ApiException as e: pub fn main() { let userID = userID_example; // String - let body = ; // UserPropPatch + let body = Object; // Object let mut context = DefaultApi::Context::default(); let result = client.updateUserConfig(userID, body, &context).wait(); @@ -26447,6 +31158,10 @@ $(document).ready(function() { } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -26536,7 +31251,7 @@ public class DefaultApiExample { File uploaded file = BINARY_DATA_HERE; // File | The file to upload try { - FileUploadResponse result = apiInstance.uploadFile(teamID, boardID, uploaded file); + Object result = apiInstance.uploadFile(teamID, boardID, uploaded file); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#uploadFile"); @@ -26558,7 +31273,7 @@ public class DefaultApiExample { File uploaded file = BINARY_DATA_HERE; // File | The file to upload try { - FileUploadResponse result = apiInstance.uploadFile(teamID, boardID, uploaded file); + Object result = apiInstance.uploadFile(teamID, boardID, uploaded file); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling DefaultApi#uploadFile"); @@ -26589,7 +31304,7 @@ File *uploaded file = BINARY_DATA_HERE; // The file to upload (optional) (defaul [apiInstance uploadFileWith:teamID boardID:boardID uploaded file:uploaded file - completionHandler: ^(FileUploadResponse output, NSError* error) { + completionHandler: ^(Object output, NSError* error) { if (output) { NSLog(@"%@", output); } @@ -26657,7 +31372,7 @@ namespace Example var uploaded file = BINARY_DATA_HERE; // File | The file to upload (optional) (default to null) try { - FileUploadResponse result = apiInstance.uploadFile(teamID, boardID, uploaded file); + Object result = apiInstance.uploadFile(teamID, boardID, uploaded file); Debug.WriteLine(result); } catch (Exception e) { Debug.Print("Exception when calling DefaultApi.uploadFile: " + e.Message ); @@ -26901,6 +31616,10 @@ The file to upload } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { @@ -26989,6 +31708,10 @@ The file to upload } if (schema.$ref != null) { schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } } else if (schema.items != null && schema.items.$ref != null) { schema.items = defsParser.$refs.get(schema.items.$ref); } else { diff --git a/server/swagger/swagger.yml b/server/swagger/swagger.yml index 06f825443..0226e3b36 100644 --- a/server/swagger/swagger.yml +++ b/server/swagger/swagger.yml @@ -1,2346 +1,1863 @@ basePath: /api/v2 consumes: -- application/json + - application/json definitions: - Block: - description: Block is the basic data unit - properties: - boardId: - description: The board id that the block belongs to - type: string - x-go-name: BoardID - createAt: - description: The creation time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - createdBy: - description: The id for user who created this block - type: string - x-go-name: CreatedBy - deleteAt: - description: The deleted time in miliseconds since the current epoch. Set to indicate this block is deleted - format: int64 - type: integer - x-go-name: DeleteAt - fields: - additionalProperties: - type: object - description: The block fields - type: object - x-go-name: Fields - id: - description: The id for this block - type: string - x-go-name: ID - modifiedBy: - description: The id for user who last modified this block - type: string - x-go-name: ModifiedBy - parentId: - description: The id for this block's parent block. Empty for root blocks - type: string - x-go-name: ParentID - schema: - description: The schema version of this block - format: int64 - type: integer - x-go-name: Schema - title: - description: The display title - type: string - x-go-name: Title - type: - $ref: '#/definitions/BlockType' - updateAt: - description: The last modified time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - required: - - id - - createdBy - - modifiedBy - - schema - - type - - createAt - - updateAt - - boardId - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BlockPatch: - description: BlockPatch is a patch for modify blocks - properties: - boardId: - description: The board id that the block belongs to - type: string - x-go-name: BoardID - deletedFields: - description: The block removed fields - items: - type: string - type: array - x-go-name: DeletedFields - parentId: - description: The id for this block's parent block. Empty for root blocks - type: string - x-go-name: ParentID - schema: - description: The schema version of this block - format: int64 - type: integer - x-go-name: Schema - title: - description: The display title - type: string - x-go-name: Title - type: - $ref: '#/definitions/BlockType' - updatedFields: - additionalProperties: - type: object - description: The block updated fields - type: object - x-go-name: UpdatedFields - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BlockPatchBatch: - description: BlockPatchBatch is a batch of IDs and patches for modify blocks - properties: - block_ids: - description: The id's for of the blocks to patch - items: - type: string - type: array - x-go-name: BlockIDs - block_patches: - description: The BlockPatches to be applied - items: - $ref: '#/definitions/BlockPatch' - type: array - x-go-name: BlockPatches - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BlockType: - title: BlockType represents a block type. - type: string - x-go-package: github.com/mattermost/focalboard/server/model - Board: - description: Board groups a set of blocks and its layout - properties: - cardProperties: - description: The properties of the board cards - items: - additionalProperties: - type: object - type: object - type: array - x-go-name: CardProperties - channelId: - description: The ID of the channel that the board was created from - type: string - x-go-name: ChannelID - createAt: - description: The creation time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - createdBy: - description: The ID of the user that created the board - type: string - x-go-name: CreatedBy - deleteAt: - description: The deleted time in miliseconds since the current epoch. Set to indicate this block is deleted - format: int64 - type: integer - x-go-name: DeleteAt - description: - description: The description of the board - type: string - x-go-name: Description - icon: - description: The icon of the board - type: string - x-go-name: Icon - id: - description: The ID for the board - type: string - x-go-name: ID - isTemplate: - description: Marks the template boards - type: boolean - x-go-name: IsTemplate - modifiedBy: - description: The ID of the last user that updated the board - type: string - x-go-name: ModifiedBy - properties: - additionalProperties: - type: object - description: The properties of the board - type: object - x-go-name: Properties - showDescription: - description: Indicates if the board shows the description on the interface - type: boolean - x-go-name: ShowDescription - teamId: - description: The ID of the team that the board belongs to - type: string - x-go-name: TeamID - templateVersion: - description: Marks the template boards - format: int64 - type: integer - x-go-name: TemplateVersion - title: - description: The title of the board - type: string - x-go-name: Title - type: - $ref: '#/definitions/BoardType' - updateAt: - description: The last modified time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - required: - - id - - teamId - - createdBy - - modifiedBy - - type - - createAt - - updateAt - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BoardMember: - description: BoardMember stores the information of the membership of a user on a board - properties: - boardId: - description: The ID of the board - type: string - x-go-name: BoardID - roles: - description: The independent roles of the user on the board - type: string - x-go-name: Roles - schemeAdmin: - description: Marks the user as an admin of the board - type: boolean - x-go-name: SchemeAdmin - schemeCommenter: - description: Marks the user as an commenter of the board - type: boolean - x-go-name: SchemeCommenter - schemeEditor: - description: Marks the user as an editor of the board - type: boolean - x-go-name: SchemeEditor - schemeViewer: - description: Marks the user as an viewer of the board - type: boolean - x-go-name: SchemeViewer - userId: - description: The ID of the user - type: string - x-go-name: UserID - required: - - boardId - - userId - - schemeAdmin - - schemeEditor - - schemeCommenter - - schemeViewer - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BoardMemberHistoryEntry: - description: BoardMemberHistoryEntry stores the information of the membership of a user on a board - properties: - action: - description: The action that added this history entry (created or deleted) - type: string - x-go-name: Action - boardId: - description: The ID of the board - type: string - x-go-name: BoardID - insertAt: - description: The insertion time - format: date-time - type: string - x-go-name: InsertAt - userId: - description: The ID of the user - type: string - x-go-name: UserID - required: - - boardId - - userId - - insertAt - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BoardMetadata: - description: BoardMetadata contains metadata for a Board - properties: - boardId: - description: The ID for the board - type: string - x-go-name: BoardID - createdBy: - description: The ID of the user that created the board - type: string - x-go-name: CreatedBy - descendantFirstUpdateAt: - description: The earliest time a descendant of this board was added, modified, or deleted - format: int64 - type: integer - x-go-name: DescendantFirstUpdateAt - descendantLastUpdateAt: - description: The most recent time a descendant of this board was added, modified, or deleted - format: int64 - type: integer - x-go-name: DescendantLastUpdateAt - lastModifiedBy: - description: The ID of the user that last modified the most recently modified descendant - type: string - x-go-name: LastModifiedBy - required: - - boardId - - descendantLastUpdateAt - - descendantFirstUpdateAt - - createdBy - - lastModifiedBy - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BoardPatch: - description: BoardPatch is a patch for modify boards - properties: - deletedCardProperties: - description: The board removed card properties - items: - type: string - type: array - x-go-name: DeletedCardProperties - deletedProperties: - description: The board removed properties - items: - type: string - type: array - x-go-name: DeletedProperties - description: - description: The description of the board - type: string - x-go-name: Description - icon: - description: The icon of the board - type: string - x-go-name: Icon - showDescription: - description: Indicates if the board shows the description on the interface - type: boolean - x-go-name: ShowDescription - title: - description: The title of the board - type: string - x-go-name: Title - type: - $ref: '#/definitions/BoardType' - updatedCardProperties: - description: The board updated card properties - items: - additionalProperties: - type: object - type: object - type: array - x-go-name: UpdatedCardProperties - updatedProperties: - additionalProperties: - type: object - description: The board updated properties - type: object - x-go-name: UpdatedProperties - type: object - x-go-package: github.com/mattermost/focalboard/server/model - BoardType: - type: string - x-go-package: github.com/mattermost/focalboard/server/model - BoardsAndBlocks: - description: |- - BoardsAndBlocks is used to operate over boards and blocks at the - same time - properties: - blocks: - description: The blocks - items: - $ref: '#/definitions/Block' - type: array - x-go-name: Blocks - boards: - description: The boards - items: - $ref: '#/definitions/Board' - type: array - x-go-name: Boards - type: object - x-go-package: github.com/mattermost/focalboard/server/model - Category: - description: Category is a board category - properties: - createAt: - description: The creation time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - deleteAt: - description: The deleted time in miliseconds since the current epoch. Set to indicate this category is deleted - format: int64 - type: integer - x-go-name: DeleteAt - id: - description: The id for this category - type: string - x-go-name: ID - name: - description: The name for this category - type: string - x-go-name: Name - teamID: - description: The team id for this category - type: string - x-go-name: TeamID - updateAt: - description: The last modified time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - userID: - description: The user's id for this category - type: string - x-go-name: UserID - required: - - id - - name - - userID - - teamID - - createAt - - updateAt - type: object - x-go-package: github.com/mattermost/focalboard/server/model - CategoryBoards: - description: CategoryBoards is a board category and associated boards - properties: - boardIDs: - description: The IDs of boards in this category - items: - type: string - type: array - x-go-name: BoardIDs - createAt: - description: The creation time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - deleteAt: - description: The deleted time in miliseconds since the current epoch. Set to indicate this category is deleted - format: int64 - type: integer - x-go-name: DeleteAt - id: - description: The id for this category - type: string - x-go-name: ID - name: - description: The name for this category - type: string - x-go-name: Name - teamID: - description: The team id for this category - type: string - x-go-name: TeamID - updateAt: - description: The last modified time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - userID: - description: The user's id for this category - type: string - x-go-name: UserID - required: - - id - - name - - userID - - teamID - - createAt - - updateAt - - boardIDs - type: object - x-go-package: github.com/mattermost/focalboard/server/model - ChangePasswordRequest: - description: ChangePasswordRequest is a user password change request - properties: - newPassword: - description: New password - type: string - x-go-name: NewPassword - oldPassword: - description: Old password - type: string - x-go-name: OldPassword - required: - - oldPassword - - newPassword - type: object - x-go-package: github.com/mattermost/focalboard/server/api - ClientConfig: - description: ClientConfig is the client configuration - properties: - enablePublicSharedBoards: - description: Is public shared boards enabled - type: boolean - x-go-name: EnablePublicSharedBoards - featureFlags: - additionalProperties: - type: string - description: The server feature flags - type: object - x-go-name: FeatureFlags - telemetry: - description: Is telemetry enabled - type: boolean - x-go-name: Telemetry - telemetryid: - description: The telemetry ID - type: string - x-go-name: TelemetryID - required: - - telemetry - - telemetryid - - enablePublicSharedBoards - - featureFlags - type: object - x-go-package: github.com/mattermost/focalboard/server/model - DeleteBoardsAndBlocks: - description: |- - DeleteBoardsAndBlocks is used to list the boards and blocks to - delete on a request - properties: - blocks: - description: The blocks - items: - type: string - type: array - x-go-name: Blocks - boards: - description: The boards - items: - type: string - type: array - x-go-name: Boards - required: - - boards - - blocks - type: object - x-go-package: github.com/mattermost/focalboard/server/model - ErrorResponse: - description: ErrorResponse is an error response - properties: - error: - description: The error message - type: string - x-go-name: Error - errorCode: - description: The error code - format: int64 - type: integer - x-go-name: ErrorCode - type: object - x-go-package: github.com/mattermost/focalboard/server/model - Preference: - description: Preference represents a single user preference. A user can have multiple preferences. - properties: - user_id: - description: The associated user's ID - type: string - x-go-name: UserId - Category: - description: The category of preference. Its always "Focalboard" for this project - type: string - x-go-name: Category - Name: - description: Preference's name - type: string - x-go-name: Name - value: - description: Preference's value - type: string - x-go-name: Value - type: object - x-go-package: github.com/mattermost/focalboard/server/model - FileUploadResponse: - description: FileUploadResponse is the response to a file upload - properties: - fileId: - description: The FileID to retrieve the uploaded file - type: string - x-go-name: FileID - required: - - fileId - type: object - x-go-package: github.com/mattermost/focalboard/server/api - LoginRequest: - description: LoginRequest is a login request - properties: - email: - description: If specified, login using email - type: string - x-go-name: Email - password: - description: Password - type: string - x-go-name: Password - type: - description: Type of login, currently must be set to "normal" - type: string - x-go-name: Type - username: - description: If specified, login using username - type: string - x-go-name: Username - required: - - type - - password - type: object - x-go-package: github.com/mattermost/focalboard/server/api - LoginResponse: - description: LoginResponse is a login response - properties: - token: - description: Session token - type: string - x-go-name: Token - required: - - token - type: object - x-go-package: github.com/mattermost/focalboard/server/api - NotificationHint: - description: |- - NotificationHint provides a hint that a block has been modified and has subscribers that - should be notified. - properties: - block_id: - description: BlockID is id of the entity that was updated - type: string - x-go-name: BlockID - block_type: - $ref: '#/definitions/BlockType' - create_at: - description: CreatedAt is the timestamp this notification hint was created in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - modified_by_id: - description: ModifiedByID is the id of the user who made the block change - type: string - x-go-name: ModifiedByID - notify_at: - description: NotifyAt is the timestamp this notification should be scheduled in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: NotifyAt - required: - - block_type - - block_id - - create_at - - notify_at - type: object - x-go-package: github.com/mattermost/focalboard/server/model - PatchBoardsAndBlocks: - description: |- - PatchBoardsAndBlocks is used to patch multiple boards and blocks on - a single request - properties: - blockIDs: - description: The block IDs to patch - items: - type: string - type: array - x-go-name: BlockIDs - blockPatches: - description: The block patches - items: - $ref: '#/definitions/BlockPatch' - type: array - x-go-name: BlockPatches - boardIDs: - description: The board IDs to patch - items: - type: string - type: array - x-go-name: BoardIDs - boardPatches: - description: The board patches - items: - $ref: '#/definitions/BoardPatch' - type: array - x-go-name: BoardPatches - required: - - boardIDs - - boardPatches - - blockIDs - - blockPatches - type: object - x-go-package: github.com/mattermost/focalboard/server/model - RegisterRequest: - description: RegisterRequest is a user registration request - properties: - email: - description: User's email - type: string - x-go-name: Email - password: - description: Password - type: string - x-go-name: Password - token: - description: Registration authorization token - type: string - x-go-name: Token - username: - description: User name - type: string - x-go-name: Username - required: - - username - - email - - password - - token - type: object - x-go-package: github.com/mattermost/focalboard/server/api - Sharing: - description: Sharing is sharing information for a root block - properties: - enabled: - description: Is sharing enabled - type: boolean - x-go-name: Enabled - id: - description: ID of the root block - type: string - x-go-name: ID - modifiedBy: - description: ID of the user who last modified this - type: string - x-go-name: ModifiedBy - token: - description: Access token - type: string - x-go-name: Token - update_at: - description: Updated time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - required: - - id - - enabled - - token - - modifiedBy - - update_at - type: object - x-go-package: github.com/mattermost/focalboard/server/model - Subscriber: - description: Subscriber is an entity (e.g. user, channel) that can subscribe to events from boards, cards, etc - properties: - notified_at: - description: NotifiedAt is the timestamp this subscriber was last notified - format: int64 - type: integer - x-go-name: NotifiedAt - subscriber_id: - description: SubscriberID is the id of the entity that is subscribing - type: string - x-go-name: SubscriberID - subscriber_type: - $ref: '#/definitions/SubscriberType' - required: - - subscriber_type - - subscriber_id - type: object - x-go-package: github.com/mattermost/focalboard/server/model - SubscriberType: - type: string - x-go-package: github.com/mattermost/focalboard/server/model - Subscription: - properties: - blockId: - description: BlockID is id of the entity being subscribed to - type: string - x-go-name: BlockID - blockType: - $ref: '#/definitions/BlockType' - createAt: - description: CreatedAt is the timestamp this subscription was created in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - deleteAt: - description: DeleteAt is the timestamp this subscription was deleted in miliseconds since the current epoch, or zero if not deleted - format: int64 - type: integer - x-go-name: DeleteAt - notifiedAt: - description: NotifiedAt is the timestamp of the last notification sent for this subscription - format: int64 - type: integer - x-go-name: NotifiedAt - subscriberId: - description: SubscriberID is the id of the entity that is subscribing - type: string - x-go-name: SubscriberID - subscriberType: - $ref: '#/definitions/SubscriberType' - required: - - blockType - - blockId - - subscriberType - - subscriberId - - notifiedAt - - createAt - - deleteAt - title: Subscription is a subscription to a board, card, etc, for a user or channel. - type: object - x-go-package: github.com/mattermost/focalboard/server/model - Team: - description: Team is information global to a team - properties: - id: - description: ID of the team - type: string - x-go-name: ID - modifiedBy: - description: ID of user who last modified this - type: string - x-go-name: ModifiedBy - settings: - additionalProperties: - type: object - description: Team settings - type: object - x-go-name: Settings - signupToken: - description: Token required to register new users - type: string - x-go-name: SignupToken - title: - description: Title of the team - type: string - x-go-name: Title - updateAt: - description: Updated time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - required: - - id - - signupToken - - modifiedBy - - updateAt - type: object - x-go-package: github.com/mattermost/focalboard/server/model - User: - description: User is a user - properties: - create_at: - description: Created time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: CreateAt - delete_at: - description: Deleted time in miliseconds since the current epoch, set to indicate user is deleted - format: int64 - type: integer - x-go-name: DeleteAt - id: - description: The user ID - type: string - x-go-name: ID - is_bot: - description: If the user is a bot or not - type: boolean - x-go-name: IsBot - is_guest: - description: If the user is a guest or not - type: boolean - x-go-name: IsGuest - props: - additionalProperties: - type: object - description: User settings - type: object - x-go-name: Props - update_at: - description: Updated time in miliseconds since the current epoch - format: int64 - type: integer - x-go-name: UpdateAt - username: - description: The user name - type: string - x-go-name: Username - required: - - id - - username - - props - - create_at - - update_at - - delete_at - - is_bot - - is_guest - type: object - x-go-package: github.com/mattermost/focalboard/server/model - UserPropPatch: - description: UserPropPatch is a user property patch - properties: - deletedFields: - description: The user prop removed fields - items: - type: string - type: array - x-go-name: DeletedFields - updatedFields: - additionalProperties: - type: string - description: The user prop updated fields - type: object - x-go-name: UpdatedFields - type: object - x-go-package: github.com/mattermost/focalboard/server/model + Block: + description: Block is the basic data unit + x-go-package: github.com/mattermost/focalboard/server/model + BlockPatch: + description: BlockPatch is a patch for modify blocks + x-go-package: github.com/mattermost/focalboard/server/model + BlockPatchBatch: + description: BlockPatchBatch is a batch of IDs and patches for modify blocks + x-go-package: github.com/mattermost/focalboard/server/model + Board: + description: Board groups a set of blocks and its layout + x-go-package: github.com/mattermost/focalboard/server/model + BoardInsight: + description: BoardInsight gives insight into activities in a Board + x-go-package: github.com/mattermost/focalboard/server/model + BoardMember: + description: BoardMember stores the information of the membership of a user on a board + x-go-package: github.com/mattermost/focalboard/server/model + BoardMemberHistoryEntry: + description: BoardMemberHistoryEntry stores the information of the membership of a user on a board + x-go-package: github.com/mattermost/focalboard/server/model + BoardMetadata: + description: BoardMetadata contains metadata for a Board + x-go-package: github.com/mattermost/focalboard/server/model + BoardPatch: + description: BoardPatch is a patch for modify boards + x-go-package: github.com/mattermost/focalboard/server/model + BoardsAndBlocks: + description: |- + BoardsAndBlocks is used to operate over boards and blocks at the + same time + x-go-package: github.com/mattermost/focalboard/server/model + BoardsCloudLimits: + description: |- + BoardsCloudLimits is the representation of the limits for the + Boards server + x-go-package: github.com/mattermost/focalboard/server/model + Category: + description: Category is a board category + x-go-package: github.com/mattermost/focalboard/server/model + CategoryBoards: + description: CategoryBoards is a board category and associated boards + x-go-package: github.com/mattermost/focalboard/server/model + ChangePasswordRequest: + description: ChangePasswordRequest is a user password change request + x-go-package: github.com/mattermost/focalboard/server/model + ClientConfig: + description: ClientConfig is the client configuration + x-go-package: github.com/mattermost/focalboard/server/model + DeleteBoardsAndBlocks: + description: |- + DeleteBoardsAndBlocks is used to list the boards and blocks to + delete on a request + x-go-package: github.com/mattermost/focalboard/server/model + ErrorResponse: + description: ErrorResponse is an error response + x-go-package: github.com/mattermost/focalboard/server/model + FileUploadResponse: + description: FileUploadResponse is the response to a file upload + x-go-package: github.com/mattermost/focalboard/server/api + LoginRequest: + description: LoginRequest is a login request + x-go-package: github.com/mattermost/focalboard/server/model + LoginResponse: + description: LoginResponse is a login response + x-go-package: github.com/mattermost/focalboard/server/model + NotificationHint: + description: |- + NotificationHint provides a hint that a block has been modified and has subscribers that + should be notified. + x-go-package: github.com/mattermost/focalboard/server/model + PatchBoardsAndBlocks: + description: |- + PatchBoardsAndBlocks is used to patch multiple boards and blocks on + a single request + x-go-package: github.com/mattermost/focalboard/server/model + RegisterRequest: + description: RegisterRequest is a user registration request + x-go-package: github.com/mattermost/focalboard/server/model + Sharing: + description: Sharing is sharing information for a root block + x-go-package: github.com/mattermost/focalboard/server/model + Subscriber: + description: Subscriber is an entity (e.g. user, channel) that can subscribe to events from boards, cards, etc + x-go-package: github.com/mattermost/focalboard/server/model + Subscription: + title: Subscription is a subscription to a board, card, etc, for a user or channel. + x-go-package: github.com/mattermost/focalboard/server/model + Team: + description: Team is information global to a team + x-go-package: github.com/mattermost/focalboard/server/model + User: + description: User is a user + x-go-package: github.com/mattermost/focalboard/server/model + UserPropPatch: + description: UserPropPatch is a user property patch + x-go-package: github.com/mattermost/focalboard/server/model host: localhost info: - contact: - email: api@focalboard.com - name: Focalboard - url: https://www.focalboard.com - description: Focalboard Server - license: - name: Custom - url: https://github.com/mattermost/focalboard/blob/main/LICENSE.txt - title: Focalboard Server - version: 1.0.0 + contact: + email: api@focalboard.com + name: Focalboard + url: https://www.focalboard.com + description: Focalboard Server + license: + name: Custom + url: https://github.com/mattermost/focalboard/blob/main/LICENSE.txt + title: Focalboard Server + version: 2.0.0 paths: - /boards: - post: - description: Creates a new board - operationId: createBoard - parameters: - - description: the board to create - in: body - name: Body - required: true - schema: - $ref: '#/definitions/Board' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Board' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards-and-blocks: - delete: - description: Deletes boards and blocks - operationId: deleteBoardsAndBlocks - parameters: - - description: the boards and blocks to delete - in: body - name: Body - required: true - schema: - $ref: '#/definitions/DeleteBoardsAndBlocks' - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - patch: - description: Patches a set of related boards and blocks - operationId: patchBoardsAndBlocks - parameters: - - description: the patches for the boards and blocks - in: body - name: Body - required: true - schema: - $ref: '#/definitions/PatchBoardsAndBlocks' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardsAndBlocks' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - post: - description: Creates new boards and blocks - operationId: insertBoardsAndBlocks - parameters: - - description: the boards and blocks to create - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BoardsAndBlocks' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardsAndBlocks' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}: - delete: - description: Removes a board - operationId: deleteBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - get: - description: Returns a board - operationId: getBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Board' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - patch: - description: Partially updates a board - operationId: patchBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: board patch to apply - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BoardPatch' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Board' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/archive/export: - get: - operationId: archiveExportBoard - parameters: - - description: Id of board to export - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Exports an archive of all blocks for one boards. - /boards/{boardID}/blocks: - get: - description: Returns blocks - operationId: getBlocks - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: ID of parent block, omit to specify all blocks - in: query - name: parent_id - type: string - - description: Type of blocks to return, omit to specify all types - in: query - name: type - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Block' - type: array - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - post: - description: |- - Insert blocks. The specified IDs will only be used to link - blocks with existing ones, the rest will be replaced by server - generated IDs - operationId: updateBlocks - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: array of blocks to insert or update - in: body - name: Body - required: true - schema: - items: - $ref: '#/definitions/Block' - type: array - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Block' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/blocks/: - patch: - description: Partially updates batch of blocks - operationId: patchBlocks - parameters: - - description: Workspace ID - in: path - name: boardID - required: true - type: string - - description: block Ids and block patches to apply - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BlockPatchBatch' - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/blocks/{blockID}: - delete: - description: Deletes a block - operationId: deleteBlock - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: ID of block to delete - in: path - name: blockID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - "404": - description: block not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - patch: - description: Partially updates a block - operationId: patchBlock - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: ID of block to patch - in: path - name: blockID - required: true - type: string - - description: block patch to apply - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BlockPatch' - produces: - - application/json - responses: - "200": - description: success - "404": - description: block not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/blocks/{blockID}/duplicate: - post: - description: Returns the new created blocks - operationId: duplicateBlock - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: Block ID - in: path - name: blockID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Block' - type: array - "404": - description: board or block not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/blocks/{blockID}/undelete: - post: - description: Undeletes a block - operationId: undeleteBlock - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: ID of block to undelete - in: path - name: blockID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BlockPatch' - "404": - description: block not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/duplicate: - post: - description: Returns the new created board and all the blocks - operationId: duplicateBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardsAndBlocks' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/join: - post: - description: Become a member of a board - operationId: joinBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardMember' - "403": - description: access denied - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/leave: - post: - description: Remove your own membership from a board - operationId: leaveBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - "403": - description: access denied - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/members: - get: - description: Returns the members of the board - operationId: getMembersForBoard - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/BoardMember' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - post: - description: Adds a new member to a board - operationId: addMember - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: membership to replace the current one with - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BoardMember' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardMember' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/members/{userID}: - delete: - description: Deletes a member from a board - operationId: deleteMember - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: User ID - in: path - name: userID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - put: - description: Updates a board member - operationId: updateMember - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: User ID - in: path - name: userID - required: true - type: string - - description: membership to replace the current one with - in: body - name: Body - required: true - schema: - $ref: '#/definitions/BoardMember' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardMember' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/metadata: - get: - description: Returns a board's metadata - operationId: getBoardMetadata - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/BoardMetadata' - "404": - description: board not found - "501": - description: required license not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/sharing: - get: - description: Returns sharing information for a board - operationId: getSharing - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Sharing' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - post: - description: Sets sharing information for a board - operationId: postSharing - parameters: - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: sharing information for a root block - in: body - name: Body - required: true - schema: - $ref: '#/definitions/Sharing' - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /boards/{boardID}/undelete: - post: - description: Undeletes a board - operationId: undeleteBoard - parameters: - - description: ID of board to undelete - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /clientConfig: - get: - description: Returns the client configuration - operationId: getClientConfig - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/ClientConfig' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - /login: - post: - description: Login user - operationId: login - parameters: - - description: Login request - in: body - name: body - required: true - schema: - $ref: '#/definitions/LoginRequest' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/LoginResponse' - "401": - description: invalid login - schema: - $ref: '#/definitions/ErrorResponse' - "500": - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - /logout: - post: - description: Logout user - operationId: logout - produces: - - application/json - responses: - "200": - description: success - "500": - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /register: - post: - description: Register new user - operationId: register - parameters: - - description: Register request - in: body - name: body - required: true - schema: - $ref: '#/definitions/RegisterRequest' - produces: - - application/json - responses: - "200": - description: success - "401": - description: invalid registration token - "500": - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - /subscriptions: - post: - operationId: createSubscription - parameters: - - description: subscription definition - in: body - name: Body - required: true - schema: - $ref: '#/definitions/Subscription' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/User' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Creates a subscription to a block for a user. The user will receive change notifications for the block. - /subscriptions/{blockID}/{subscriberID}: - delete: - operationId: deleteSubscription - parameters: - - description: Block ID - in: path - name: blockID - required: true - type: string - - description: Subscriber ID - in: path - name: subscriberID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Deletes a subscription a user has for a a block. The user will no longer receive change notifications for the block. - /subscriptions/{subscriberID}: - get: - operationId: getSubscriptions - parameters: - - description: Subscriber ID - in: path - name: subscriberID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/User' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Gets subscriptions for a user. - /team/{teamID}/onboard: - post: - operationId: onboard - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - properties: - boardID: - description: Board ID - type: string - teamID: - description: Team ID - type: string - type: object - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Onboards a user on Boards. - /teams: - get: - description: Returns information of all the teams - operationId: getTeams - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Team' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}: - get: - description: Returns information of the root team - operationId: getTeam - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Team' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/archive/export: - get: - operationId: archiveExportTeam - parameters: - - description: Id of team - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Exports an archive of all blocks for all the boards in a team. - /teams/{teamID}/archive/import: - post: - consumes: - - multipart/form-data - operationId: archiveImport - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: archive file to import - in: formData - name: file - required: true - type: file - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - summary: Import an archive of boards. - /teams/{teamID}/boards: - get: - description: Returns team boards - operationId: getBoards - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Board' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/boards/{boardID}/files: - post: - consumes: - - multipart/form-data - description: Upload a binary file, attached to a root block - operationId: uploadFile - parameters: - - description: ID of the team - in: path - name: teamID - required: true - type: string - - description: Board ID - in: path - name: boardID - required: true - type: string - - description: The file to upload - in: formData - name: uploaded file - type: file - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/FileUploadResponse' - "404": - description: board not found - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/boards/search: - get: - description: Returns the boards that match with a search term - operationId: searchBoards - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: The search term. Must have at least one character - in: query - name: q - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Board' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/categories: - get: - description: Gets the user's board categories - operationId: getUserCategoryBoards - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/CategoryBoards' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - post: - description: Create a category for boards - operationId: createCategory - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: category to create - in: body - name: Body - required: true - schema: - $ref: '#/definitions/Category' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Category' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/categories/{categoryID}: - delete: - description: Delete a category - operationId: deleteCategory - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: Category ID - in: path - name: categoryID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - put: - description: Create a category for boards - operationId: updateCategory - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: Category ID - in: path - name: categoryID - required: true - type: string - - description: category to update - in: body - name: Body - required: true - schema: - $ref: '#/definitions/Category' - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/Category' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/categories/{categoryID}/boards/{boardID}: - post: - description: Set the category of a board - operationId: updateCategoryBoard - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: Category ID - in: path - name: categoryID - required: true - type: string - - description: Board ID - in: path - name: boardID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/regenerate_signup_token: - post: - description: Regenerates the signup token for the root team - operationId: regenerateSignupToken - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/templates: - get: - description: Returns team templates - operationId: getTemplates - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/Board' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /teams/{teamID}/users: - get: - description: Returns team users - operationId: getTeamUsers - parameters: - - description: Team ID - in: path - name: teamID - required: true - type: string - - description: string to filter users list - in: query - name: search - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/User' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /users/{userID}: - get: - description: Returns a user - operationId: getUser - parameters: - - description: User ID - in: path - name: userID - required: true - type: string - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/User' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /users/{userID}/changepassword: - post: - description: Change a user's password - operationId: changePassword - parameters: - - description: User ID - in: path - name: userID - required: true - type: string - - description: Change password request - in: body - name: body - required: true - schema: - $ref: '#/definitions/ChangePasswordRequest' - produces: - - application/json - responses: - "200": - description: success - "400": - description: invalid request - schema: - $ref: '#/definitions/ErrorResponse' - "500": - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /users/{userID}/config: - patch: - description: Updates user config - operationId: updateUserConfig - parameters: - - description: User ID - in: path - name: userID - required: true - type: string - - description: User config patch to apply - in: body - name: Body - required: true - schema: - $ref: '#/definitions/UserPropPatch' - produces: - - application/json - responses: - "200": - description: success - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /users/me: - get: - description: Returns the currently logged-in user - operationId: getMe - produces: - - application/json - responses: - "200": - description: success - schema: - $ref: '#/definitions/User' - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] - /users/me/memberships: - get: - description: Returns the currently users board memberships - operationId: getMyMemberships - produces: - - application/json - responses: - "200": - description: success - schema: - items: - $ref: '#/definitions/BoardMember' - type: array - default: - description: internal error - schema: - $ref: '#/definitions/ErrorResponse' - security: - - BearerAuth: [] + /api/v2/teams/{teamID}/notifyadminupgrade: + get: + operationId: handleNotifyAdminUpgrade + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Notifies admins for upgrade request. + /boards: + post: + description: Creates a new board + operationId: createBoard + parameters: + - description: the board to create + in: body + name: Body + required: true + schema: + $ref: '#/definitions/Board' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Board' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards-and-blocks: + delete: + description: Deletes boards and blocks + operationId: deleteBoardsAndBlocks + parameters: + - description: the boards and blocks to delete + in: body + name: Body + required: true + schema: + $ref: '#/definitions/DeleteBoardsAndBlocks' + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + patch: + description: Patches a set of related boards and blocks + operationId: patchBoardsAndBlocks + parameters: + - description: the patches for the boards and blocks + in: body + name: Body + required: true + schema: + $ref: '#/definitions/PatchBoardsAndBlocks' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardsAndBlocks' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + post: + description: Creates new boards and blocks + operationId: insertBoardsAndBlocks + parameters: + - description: the boards and blocks to create + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BoardsAndBlocks' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardsAndBlocks' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}: + delete: + description: Removes a board + operationId: deleteBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + get: + description: Returns a board + operationId: getBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Board' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + patch: + description: Partially updates a board + operationId: patchBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: board patch to apply + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BoardPatch' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Board' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/archive/export: + get: + operationId: archiveExportBoard + parameters: + - description: Id of board to export + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Exports an archive of all blocks for one boards. + /boards/{boardID}/blocks: + get: + description: Returns blocks + operationId: getBlocks + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: ID of parent block, omit to specify all blocks + in: query + name: parent_id + type: string + - description: Type of blocks to return, omit to specify all types + in: query + name: type + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Block' + type: array + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + post: + description: |- + Insert blocks. The specified IDs will only be used to link + blocks with existing ones, the rest will be replaced by server + generated IDs + operationId: updateBlocks + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: Disables notifications (for bulk inserting) + in: query + name: disable_notify + type: bool + - description: array of blocks to insert or update + in: body + name: Body + required: true + schema: + items: + $ref: '#/definitions/Block' + type: array + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Block' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/blocks/: + patch: + description: Partially updates batch of blocks + operationId: patchBlocks + parameters: + - description: Workspace ID + in: path + name: boardID + required: true + type: string + - description: Disables notifications (for bulk patching) + in: query + name: disable_notify + type: bool + - description: block Ids and block patches to apply + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BlockPatchBatch' + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/blocks/{blockID}: + delete: + description: Deletes a block + operationId: deleteBlock + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: ID of block to delete + in: path + name: blockID + required: true + type: string + - description: Disables notifications (for bulk deletion) + in: query + name: disable_notify + type: bool + produces: + - application/json + responses: + "200": + description: success + "404": + description: block not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + patch: + description: Partially updates a block + operationId: patchBlock + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: ID of block to patch + in: path + name: blockID + required: true + type: string + - description: Disables notifications (for bulk patching) + in: query + name: disable_notify + type: bool + - description: block patch to apply + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BlockPatch' + produces: + - application/json + responses: + "200": + description: success + "404": + description: block not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/blocks/{blockID}/duplicate: + post: + description: Returns the new created blocks + operationId: duplicateBlock + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: Block ID + in: path + name: blockID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Block' + type: array + "404": + description: board or block not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/blocks/{blockID}/undelete: + post: + description: Undeletes a block + operationId: undeleteBlock + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: ID of block to undelete + in: path + name: blockID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BlockPatch' + "404": + description: block not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/duplicate: + post: + description: Returns the new created board and all the blocks + operationId: duplicateBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardsAndBlocks' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/join: + post: + description: Become a member of a board + operationId: joinBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardMember' + "403": + description: access denied + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/leave: + post: + description: Remove your own membership from a board + operationId: leaveBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + "403": + description: access denied + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/members: + get: + description: Returns the members of the board + operationId: getMembersForBoard + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/BoardMember' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + post: + description: Adds a new member to a board + operationId: addMember + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: membership to replace the current one with + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BoardMember' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardMember' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/members/{userID}: + delete: + description: Deletes a member from a board + operationId: deleteMember + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: User ID + in: path + name: userID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + put: + description: Updates a board member + operationId: updateMember + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: User ID + in: path + name: userID + required: true + type: string + - description: membership to replace the current one with + in: body + name: Body + required: true + schema: + $ref: '#/definitions/BoardMember' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardMember' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/metadata: + get: + description: Returns a board's metadata + operationId: getBoardMetadata + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardMetadata' + "404": + description: board not found + "501": + description: required license not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/sharing: + get: + description: Returns sharing information for a board + operationId: getSharing + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Sharing' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + post: + description: Sets sharing information for a board + operationId: postSharing + parameters: + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: sharing information for a root block + in: body + name: Body + required: true + schema: + $ref: '#/definitions/Sharing' + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/{boardID}/undelete: + post: + description: Undeletes a board + operationId: undeleteBoard + parameters: + - description: ID of board to undelete + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /boards/search: + get: + description: Returns the boards that match with a search term + operationId: searchAllBoards + parameters: + - description: The search term. Must have at least one character + in: query + name: q + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Board' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /clientConfig: + get: + description: Returns the client configuration + operationId: getClientConfig + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/ClientConfig' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + /files/teams/{teamID}/{boardID}/{filename}: + get: + description: Returns the contents of an uploaded file + operationId: getFile + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: name of the file + in: path + name: filename + required: true + type: string + produces: + - application/json + - image/jpg + - image/png + - image/gif + responses: + "200": + description: success + "404": + description: file not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /hello: + get: + operationId: hello + produces: + - text/plain + responses: + "200": + description: success + summary: Responds with `Hello` if the web service is running. + /limits: + get: + operationId: cloudLimits + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/BoardsCloudLimits' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Fetches the cloud limits of the server. + /login: + post: + description: Login user + operationId: login + parameters: + - description: Login request + in: body + name: body + required: true + schema: + $ref: '#/definitions/LoginRequest' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/LoginResponse' + "401": + description: invalid login + schema: + $ref: '#/definitions/ErrorResponse' + "500": + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + /logout: + post: + description: Logout user + operationId: logout + produces: + - application/json + responses: + "200": + description: success + "500": + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /register: + post: + description: Register new user + operationId: register + parameters: + - description: Register request + in: body + name: body + required: true + schema: + $ref: '#/definitions/RegisterRequest' + produces: + - application/json + responses: + "200": + description: success + "401": + description: invalid registration token + "500": + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + /subscriptions: + post: + operationId: createSubscription + parameters: + - description: subscription definition + in: body + name: Body + required: true + schema: + $ref: '#/definitions/Subscription' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/User' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Creates a subscription to a block for a user. The user will receive change notifications for the block. + /subscriptions/{blockID}/{subscriberID}: + delete: + operationId: deleteSubscription + parameters: + - description: Block ID + in: path + name: blockID + required: true + type: string + - description: Subscriber ID + in: path + name: subscriberID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Deletes a subscription a user has for a a block. The user will no longer receive change notifications for the block. + /subscriptions/{subscriberID}: + get: + operationId: getSubscriptions + parameters: + - description: Subscriber ID + in: path + name: subscriberID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/User' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Gets subscriptions for a user. + /team/{teamID}/onboard: + post: + operationId: onboard + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + properties: + boardID: + description: Board ID + type: string + teamID: + description: Team ID + type: string + type: object + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Onboards a user on Boards. + /teams: + get: + description: Returns information of all the teams + operationId: getTeams + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Team' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}: + get: + description: Returns information of the root team + operationId: getTeam + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Team' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/archive/export: + get: + operationId: archiveExportTeam + parameters: + - description: Id of team + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Exports an archive of all blocks for all the boards in a team. + /teams/{teamID}/archive/import: + post: + consumes: + - multipart/form-data + operationId: archiveImport + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: archive file to import + in: formData + name: file + required: true + type: file + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + summary: Import an archive of boards. + /teams/{teamID}/boards: + get: + description: Returns team boards + operationId: getBoards + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Board' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/boards/{boardID}/files: + post: + consumes: + - multipart/form-data + description: Upload a binary file, attached to a root block + operationId: uploadFile + parameters: + - description: ID of the team + in: path + name: teamID + required: true + type: string + - description: Board ID + in: path + name: boardID + required: true + type: string + - description: The file to upload + in: formData + name: uploaded file + type: file + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/FileUploadResponse' + "404": + description: board not found + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/boards/insights: + get: + description: Returns team boards insights + operationId: handleTeamBoardsInsights + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: duration of data to calculate insights for + in: query + name: time_range + required: true + type: string + - description: page offset for top boards + in: query + name: page + required: true + type: string + - description: limit for boards in a page. + in: query + name: per_page + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/BoardInsight' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/boards/search: + get: + description: Returns the boards that match with a search term in the team + operationId: searchBoards + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: The search term. Must have at least one character + in: query + name: q + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Board' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/boards/search/linkable: + get: + description: |- + Returns the boards that match with a search term in the team and the + user has permission to manage members + operationId: searchLinkableBoards + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: The search term. Must have at least one character + in: query + name: q + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Board' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/categories: + get: + description: Gets the user's board categories + operationId: getUserCategoryBoards + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/CategoryBoards' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + post: + description: Create a category for boards + operationId: createCategory + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: category to create + in: body + name: Body + required: true + schema: + $ref: '#/definitions/Category' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Category' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/categories/{categoryID}: + delete: + description: Delete a category + operationId: deleteCategory + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: Category ID + in: path + name: categoryID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + put: + description: Create a category for boards + operationId: updateCategory + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: Category ID + in: path + name: categoryID + required: true + type: string + - description: category to update + in: body + name: Body + required: true + schema: + $ref: '#/definitions/Category' + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Category' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/categories/{categoryID}/boards/{boardID}: + post: + description: Set the category of a board + operationId: updateCategoryBoard + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: Category ID + in: path + name: categoryID + required: true + type: string + - description: Board ID + in: path + name: boardID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/channels: + get: + description: Returns the user available channels + operationId: searchMyChannels + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: string to filter channels list + in: query + name: search + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Channel' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/channels/{channelID}: + get: + description: Returns the requested channel + operationId: getChannel + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: Channel ID + in: path + name: channelID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Channel' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/regenerate_signup_token: + post: + description: Regenerates the signup token for the root team + operationId: regenerateSignupToken + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/templates: + get: + description: Returns team templates + operationId: getTemplates + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/Board' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /teams/{teamID}/users: + get: + description: Returns team users + operationId: getTeamUsers + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: string to filter users list + in: query + name: search + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/User' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users: + post: + description: Returns a user[] + operationId: getUsersList + parameters: + - description: User ID + in: path + name: userID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/User' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/{userID}: + get: + description: Returns a user + operationId: getUser + parameters: + - description: User ID + in: path + name: userID + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/User' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/{userID}/changepassword: + post: + description: Change a user's password + operationId: changePassword + parameters: + - description: User ID + in: path + name: userID + required: true + type: string + - description: Change password request + in: body + name: body + required: true + schema: + $ref: '#/definitions/ChangePasswordRequest' + produces: + - application/json + responses: + "200": + description: success + "400": + description: invalid request + schema: + $ref: '#/definitions/ErrorResponse' + "500": + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/{userID}/config: + patch: + description: Updates user config + operationId: updateUserConfig + parameters: + - description: User ID + in: path + name: userID + required: true + type: string + - description: User config patch to apply + in: body + name: Body + required: true + schema: + $ref: '#/definitions/UserPropPatch' + produces: + - application/json + responses: + "200": + description: success + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/me: + get: + description: Returns the currently logged-in user + operationId: getMe + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/User' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/me/boards/insights: + get: + description: Returns user boards insights + operationId: getUserBoardsInsights + parameters: + - description: Team ID + in: path + name: teamID + required: true + type: string + - description: duration of data to calculate insights for + in: query + name: time_range + required: true + type: string + - description: page offset for top boards + in: query + name: page + required: true + type: string + - description: limit for boards in a page. + in: query + name: per_page + required: true + type: string + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/BoardInsight' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/me/config: + get: + description: Returns an array of user preferences + operationId: getUserConfig + produces: + - application/json + responses: + "200": + description: success + schema: + $ref: '#/definitions/Preferences' + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] + /users/me/memberships: + get: + description: Returns the currently users board memberships + operationId: getMyMemberships + produces: + - application/json + responses: + "200": + description: success + schema: + items: + $ref: '#/definitions/BoardMember' + type: array + default: + description: internal error + schema: + $ref: '#/definitions/ErrorResponse' + security: + - BearerAuth: [] produces: -- application/json + - application/json schemes: -- http -- https + - http + - https securityDefinitions: - BearerAuth: - description: 'Pass session token using Bearer authentication, e.g. set header "Authorization: Bearer "' - in: header - name: Authorization - type: apiKey + BearerAuth: + description: 'Pass session token using Bearer authentication, e.g. set header "Authorization: Bearer "' + in: header + name: Authorization + type: apiKey swagger: "2.0"