github.com/pingcap/tiflow@v0.0.0-20240520035814-5bf52d54e205/docs/swagger/docs.go (about)

     1  // Package swagger GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
     2  // This file was generated by swaggo/swag
     3  package swagger
     4  
     5  import (
     6  	"bytes"
     7  	"encoding/json"
     8  	"strings"
     9  	"text/template"
    10  
    11  	"github.com/swaggo/swag"
    12  )
    13  
    14  var doc = `{
    15      "schemes": {{ marshal .Schemes }},
    16      "swagger": "2.0",
    17      "info": {
    18          "description": "{{escape .Description}}",
    19          "title": "{{.Title}}",
    20          "contact": {},
    21          "version": "{{.Version}}"
    22      },
    23      "host": "{{.Host}}",
    24      "basePath": "{{.BasePath}}",
    25      "paths": {
    26          "/api/v1/captures": {
    27              "get": {
    28                  "description": "list all captures in cdc cluster",
    29                  "consumes": [
    30                      "application/json"
    31                  ],
    32                  "produces": [
    33                      "application/json"
    34                  ],
    35                  "tags": [
    36                      "capture"
    37                  ],
    38                  "summary": "List captures",
    39                  "responses": {
    40                      "200": {
    41                          "description": "OK",
    42                          "schema": {
    43                              "type": "array",
    44                              "items": {
    45                                  "$ref": "#/definitions/model.Capture"
    46                              }
    47                          }
    48                      },
    49                      "400": {
    50                          "description": "Bad Request",
    51                          "schema": {
    52                              "$ref": "#/definitions/model.HTTPError"
    53                          }
    54                      },
    55                      "500": {
    56                          "description": "Internal Server Error",
    57                          "schema": {
    58                              "$ref": "#/definitions/model.HTTPError"
    59                          }
    60                      }
    61                  }
    62              }
    63          },
    64          "/api/v1/captures/drain": {
    65              "put": {
    66                  "description": "Drain all tables at the target captures in cdc cluster",
    67                  "consumes": [
    68                      "application/json"
    69                  ],
    70                  "produces": [
    71                      "application/json"
    72                  ],
    73                  "tags": [
    74                      "capture"
    75                  ],
    76                  "summary": "Drain captures",
    77                  "responses": {
    78                      "200": {
    79                          "description": ""
    80                      },
    81                      "202": {
    82                          "description": ""
    83                      },
    84                      "400": {
    85                          "description": "Bad Request",
    86                          "schema": {
    87                              "$ref": "#/definitions/model.HTTPError"
    88                          }
    89                      },
    90                      "500": {
    91                          "description": "Internal Server Error",
    92                          "schema": {
    93                              "$ref": "#/definitions/model.HTTPError"
    94                          }
    95                      },
    96                      "503": {
    97                          "description": "Service Unavailable",
    98                          "schema": {
    99                              "$ref": "#/definitions/model.HTTPError"
   100                          }
   101                      }
   102                  }
   103              }
   104          },
   105          "/api/v1/changefeeds": {
   106              "get": {
   107                  "description": "list all changefeeds in cdc cluster",
   108                  "consumes": [
   109                      "application/json"
   110                  ],
   111                  "produces": [
   112                      "application/json"
   113                  ],
   114                  "tags": [
   115                      "changefeed"
   116                  ],
   117                  "summary": "List changefeed",
   118                  "parameters": [
   119                      {
   120                          "type": "string",
   121                          "description": "state",
   122                          "name": "state",
   123                          "in": "query"
   124                      }
   125                  ],
   126                  "responses": {
   127                      "200": {
   128                          "description": "OK",
   129                          "schema": {
   130                              "type": "array",
   131                              "items": {
   132                                  "$ref": "#/definitions/model.ChangefeedCommonInfo"
   133                              }
   134                          }
   135                      },
   136                      "500": {
   137                          "description": "Internal Server Error",
   138                          "schema": {
   139                              "$ref": "#/definitions/model.HTTPError"
   140                          }
   141                      }
   142                  }
   143              },
   144              "post": {
   145                  "description": "create a new changefeed",
   146                  "consumes": [
   147                      "application/json"
   148                  ],
   149                  "produces": [
   150                      "application/json"
   151                  ],
   152                  "tags": [
   153                      "changefeed"
   154                  ],
   155                  "summary": "Create changefeed",
   156                  "parameters": [
   157                      {
   158                          "description": "changefeed config",
   159                          "name": "changefeed",
   160                          "in": "body",
   161                          "required": true,
   162                          "schema": {
   163                              "$ref": "#/definitions/model.ChangefeedConfig"
   164                          }
   165                      }
   166                  ],
   167                  "responses": {
   168                      "202": {
   169                          "description": ""
   170                      },
   171                      "400": {
   172                          "description": "Bad Request",
   173                          "schema": {
   174                              "$ref": "#/definitions/model.HTTPError"
   175                          }
   176                      },
   177                      "500": {
   178                          "description": "Internal Server Error",
   179                          "schema": {
   180                              "$ref": "#/definitions/model.HTTPError"
   181                          }
   182                      }
   183                  }
   184              }
   185          },
   186          "/api/v1/changefeeds/{changefeed_id}": {
   187              "get": {
   188                  "description": "get detail information of a changefeed",
   189                  "consumes": [
   190                      "application/json"
   191                  ],
   192                  "produces": [
   193                      "application/json"
   194                  ],
   195                  "tags": [
   196                      "changefeed"
   197                  ],
   198                  "summary": "Get changefeed",
   199                  "parameters": [
   200                      {
   201                          "type": "string",
   202                          "description": "changefeed_id",
   203                          "name": "changefeed_id",
   204                          "in": "path",
   205                          "required": true
   206                      }
   207                  ],
   208                  "responses": {
   209                      "200": {
   210                          "description": "OK",
   211                          "schema": {
   212                              "$ref": "#/definitions/model.ChangefeedDetail"
   213                          }
   214                      },
   215                      "400": {
   216                          "description": "Bad Request",
   217                          "schema": {
   218                              "$ref": "#/definitions/model.HTTPError"
   219                          }
   220                      },
   221                      "500": {
   222                          "description": "Internal Server Error",
   223                          "schema": {
   224                              "$ref": "#/definitions/model.HTTPError"
   225                          }
   226                      }
   227                  }
   228              },
   229              "put": {
   230                  "description": "Update a changefeed",
   231                  "consumes": [
   232                      "application/json"
   233                  ],
   234                  "produces": [
   235                      "application/json"
   236                  ],
   237                  "tags": [
   238                      "changefeed"
   239                  ],
   240                  "summary": "Update a changefeed",
   241                  "parameters": [
   242                      {
   243                          "type": "string",
   244                          "description": "changefeed_id",
   245                          "name": "changefeed_id",
   246                          "in": "path",
   247                          "required": true
   248                      },
   249                      {
   250                          "description": "changefeed config",
   251                          "name": "changefeedConfig",
   252                          "in": "body",
   253                          "required": true,
   254                          "schema": {
   255                              "$ref": "#/definitions/model.ChangefeedConfig"
   256                          }
   257                      }
   258                  ],
   259                  "responses": {
   260                      "202": {
   261                          "description": ""
   262                      },
   263                      "400": {
   264                          "description": "Bad Request",
   265                          "schema": {
   266                              "$ref": "#/definitions/model.HTTPError"
   267                          }
   268                      },
   269                      "500": {
   270                          "description": "Internal Server Error",
   271                          "schema": {
   272                              "$ref": "#/definitions/model.HTTPError"
   273                          }
   274                      }
   275                  }
   276              },
   277              "delete": {
   278                  "description": "Remove a changefeed",
   279                  "consumes": [
   280                      "application/json"
   281                  ],
   282                  "produces": [
   283                      "application/json"
   284                  ],
   285                  "tags": [
   286                      "changefeed"
   287                  ],
   288                  "summary": "Remove a changefeed",
   289                  "parameters": [
   290                      {
   291                          "type": "string",
   292                          "description": "changefeed_id",
   293                          "name": "changefeed_id",
   294                          "in": "path",
   295                          "required": true
   296                      }
   297                  ],
   298                  "responses": {
   299                      "202": {
   300                          "description": ""
   301                      },
   302                      "400": {
   303                          "description": "Bad Request",
   304                          "schema": {
   305                              "$ref": "#/definitions/model.HTTPError"
   306                          }
   307                      },
   308                      "500": {
   309                          "description": "Internal Server Error",
   310                          "schema": {
   311                              "$ref": "#/definitions/model.HTTPError"
   312                          }
   313                      }
   314                  }
   315              }
   316          },
   317          "/api/v1/changefeeds/{changefeed_id}/pause": {
   318              "post": {
   319                  "description": "Pause a changefeed",
   320                  "consumes": [
   321                      "application/json"
   322                  ],
   323                  "produces": [
   324                      "application/json"
   325                  ],
   326                  "tags": [
   327                      "changefeed"
   328                  ],
   329                  "summary": "Pause a changefeed",
   330                  "parameters": [
   331                      {
   332                          "type": "string",
   333                          "description": "changefeed_id",
   334                          "name": "changefeed_id",
   335                          "in": "path",
   336                          "required": true
   337                      }
   338                  ],
   339                  "responses": {
   340                      "202": {
   341                          "description": ""
   342                      },
   343                      "400": {
   344                          "description": "Bad Request",
   345                          "schema": {
   346                              "$ref": "#/definitions/model.HTTPError"
   347                          }
   348                      },
   349                      "500": {
   350                          "description": "Internal Server Error",
   351                          "schema": {
   352                              "$ref": "#/definitions/model.HTTPError"
   353                          }
   354                      }
   355                  }
   356              }
   357          },
   358          "/api/v1/changefeeds/{changefeed_id}/resume": {
   359              "post": {
   360                  "description": "Resume a changefeed",
   361                  "consumes": [
   362                      "application/json"
   363                  ],
   364                  "produces": [
   365                      "application/json"
   366                  ],
   367                  "tags": [
   368                      "changefeed"
   369                  ],
   370                  "summary": "Resume a changefeed",
   371                  "parameters": [
   372                      {
   373                          "type": "string",
   374                          "description": "changefeed_id",
   375                          "name": "changefeed_id",
   376                          "in": "path",
   377                          "required": true
   378                      }
   379                  ],
   380                  "responses": {
   381                      "202": {
   382                          "description": ""
   383                      },
   384                      "400": {
   385                          "description": "Bad Request",
   386                          "schema": {
   387                              "$ref": "#/definitions/model.HTTPError"
   388                          }
   389                      },
   390                      "500": {
   391                          "description": "Internal Server Error",
   392                          "schema": {
   393                              "$ref": "#/definitions/model.HTTPError"
   394                          }
   395                      }
   396                  }
   397              }
   398          },
   399          "/api/v1/changefeeds/{changefeed_id}/tables/move_table": {
   400              "post": {
   401                  "description": "move one table to the target capture",
   402                  "consumes": [
   403                      "application/json"
   404                  ],
   405                  "produces": [
   406                      "application/json"
   407                  ],
   408                  "tags": [
   409                      "changefeed"
   410                  ],
   411                  "summary": "move table",
   412                  "parameters": [
   413                      {
   414                          "type": "string",
   415                          "description": "changefeed_id",
   416                          "name": "changefeed_id",
   417                          "in": "path",
   418                          "required": true
   419                      },
   420                      {
   421                          "description": "move table request",
   422                          "name": "MoveTable",
   423                          "in": "body",
   424                          "required": true,
   425                          "schema": {
   426                              "$ref": "#/definitions/model.MoveTableReq"
   427                          }
   428                      }
   429                  ],
   430                  "responses": {
   431                      "202": {
   432                          "description": ""
   433                      },
   434                      "400": {
   435                          "description": "Bad Request",
   436                          "schema": {
   437                              "$ref": "#/definitions/model.HTTPError"
   438                          }
   439                      },
   440                      "500": {
   441                          "description": "Internal Server Error",
   442                          "schema": {
   443                              "$ref": "#/definitions/model.HTTPError"
   444                          }
   445                      }
   446                  }
   447              }
   448          },
   449          "/api/v1/changefeeds/{changefeed_id}/tables/rebalance_table": {
   450              "post": {
   451                  "description": "rebalance all tables of a changefeed",
   452                  "consumes": [
   453                      "application/json"
   454                  ],
   455                  "produces": [
   456                      "application/json"
   457                  ],
   458                  "tags": [
   459                      "changefeed"
   460                  ],
   461                  "summary": "rebalance tables",
   462                  "parameters": [
   463                      {
   464                          "type": "string",
   465                          "description": "changefeed_id",
   466                          "name": "changefeed_id",
   467                          "in": "path",
   468                          "required": true
   469                      }
   470                  ],
   471                  "responses": {
   472                      "202": {
   473                          "description": ""
   474                      },
   475                      "400": {
   476                          "description": "Bad Request",
   477                          "schema": {
   478                              "$ref": "#/definitions/model.HTTPError"
   479                          }
   480                      },
   481                      "500": {
   482                          "description": "Internal Server Error",
   483                          "schema": {
   484                              "$ref": "#/definitions/model.HTTPError"
   485                          }
   486                      }
   487                  }
   488              }
   489          },
   490          "/api/v1/health": {
   491              "get": {
   492                  "description": "check if CDC cluster is health",
   493                  "consumes": [
   494                      "application/json"
   495                  ],
   496                  "produces": [
   497                      "application/json"
   498                  ],
   499                  "tags": [
   500                      "common"
   501                  ],
   502                  "summary": "Check if CDC cluster is health",
   503                  "responses": {
   504                      "200": {
   505                          "description": ""
   506                      },
   507                      "500": {
   508                          "description": "Internal Server Error",
   509                          "schema": {
   510                              "$ref": "#/definitions/model.HTTPError"
   511                          }
   512                      }
   513                  }
   514              }
   515          },
   516          "/api/v1/log": {
   517              "post": {
   518                  "description": "change TiCDC log level dynamically",
   519                  "consumes": [
   520                      "application/json"
   521                  ],
   522                  "produces": [
   523                      "application/json"
   524                  ],
   525                  "tags": [
   526                      "common"
   527                  ],
   528                  "summary": "Change TiCDC log level",
   529                  "parameters": [
   530                      {
   531                          "description": "log level",
   532                          "name": "log_level",
   533                          "in": "body",
   534                          "required": true,
   535                          "schema": {
   536                              "type": "string"
   537                          }
   538                      }
   539                  ],
   540                  "responses": {
   541                      "200": {
   542                          "description": ""
   543                      },
   544                      "400": {
   545                          "description": "Bad Request",
   546                          "schema": {
   547                              "$ref": "#/definitions/model.HTTPError"
   548                          }
   549                      }
   550                  }
   551              }
   552          },
   553          "/api/v1/owner/resign": {
   554              "post": {
   555                  "description": "notify the current controller to resign",
   556                  "consumes": [
   557                      "application/json"
   558                  ],
   559                  "produces": [
   560                      "application/json"
   561                  ],
   562                  "tags": [
   563                      "owner"
   564                  ],
   565                  "summary": "notify the ticdc cluster controller to resign",
   566                  "responses": {
   567                      "202": {
   568                          "description": ""
   569                      },
   570                      "400": {
   571                          "description": "Bad Request",
   572                          "schema": {
   573                              "$ref": "#/definitions/model.HTTPError"
   574                          }
   575                      },
   576                      "500": {
   577                          "description": "Internal Server Error",
   578                          "schema": {
   579                              "$ref": "#/definitions/model.HTTPError"
   580                          }
   581                      }
   582                  }
   583              }
   584          },
   585          "/api/v1/processors": {
   586              "get": {
   587                  "description": "list all processors in the TiCDC cluster",
   588                  "consumes": [
   589                      "application/json"
   590                  ],
   591                  "produces": [
   592                      "application/json"
   593                  ],
   594                  "tags": [
   595                      "processor"
   596                  ],
   597                  "summary": "List processors",
   598                  "responses": {
   599                      "200": {
   600                          "description": "OK",
   601                          "schema": {
   602                              "type": "array",
   603                              "items": {
   604                                  "$ref": "#/definitions/model.ProcessorCommonInfo"
   605                              }
   606                          }
   607                      },
   608                      "400": {
   609                          "description": "Bad Request",
   610                          "schema": {
   611                              "$ref": "#/definitions/model.HTTPError"
   612                          }
   613                      },
   614                      "500": {
   615                          "description": "Internal Server Error",
   616                          "schema": {
   617                              "$ref": "#/definitions/model.HTTPError"
   618                          }
   619                      }
   620                  }
   621              }
   622          },
   623          "/api/v1/processors/{changefeed_id}/{capture_id}": {
   624              "get": {
   625                  "description": "get the detail information of a processor",
   626                  "consumes": [
   627                      "application/json"
   628                  ],
   629                  "produces": [
   630                      "application/json"
   631                  ],
   632                  "tags": [
   633                      "processor"
   634                  ],
   635                  "summary": "Get processor detail information",
   636                  "parameters": [
   637                      {
   638                          "type": "string",
   639                          "description": "changefeed ID",
   640                          "name": "changefeed_id",
   641                          "in": "path",
   642                          "required": true
   643                      },
   644                      {
   645                          "type": "string",
   646                          "description": "capture ID",
   647                          "name": "capture_id",
   648                          "in": "path",
   649                          "required": true
   650                      }
   651                  ],
   652                  "responses": {
   653                      "200": {
   654                          "description": "OK",
   655                          "schema": {
   656                              "$ref": "#/definitions/model.ProcessorDetail"
   657                          }
   658                      },
   659                      "400": {
   660                          "description": "Bad Request",
   661                          "schema": {
   662                              "$ref": "#/definitions/model.HTTPError"
   663                          }
   664                      },
   665                      "500": {
   666                          "description": "Internal Server Error",
   667                          "schema": {
   668                              "$ref": "#/definitions/model.HTTPError"
   669                          }
   670                      }
   671                  }
   672              }
   673          },
   674          "/api/v1/status": {
   675              "get": {
   676                  "description": "get the status of a server(capture)",
   677                  "consumes": [
   678                      "application/json"
   679                  ],
   680                  "produces": [
   681                      "application/json"
   682                  ],
   683                  "tags": [
   684                      "common"
   685                  ],
   686                  "summary": "Get server status",
   687                  "responses": {
   688                      "200": {
   689                          "description": "OK",
   690                          "schema": {
   691                              "$ref": "#/definitions/model.ServerStatus"
   692                          }
   693                      },
   694                      "400": {
   695                          "description": "Bad Request",
   696                          "schema": {
   697                              "$ref": "#/definitions/model.HTTPError"
   698                          }
   699                      },
   700                      "500": {
   701                          "description": "Internal Server Error",
   702                          "schema": {
   703                              "$ref": "#/definitions/model.HTTPError"
   704                          }
   705                      }
   706                  }
   707              }
   708          },
   709          "/api/v2/captures": {
   710              "get": {
   711                  "description": "list all captures in cdc cluster",
   712                  "produces": [
   713                      "application/json"
   714                  ],
   715                  "tags": [
   716                      "capture",
   717                      "v2"
   718                  ],
   719                  "summary": "List captures",
   720                  "responses": {
   721                      "200": {
   722                          "description": "OK",
   723                          "schema": {
   724                              "type": "array",
   725                              "items": {
   726                                  "$ref": "#/definitions/v2.Capture"
   727                              }
   728                          }
   729                      },
   730                      "400": {
   731                          "description": "Bad Request",
   732                          "schema": {
   733                              "$ref": "#/definitions/model.HTTPError"
   734                          }
   735                      },
   736                      "500": {
   737                          "description": "Internal Server Error",
   738                          "schema": {
   739                              "$ref": "#/definitions/model.HTTPError"
   740                          }
   741                      }
   742                  }
   743              }
   744          },
   745          "/api/v2/changefeeds": {
   746              "get": {
   747                  "description": "list all changefeeds in cdc cluster",
   748                  "consumes": [
   749                      "application/json"
   750                  ],
   751                  "produces": [
   752                      "application/json"
   753                  ],
   754                  "tags": [
   755                      "changefeed",
   756                      "v2"
   757                  ],
   758                  "summary": "List changefeed",
   759                  "parameters": [
   760                      {
   761                          "type": "string",
   762                          "description": "state",
   763                          "name": "state",
   764                          "in": "query"
   765                      },
   766                      {
   767                          "type": "string",
   768                          "description": "default",
   769                          "name": "namespace",
   770                          "in": "query"
   771                      }
   772                  ],
   773                  "responses": {
   774                      "200": {
   775                          "description": "OK",
   776                          "schema": {
   777                              "type": "array",
   778                              "items": {
   779                                  "$ref": "#/definitions/v2.ChangefeedCommonInfo"
   780                              }
   781                          }
   782                      },
   783                      "500": {
   784                          "description": "Internal Server Error",
   785                          "schema": {
   786                              "$ref": "#/definitions/model.HTTPError"
   787                          }
   788                      }
   789                  }
   790              },
   791              "post": {
   792                  "description": "create a new changefeed",
   793                  "consumes": [
   794                      "application/json"
   795                  ],
   796                  "produces": [
   797                      "application/json"
   798                  ],
   799                  "tags": [
   800                      "changefeed",
   801                      "v2"
   802                  ],
   803                  "summary": "Create changefeed",
   804                  "parameters": [
   805                      {
   806                          "description": "changefeed config",
   807                          "name": "changefeed",
   808                          "in": "body",
   809                          "required": true,
   810                          "schema": {
   811                              "$ref": "#/definitions/v2.ChangefeedConfig"
   812                          }
   813                      }
   814                  ],
   815                  "responses": {
   816                      "200": {
   817                          "description": "OK",
   818                          "schema": {
   819                              "$ref": "#/definitions/v2.ChangeFeedInfo"
   820                          }
   821                      },
   822                      "400": {
   823                          "description": "Bad Request",
   824                          "schema": {
   825                              "$ref": "#/definitions/model.HTTPError"
   826                          }
   827                      },
   828                      "500": {
   829                          "description": "Internal Server Error",
   830                          "schema": {
   831                              "$ref": "#/definitions/model.HTTPError"
   832                          }
   833                      }
   834                  }
   835              }
   836          },
   837          "/api/v2/changefeeds/{changefeed_id}": {
   838              "get": {
   839                  "description": "get detail information of a changefeed",
   840                  "consumes": [
   841                      "application/json"
   842                  ],
   843                  "produces": [
   844                      "application/json"
   845                  ],
   846                  "tags": [
   847                      "changefeed",
   848                      "v2"
   849                  ],
   850                  "summary": "Get changefeed",
   851                  "parameters": [
   852                      {
   853                          "type": "string",
   854                          "description": "changefeed_id",
   855                          "name": "changefeed_id",
   856                          "in": "path",
   857                          "required": true
   858                      },
   859                      {
   860                          "type": "string",
   861                          "description": "default",
   862                          "name": "namespace",
   863                          "in": "query"
   864                      }
   865                  ],
   866                  "responses": {
   867                      "200": {
   868                          "description": "OK",
   869                          "schema": {
   870                              "$ref": "#/definitions/v2.ChangeFeedInfo"
   871                          }
   872                      },
   873                      "400": {
   874                          "description": "Bad Request",
   875                          "schema": {
   876                              "$ref": "#/definitions/model.HTTPError"
   877                          }
   878                      },
   879                      "500": {
   880                          "description": "Internal Server Error",
   881                          "schema": {
   882                              "$ref": "#/definitions/model.HTTPError"
   883                          }
   884                      }
   885                  }
   886              },
   887              "put": {
   888                  "description": "Update a changefeed",
   889                  "consumes": [
   890                      "application/json"
   891                  ],
   892                  "produces": [
   893                      "application/json"
   894                  ],
   895                  "tags": [
   896                      "changefeed",
   897                      "v2"
   898                  ],
   899                  "summary": "Update a changefeed",
   900                  "parameters": [
   901                      {
   902                          "type": "string",
   903                          "description": "changefeed_id",
   904                          "name": "changefeed_id",
   905                          "in": "path",
   906                          "required": true
   907                      },
   908                      {
   909                          "type": "string",
   910                          "description": "default",
   911                          "name": "namespace",
   912                          "in": "query"
   913                      },
   914                      {
   915                          "description": "changefeed config",
   916                          "name": "changefeedConfig",
   917                          "in": "body",
   918                          "required": true,
   919                          "schema": {
   920                              "$ref": "#/definitions/v2.ChangefeedConfig"
   921                          }
   922                      }
   923                  ],
   924                  "responses": {
   925                      "200": {
   926                          "description": "OK",
   927                          "schema": {
   928                              "$ref": "#/definitions/v2.ChangeFeedInfo"
   929                          }
   930                      },
   931                      "400": {
   932                          "description": "Bad Request",
   933                          "schema": {
   934                              "$ref": "#/definitions/model.HTTPError"
   935                          }
   936                      },
   937                      "500": {
   938                          "description": "Internal Server Error",
   939                          "schema": {
   940                              "$ref": "#/definitions/model.HTTPError"
   941                          }
   942                      }
   943                  }
   944              },
   945              "delete": {
   946                  "description": "Remove a changefeed",
   947                  "consumes": [
   948                      "application/json"
   949                  ],
   950                  "produces": [
   951                      "application/json"
   952                  ],
   953                  "tags": [
   954                      "changefeed",
   955                      "v2"
   956                  ],
   957                  "summary": "Remove a changefeed",
   958                  "parameters": [
   959                      {
   960                          "type": "string",
   961                          "description": "changefeed_id",
   962                          "name": "changefeed_id",
   963                          "in": "path",
   964                          "required": true
   965                      },
   966                      {
   967                          "type": "string",
   968                          "description": "default",
   969                          "name": "namespace",
   970                          "in": "query"
   971                      }
   972                  ],
   973                  "responses": {
   974                      "200": {
   975                          "description": "OK",
   976                          "schema": {
   977                              "$ref": "#/definitions/v2.EmptyResponse"
   978                          }
   979                      },
   980                      "400": {
   981                          "description": "Bad Request",
   982                          "schema": {
   983                              "$ref": "#/definitions/model.HTTPError"
   984                          }
   985                      },
   986                      "500": {
   987                          "description": "Internal Server Error",
   988                          "schema": {
   989                              "$ref": "#/definitions/model.HTTPError"
   990                          }
   991                      }
   992                  }
   993              }
   994          },
   995          "/api/v2/changefeeds/{changefeed_id}/pause": {
   996              "post": {
   997                  "description": "Pause a changefeed",
   998                  "consumes": [
   999                      "application/json"
  1000                  ],
  1001                  "produces": [
  1002                      "application/json"
  1003                  ],
  1004                  "tags": [
  1005                      "changefeed",
  1006                      "v2"
  1007                  ],
  1008                  "summary": "Pause a changefeed",
  1009                  "parameters": [
  1010                      {
  1011                          "type": "string",
  1012                          "description": "changefeed_id",
  1013                          "name": "changefeed_id",
  1014                          "in": "path",
  1015                          "required": true
  1016                      },
  1017                      {
  1018                          "type": "string",
  1019                          "description": "default",
  1020                          "name": "namespace",
  1021                          "in": "query"
  1022                      }
  1023                  ],
  1024                  "responses": {
  1025                      "200": {
  1026                          "description": "OK",
  1027                          "schema": {
  1028                              "$ref": "#/definitions/v2.EmptyResponse"
  1029                          }
  1030                      },
  1031                      "400": {
  1032                          "description": "Bad Request",
  1033                          "schema": {
  1034                              "$ref": "#/definitions/model.HTTPError"
  1035                          }
  1036                      },
  1037                      "500": {
  1038                          "description": "Internal Server Error",
  1039                          "schema": {
  1040                              "$ref": "#/definitions/model.HTTPError"
  1041                          }
  1042                      }
  1043                  }
  1044              }
  1045          },
  1046          "/api/v2/changefeeds/{changefeed_id}/resume": {
  1047              "post": {
  1048                  "description": "Resume a changefeed",
  1049                  "consumes": [
  1050                      "application/json"
  1051                  ],
  1052                  "produces": [
  1053                      "application/json"
  1054                  ],
  1055                  "tags": [
  1056                      "changefeed",
  1057                      "v2"
  1058                  ],
  1059                  "summary": "Resume a changefeed",
  1060                  "parameters": [
  1061                      {
  1062                          "type": "string",
  1063                          "description": "changefeed_id",
  1064                          "name": "changefeed_id",
  1065                          "in": "path",
  1066                          "required": true
  1067                      },
  1068                      {
  1069                          "type": "string",
  1070                          "description": "default",
  1071                          "name": "namespace",
  1072                          "in": "query"
  1073                      },
  1074                      {
  1075                          "description": "resume config",
  1076                          "name": "resumeConfig",
  1077                          "in": "body",
  1078                          "required": true,
  1079                          "schema": {
  1080                              "$ref": "#/definitions/v2.ResumeChangefeedConfig"
  1081                          }
  1082                      }
  1083                  ],
  1084                  "responses": {
  1085                      "200": {
  1086                          "description": "OK",
  1087                          "schema": {
  1088                              "$ref": "#/definitions/v2.EmptyResponse"
  1089                          }
  1090                      },
  1091                      "400": {
  1092                          "description": "Bad Request",
  1093                          "schema": {
  1094                              "$ref": "#/definitions/model.HTTPError"
  1095                          }
  1096                      },
  1097                      "500": {
  1098                          "description": "Internal Server Error",
  1099                          "schema": {
  1100                              "$ref": "#/definitions/model.HTTPError"
  1101                          }
  1102                      }
  1103                  }
  1104              }
  1105          },
  1106          "/api/v2/changefeeds/{changefeed_id}/synced": {
  1107              "get": {
  1108                  "description": "get the synced status of a changefeed",
  1109                  "consumes": [
  1110                      "application/json"
  1111                  ],
  1112                  "produces": [
  1113                      "application/json"
  1114                  ],
  1115                  "tags": [
  1116                      "changefeed",
  1117                      "v2"
  1118                  ],
  1119                  "summary": "Get synced status",
  1120                  "parameters": [
  1121                      {
  1122                          "type": "string",
  1123                          "description": "changefeed_id",
  1124                          "name": "changefeed_id",
  1125                          "in": "path",
  1126                          "required": true
  1127                      },
  1128                      {
  1129                          "type": "string",
  1130                          "description": "default",
  1131                          "name": "namespace",
  1132                          "in": "query"
  1133                      }
  1134                  ],
  1135                  "responses": {
  1136                      "200": {
  1137                          "description": "OK",
  1138                          "schema": {
  1139                              "$ref": "#/definitions/v2.SyncedStatus"
  1140                          }
  1141                      },
  1142                      "400": {
  1143                          "description": "Bad Request",
  1144                          "schema": {
  1145                              "$ref": "#/definitions/model.HTTPError"
  1146                          }
  1147                      },
  1148                      "500": {
  1149                          "description": "Internal Server Error",
  1150                          "schema": {
  1151                              "$ref": "#/definitions/model.HTTPError"
  1152                          }
  1153                      }
  1154                  }
  1155              }
  1156          },
  1157          "/api/v2/health": {
  1158              "get": {
  1159                  "description": "Check the health status of a TiCDC cluster",
  1160                  "produces": [
  1161                      "application/json"
  1162                  ],
  1163                  "tags": [
  1164                      "common",
  1165                      "v2"
  1166                  ],
  1167                  "summary": "Check the health status of a TiCDC cluster",
  1168                  "responses": {
  1169                      "200": {
  1170                          "description": "OK",
  1171                          "schema": {
  1172                              "$ref": "#/definitions/v2.EmptyResponse"
  1173                          }
  1174                      },
  1175                      "400": {
  1176                          "description": "Bad Request",
  1177                          "schema": {
  1178                              "$ref": "#/definitions/model.HTTPError"
  1179                          }
  1180                      },
  1181                      "500": {
  1182                          "description": "Internal Server Error",
  1183                          "schema": {
  1184                              "$ref": "#/definitions/model.HTTPError"
  1185                          }
  1186                      }
  1187                  }
  1188              }
  1189          },
  1190          "/api/v2/log": {
  1191              "post": {
  1192                  "description": "change TiCDC log level dynamically",
  1193                  "consumes": [
  1194                      "application/json"
  1195                  ],
  1196                  "produces": [
  1197                      "application/json"
  1198                  ],
  1199                  "tags": [
  1200                      "common",
  1201                      "v2"
  1202                  ],
  1203                  "summary": "Change TiCDC log level",
  1204                  "parameters": [
  1205                      {
  1206                          "description": "log level",
  1207                          "name": "log_level",
  1208                          "in": "body",
  1209                          "required": true,
  1210                          "schema": {
  1211                              "$ref": "#/definitions/v2.LogLevelReq"
  1212                          }
  1213                      }
  1214                  ],
  1215                  "responses": {
  1216                      "200": {
  1217                          "description": "OK",
  1218                          "schema": {
  1219                              "$ref": "#/definitions/v2.EmptyResponse"
  1220                          }
  1221                      },
  1222                      "400": {
  1223                          "description": "Bad Request",
  1224                          "schema": {
  1225                              "$ref": "#/definitions/model.HTTPError"
  1226                          }
  1227                      }
  1228                  }
  1229              }
  1230          },
  1231          "/api/v2/owner/resign": {
  1232              "post": {
  1233                  "description": "Notify the current controller to resign",
  1234                  "consumes": [
  1235                      "application/json"
  1236                  ],
  1237                  "produces": [
  1238                      "application/json"
  1239                  ],
  1240                  "tags": [
  1241                      "owner",
  1242                      "v2"
  1243                  ],
  1244                  "summary": "Notify the controller to resign",
  1245                  "responses": {
  1246                      "200": {
  1247                          "description": "OK",
  1248                          "schema": {
  1249                              "$ref": "#/definitions/v2.EmptyResponse"
  1250                          }
  1251                      },
  1252                      "400": {
  1253                          "description": "Bad Request",
  1254                          "schema": {
  1255                              "$ref": "#/definitions/model.HTTPError"
  1256                          }
  1257                      },
  1258                      "500": {
  1259                          "description": "Internal Server Error",
  1260                          "schema": {
  1261                              "$ref": "#/definitions/model.HTTPError"
  1262                          }
  1263                      }
  1264                  }
  1265              }
  1266          },
  1267          "/api/v2/processors": {
  1268              "get": {
  1269                  "description": "list all processors in the TiCDC cluster",
  1270                  "produces": [
  1271                      "application/json"
  1272                  ],
  1273                  "tags": [
  1274                      "processor",
  1275                      "v2"
  1276                  ],
  1277                  "summary": "List processors",
  1278                  "responses": {
  1279                      "200": {
  1280                          "description": "OK",
  1281                          "schema": {
  1282                              "type": "array",
  1283                              "items": {
  1284                                  "$ref": "#/definitions/v2.ProcessorCommonInfo"
  1285                              }
  1286                          }
  1287                      },
  1288                      "400": {
  1289                          "description": "Bad Request",
  1290                          "schema": {
  1291                              "$ref": "#/definitions/model.HTTPError"
  1292                          }
  1293                      },
  1294                      "500": {
  1295                          "description": "Internal Server Error",
  1296                          "schema": {
  1297                              "$ref": "#/definitions/model.HTTPError"
  1298                          }
  1299                      }
  1300                  }
  1301              }
  1302          },
  1303          "/api/v2/processors/{changefeed_id}/{capture_id}": {
  1304              "get": {
  1305                  "description": "get the detail information of a processor",
  1306                  "produces": [
  1307                      "application/json"
  1308                  ],
  1309                  "tags": [
  1310                      "processor",
  1311                      "v2"
  1312                  ],
  1313                  "summary": "Get processor detail information",
  1314                  "parameters": [
  1315                      {
  1316                          "type": "string",
  1317                          "description": "changefeed ID",
  1318                          "name": "changefeed_id",
  1319                          "in": "path",
  1320                          "required": true
  1321                      },
  1322                      {
  1323                          "type": "string",
  1324                          "description": "default",
  1325                          "name": "namespace",
  1326                          "in": "query"
  1327                      },
  1328                      {
  1329                          "type": "string",
  1330                          "description": "capture ID",
  1331                          "name": "capture_id",
  1332                          "in": "path",
  1333                          "required": true
  1334                      }
  1335                  ],
  1336                  "responses": {
  1337                      "200": {
  1338                          "description": "OK",
  1339                          "schema": {
  1340                              "$ref": "#/definitions/v2.ProcessorDetail"
  1341                          }
  1342                      },
  1343                      "400": {
  1344                          "description": "Bad Request",
  1345                          "schema": {
  1346                              "$ref": "#/definitions/model.HTTPError"
  1347                          }
  1348                      },
  1349                      "500": {
  1350                          "description": "Internal Server Error",
  1351                          "schema": {
  1352                              "$ref": "#/definitions/model.HTTPError"
  1353                          }
  1354                      }
  1355                  }
  1356              }
  1357          },
  1358          "/api/v2/status": {
  1359              "get": {
  1360                  "description": "This API is a synchronous interface. If the request is successful,",
  1361                  "consumes": [
  1362                      "application/json"
  1363                  ],
  1364                  "produces": [
  1365                      "application/json"
  1366                  ],
  1367                  "tags": [
  1368                      "common",
  1369                      "v2"
  1370                  ],
  1371                  "summary": "Get the status information of a TiCDC node",
  1372                  "responses": {
  1373                      "200": {
  1374                          "description": "OK",
  1375                          "schema": {
  1376                              "$ref": "#/definitions/v2.ServerStatus"
  1377                          }
  1378                      },
  1379                      "400": {
  1380                          "description": "Bad Request",
  1381                          "schema": {
  1382                              "$ref": "#/definitions/model.HTTPError"
  1383                          }
  1384                      },
  1385                      "500": {
  1386                          "description": "Internal Server Error",
  1387                          "schema": {
  1388                              "$ref": "#/definitions/model.HTTPError"
  1389                          }
  1390                      }
  1391                  }
  1392              }
  1393          }
  1394      },
  1395      "definitions": {
  1396          "config.CSVConfig": {
  1397              "type": "object",
  1398              "properties": {
  1399                  "binary-encoding-method": {
  1400                      "description": "encoding method of binary type",
  1401                      "type": "string"
  1402                  },
  1403                  "delimiter": {
  1404                      "description": "delimiter between fields, it can be 1 character or at most 2 characters\nIt can not be CR or LF or contains CR or LF.\nIt should have exclusive characters with quote.",
  1405                      "type": "string"
  1406                  },
  1407                  "include-commit-ts": {
  1408                      "description": "whether to include commit ts",
  1409                      "type": "boolean"
  1410                  },
  1411                  "null": {
  1412                      "description": "representation of null values",
  1413                      "type": "string"
  1414                  },
  1415                  "output-handle-key": {
  1416                      "description": "output handle key",
  1417                      "type": "boolean"
  1418                  },
  1419                  "output-old-value": {
  1420                      "description": "output old value",
  1421                      "type": "boolean"
  1422                  },
  1423                  "quote": {
  1424                      "description": "quoting character",
  1425                      "type": "string"
  1426                  }
  1427              }
  1428          },
  1429          "config.CloudStorageConfig": {
  1430              "type": "object",
  1431              "properties": {
  1432                  "file-cleanup-cron-spec": {
  1433                      "type": "string"
  1434                  },
  1435                  "file-expiration-days": {
  1436                      "type": "integer"
  1437                  },
  1438                  "file-size": {
  1439                      "type": "integer"
  1440                  },
  1441                  "flush-concurrency": {
  1442                      "type": "integer"
  1443                  },
  1444                  "flush-interval": {
  1445                      "type": "string"
  1446                  },
  1447                  "output-column-id": {
  1448                      "type": "boolean"
  1449                  },
  1450                  "worker-count": {
  1451                      "type": "integer"
  1452                  }
  1453              }
  1454          },
  1455          "config.CodecConfig": {
  1456              "type": "object",
  1457              "properties": {
  1458                  "avro-bigint-unsigned-handling-mode": {
  1459                      "type": "string"
  1460                  },
  1461                  "avro-decimal-handling-mode": {
  1462                      "type": "string"
  1463                  },
  1464                  "avro-enable-watermark": {
  1465                      "type": "boolean"
  1466                  },
  1467                  "enable-tidb-extension": {
  1468                      "type": "boolean"
  1469                  },
  1470                  "encoding-format": {
  1471                      "type": "string"
  1472                  },
  1473                  "max-batch-size": {
  1474                      "type": "integer"
  1475                  }
  1476              }
  1477          },
  1478          "config.ColumnSelector": {
  1479              "type": "object",
  1480              "properties": {
  1481                  "columns": {
  1482                      "type": "array",
  1483                      "items": {
  1484                          "type": "string"
  1485                      }
  1486                  },
  1487                  "matcher": {
  1488                      "type": "array",
  1489                      "items": {
  1490                          "type": "string"
  1491                      }
  1492                  }
  1493              }
  1494          },
  1495          "config.DebeziumConfig": {
  1496              "type": "object",
  1497              "properties": {
  1498                  "output-old-value": {
  1499                      "type": "boolean"
  1500                  }
  1501              }
  1502          },
  1503          "config.DispatchRule": {
  1504              "type": "object",
  1505              "properties": {
  1506                  "columns": {
  1507                      "description": "Columns are set when using columns dispatcher.",
  1508                      "type": "array",
  1509                      "items": {
  1510                          "type": "string"
  1511                      }
  1512                  },
  1513                  "dispatcher": {
  1514                      "description": "Deprecated, please use PartitionRule.",
  1515                      "type": "string"
  1516                  },
  1517                  "index": {
  1518                      "description": "IndexName is set when using index-value dispatcher with specified index.",
  1519                      "type": "string"
  1520                  },
  1521                  "matcher": {
  1522                      "type": "array",
  1523                      "items": {
  1524                          "type": "string"
  1525                      }
  1526                  },
  1527                  "partition": {
  1528                      "description": "PartitionRule is an alias added for DispatcherRule to mitigate confusions.\nIn the future release, the DispatcherRule is expected to be removed .",
  1529                      "type": "string"
  1530                  },
  1531                  "topic": {
  1532                      "type": "string"
  1533                  }
  1534              }
  1535          },
  1536          "config.GlueSchemaRegistryConfig": {
  1537              "type": "object",
  1538              "properties": {
  1539                  "access-key": {
  1540                      "description": "AccessKey of the schema registry",
  1541                      "type": "string"
  1542                  },
  1543                  "region": {
  1544                      "description": "Region of the schema registry",
  1545                      "type": "string"
  1546                  },
  1547                  "registry-name": {
  1548                      "description": "Name of the schema registry",
  1549                      "type": "string"
  1550                  },
  1551                  "secret-access-key": {
  1552                      "description": "SecretAccessKey of the schema registry",
  1553                      "type": "string"
  1554                  },
  1555                  "token": {
  1556                      "type": "string"
  1557                  }
  1558              }
  1559          },
  1560          "config.KafkaConfig": {
  1561              "type": "object",
  1562              "properties": {
  1563                  "auto-create-topic": {
  1564                      "type": "boolean"
  1565                  },
  1566                  "ca": {
  1567                      "type": "string"
  1568                  },
  1569                  "cert": {
  1570                      "type": "string"
  1571                  },
  1572                  "codec-config": {
  1573                      "$ref": "#/definitions/config.CodecConfig"
  1574                  },
  1575                  "compression": {
  1576                      "type": "string"
  1577                  },
  1578                  "dial-timeout": {
  1579                      "type": "string"
  1580                  },
  1581                  "enable-tls": {
  1582                      "type": "boolean"
  1583                  },
  1584                  "glue-schema-registry-config": {
  1585                      "$ref": "#/definitions/config.GlueSchemaRegistryConfig"
  1586                  },
  1587                  "insecure-skip-verify": {
  1588                      "type": "boolean"
  1589                  },
  1590                  "kafka-client-id": {
  1591                      "type": "string"
  1592                  },
  1593                  "kafka-version": {
  1594                      "type": "string"
  1595                  },
  1596                  "key": {
  1597                      "type": "string"
  1598                  },
  1599                  "large-message-handle": {
  1600                      "$ref": "#/definitions/config.LargeMessageHandleConfig"
  1601                  },
  1602                  "max-message-bytes": {
  1603                      "type": "integer"
  1604                  },
  1605                  "partition-num": {
  1606                      "type": "integer"
  1607                  },
  1608                  "read-timeout": {
  1609                      "type": "string"
  1610                  },
  1611                  "replication-factor": {
  1612                      "type": "integer"
  1613                  },
  1614                  "required-acks": {
  1615                      "type": "integer"
  1616                  },
  1617                  "sasl-gssapi-auth-type": {
  1618                      "type": "string"
  1619                  },
  1620                  "sasl-gssapi-disable-pafxfast": {
  1621                      "type": "boolean"
  1622                  },
  1623                  "sasl-gssapi-kerberos-config-path": {
  1624                      "type": "string"
  1625                  },
  1626                  "sasl-gssapi-keytab-path": {
  1627                      "type": "string"
  1628                  },
  1629                  "sasl-gssapi-password": {
  1630                      "type": "string"
  1631                  },
  1632                  "sasl-gssapi-realm": {
  1633                      "type": "string"
  1634                  },
  1635                  "sasl-gssapi-service-name": {
  1636                      "type": "string"
  1637                  },
  1638                  "sasl-gssapi-user": {
  1639                      "type": "string"
  1640                  },
  1641                  "sasl-mechanism": {
  1642                      "type": "string"
  1643                  },
  1644                  "sasl-oauth-audience": {
  1645                      "type": "string"
  1646                  },
  1647                  "sasl-oauth-client-id": {
  1648                      "type": "string"
  1649                  },
  1650                  "sasl-oauth-client-secret": {
  1651                      "type": "string"
  1652                  },
  1653                  "sasl-oauth-grant-type": {
  1654                      "type": "string"
  1655                  },
  1656                  "sasl-oauth-scopes": {
  1657                      "type": "array",
  1658                      "items": {
  1659                          "type": "string"
  1660                      }
  1661                  },
  1662                  "sasl-oauth-token-url": {
  1663                      "type": "string"
  1664                  },
  1665                  "sasl-password": {
  1666                      "type": "string"
  1667                  },
  1668                  "sasl-user": {
  1669                      "type": "string"
  1670                  },
  1671                  "write-timeout": {
  1672                      "type": "string"
  1673                  }
  1674              }
  1675          },
  1676          "config.LargeMessageHandleConfig": {
  1677              "type": "object",
  1678              "properties": {
  1679                  "claim-check-storage-uri": {
  1680                      "type": "string"
  1681                  },
  1682                  "large-message-handle-compression": {
  1683                      "type": "string"
  1684                  },
  1685                  "large-message-handle-option": {
  1686                      "type": "string"
  1687                  }
  1688              }
  1689          },
  1690          "config.MySQLConfig": {
  1691              "type": "object",
  1692              "properties": {
  1693                  "enable-batch-dml": {
  1694                      "type": "boolean"
  1695                  },
  1696                  "enable-cache-prepared-statement": {
  1697                      "type": "boolean"
  1698                  },
  1699                  "enable-multi-statement": {
  1700                      "type": "boolean"
  1701                  },
  1702                  "max-multi-update-row": {
  1703                      "type": "integer"
  1704                  },
  1705                  "max-multi-update-row-size": {
  1706                      "type": "integer"
  1707                  },
  1708                  "max-txn-row": {
  1709                      "type": "integer"
  1710                  },
  1711                  "read-timeout": {
  1712                      "type": "string"
  1713                  },
  1714                  "ssl-ca": {
  1715                      "type": "string"
  1716                  },
  1717                  "ssl-cert": {
  1718                      "type": "string"
  1719                  },
  1720                  "ssl-key": {
  1721                      "type": "string"
  1722                  },
  1723                  "tidb-txn-mode": {
  1724                      "type": "string"
  1725                  },
  1726                  "time-zone": {
  1727                      "type": "string"
  1728                  },
  1729                  "timeout": {
  1730                      "type": "string"
  1731                  },
  1732                  "worker-count": {
  1733                      "type": "integer"
  1734                  },
  1735                  "write-timeout": {
  1736                      "type": "string"
  1737                  }
  1738              }
  1739          },
  1740          "config.OAuth2": {
  1741              "type": "object",
  1742              "properties": {
  1743                  "oauth2-audience": {
  1744                      "description": "OAuth2Audience  the URL of the resource server.",
  1745                      "type": "string"
  1746                  },
  1747                  "oauth2-client-id": {
  1748                      "description": "OAuth2ClientID  the client ID of the application.",
  1749                      "type": "string"
  1750                  },
  1751                  "oauth2-issuer-url": {
  1752                      "description": "OAuth2IssuerURL  the URL of the authorization server.",
  1753                      "type": "string"
  1754                  },
  1755                  "oauth2-private-key": {
  1756                      "description": "OAuth2PrivateKey the private key used to sign the server.",
  1757                      "type": "string"
  1758                  },
  1759                  "oauth2-scope": {
  1760                      "description": "OAuth2Scope scope",
  1761                      "type": "string"
  1762                  }
  1763              }
  1764          },
  1765          "config.OpenProtocolConfig": {
  1766              "type": "object",
  1767              "properties": {
  1768                  "output-old-value": {
  1769                      "type": "boolean"
  1770                  }
  1771              }
  1772          },
  1773          "config.PulsarConfig": {
  1774              "type": "object",
  1775              "properties": {
  1776                  "auth-tls-certificate-path": {
  1777                      "description": "AuthTLSCertificatePath  create new pulsar authentication provider with specified TLS certificate and private key",
  1778                      "type": "string"
  1779                  },
  1780                  "auth-tls-private-key-path": {
  1781                      "description": "AuthTLSPrivateKeyPath private key",
  1782                      "type": "string"
  1783                  },
  1784                  "authentication-token": {
  1785                      "description": "AuthenticationToken the token for the Pulsar server",
  1786                      "type": "string"
  1787                  },
  1788                  "basic-password": {
  1789                      "description": "BasicPassword with account",
  1790                      "type": "string"
  1791                  },
  1792                  "basic-user-name": {
  1793                      "description": "BasicUserName Account name for pulsar basic authentication (the second priority authentication method)",
  1794                      "type": "string"
  1795                  },
  1796                  "batching-max-messages": {
  1797                      "description": "BatchingMaxMessages specifies the maximum number of messages permitted in a batch. (default: 1000)",
  1798                      "type": "integer"
  1799                  },
  1800                  "batching-max-publish-delay": {
  1801                      "description": "BatchingMaxPublishDelay specifies the time period within which the messages sent will be batched (default: 10ms)\nif batch messages are enabled. If set to a non zero value, messages will be queued until this time\ninterval or until",
  1802                      "type": "integer"
  1803                  },
  1804                  "compression-type": {
  1805                      "description": "pulsar client compression",
  1806                      "type": "string"
  1807                  },
  1808                  "connection-timeout": {
  1809                      "description": "ConnectionTimeout Timeout for the establishment of a TCP connection (default: 5 seconds)",
  1810                      "type": "integer"
  1811                  },
  1812                  "oauth2": {
  1813                      "description": "Oauth2 include  oauth2-issuer-url oauth2-audience oauth2-private-key oauth2-client-id\nand 'type' always use 'client_credentials'",
  1814                      "$ref": "#/definitions/config.OAuth2"
  1815                  },
  1816                  "operation-timeout": {
  1817                      "description": "Set the operation timeout (default: 30 seconds)\nProducer-create, subscribe and unsubscribe operations will be retried until this interval, after which the\noperation will be marked as failed",
  1818                      "type": "integer"
  1819                  },
  1820                  "pulsar-producer-cache-size": {
  1821                      "description": "PulsarProducerCacheSize is the size of the cache of pulsar producers",
  1822                      "type": "integer"
  1823                  },
  1824                  "pulsar-version": {
  1825                      "description": "PulsarVersion print the version of pulsar",
  1826                      "type": "string"
  1827                  },
  1828                  "send-timeout": {
  1829                      "description": "SendTimeout specifies the timeout for a message that has not been acknowledged by the server since sent.\nSend and SendAsync returns an error after timeout.\ndefault: 30s",
  1830                      "type": "integer"
  1831                  },
  1832                  "tls-certificate-file": {
  1833                      "type": "string"
  1834                  },
  1835                  "tls-key-file-path": {
  1836                      "type": "string"
  1837                  },
  1838                  "tls-trust-certs-file-path": {
  1839                      "type": "string"
  1840                  },
  1841                  "token-from-file": {
  1842                      "description": "TokenFromFile Authentication from the file token,\nthe path name of the file (the third priority authentication method)",
  1843                      "type": "string"
  1844                  }
  1845              }
  1846          },
  1847          "config.SinkConfig": {
  1848              "type": "object",
  1849              "properties": {
  1850                  "advance-timeout-in-sec": {
  1851                      "description": "AdvanceTimeoutInSec is a duration in second. If a table sink progress hasn't been\nadvanced for this given duration, the sink will be canceled and re-established.",
  1852                      "type": "integer"
  1853                  },
  1854                  "cloud-storage-config": {
  1855                      "$ref": "#/definitions/config.CloudStorageConfig"
  1856                  },
  1857                  "column-selectors": {
  1858                      "type": "array",
  1859                      "items": {
  1860                          "$ref": "#/definitions/config.ColumnSelector"
  1861                      }
  1862                  },
  1863                  "content-compatible": {
  1864                      "description": "ContentCompatible is only available when the downstream is MQ.",
  1865                      "type": "boolean"
  1866                  },
  1867                  "csv": {
  1868                      "description": "CSVConfig is only available when the downstream is Storage.",
  1869                      "$ref": "#/definitions/config.CSVConfig"
  1870                  },
  1871                  "date-separator": {
  1872                      "description": "DateSeparator is only available when the downstream is Storage.",
  1873                      "type": "string"
  1874                  },
  1875                  "debezium": {
  1876                      "description": "DebeziumConfig related configurations",
  1877                      "$ref": "#/definitions/config.DebeziumConfig"
  1878                  },
  1879                  "debezium-disable-schema": {
  1880                      "description": "Debezium only. Whether schema should be excluded in the output.",
  1881                      "type": "boolean"
  1882                  },
  1883                  "delete-only-output-handle-key-columns": {
  1884                      "description": "DeleteOnlyOutputHandleKeyColumns is only available when the downstream is MQ.",
  1885                      "type": "boolean"
  1886                  },
  1887                  "dispatchers": {
  1888                      "description": "DispatchRules is only available when the downstream is MQ.",
  1889                      "type": "array",
  1890                      "items": {
  1891                          "$ref": "#/definitions/config.DispatchRule"
  1892                      }
  1893                  },
  1894                  "enable-kafka-sink-v2": {
  1895                      "description": "EnableKafkaSinkV2 enabled then the kafka-go sink will be used.\nIt is only available when the downstream is MQ.",
  1896                      "type": "boolean"
  1897                  },
  1898                  "enable-partition-separator": {
  1899                      "description": "EnablePartitionSeparator is only available when the downstream is Storage.",
  1900                      "type": "boolean"
  1901                  },
  1902                  "encoder-concurrency": {
  1903                      "description": "EncoderConcurrency is only available when the downstream is MQ.",
  1904                      "type": "integer"
  1905                  },
  1906                  "file-index-digit": {
  1907                      "description": "FileIndexWidth is only available when the downstream is Storage",
  1908                      "type": "integer"
  1909                  },
  1910                  "kafka-config": {
  1911                      "$ref": "#/definitions/config.KafkaConfig"
  1912                  },
  1913                  "mysql-config": {
  1914                      "$ref": "#/definitions/config.MySQLConfig"
  1915                  },
  1916                  "only-output-updated-columns": {
  1917                      "description": "OnlyOutputUpdatedColumns is only available when the downstream is MQ.",
  1918                      "type": "boolean"
  1919                  },
  1920                  "open": {
  1921                      "description": "OpenProtocol related configurations",
  1922                      "$ref": "#/definitions/config.OpenProtocolConfig"
  1923                  },
  1924                  "protocol": {
  1925                      "description": "Protocol is NOT available when the downstream is DB.",
  1926                      "type": "string"
  1927                  },
  1928                  "pulsar-config": {
  1929                      "$ref": "#/definitions/config.PulsarConfig"
  1930                  },
  1931                  "safe-mode": {
  1932                      "description": "SafeMode is only available when the downstream is DB.",
  1933                      "type": "boolean"
  1934                  },
  1935                  "schema-registry": {
  1936                      "description": "SchemaRegistry is only available when the downstream is MQ using avro protocol.",
  1937                      "type": "string"
  1938                  },
  1939                  "send-bootstrap-in-msg-count": {
  1940                      "description": "SendBootstrapInMsgCount means bootstrap messages are being sent every SendBootstrapInMsgCount row change messages.",
  1941                      "type": "integer"
  1942                  },
  1943                  "send-bootstrap-interval-in-sec": {
  1944                      "description": "Simple Protocol only config, use to control the behavior of sending bootstrap message.\nNote: When one of the following conditions is set to negative value,\nbootstrap sending function will be disabled.\nSendBootstrapIntervalInSec is the interval in seconds to send bootstrap message.",
  1945                      "type": "integer"
  1946                  },
  1947                  "send-bootstrap-to-all-partition": {
  1948                      "description": "SendBootstrapToAllPartition determines whether to send bootstrap message to all partitions.\nIf set to false, bootstrap message will only be sent to the first partition of each topic.\nDefault value is true.",
  1949                      "type": "boolean"
  1950                  },
  1951                  "terminator": {
  1952                      "description": "Terminator is NOT available when the downstream is DB.",
  1953                      "type": "string"
  1954                  },
  1955                  "transaction-atomicity": {
  1956                      "type": "string"
  1957                  }
  1958              }
  1959          },
  1960          "model.Capture": {
  1961              "type": "object",
  1962              "properties": {
  1963                  "address": {
  1964                      "type": "string"
  1965                  },
  1966                  "cluster_id": {
  1967                      "type": "string"
  1968                  },
  1969                  "id": {
  1970                      "type": "string"
  1971                  },
  1972                  "is_owner": {
  1973                      "type": "boolean"
  1974                  }
  1975              }
  1976          },
  1977          "model.CaptureTaskStatus": {
  1978              "type": "object",
  1979              "properties": {
  1980                  "capture_id": {
  1981                      "type": "string"
  1982                  },
  1983                  "table_ids": {
  1984                      "description": "Table list, containing tables that processor should process",
  1985                      "type": "array",
  1986                      "items": {
  1987                          "type": "integer"
  1988                      }
  1989                  },
  1990                  "table_operations": {
  1991                      "type": "object",
  1992                      "additionalProperties": {
  1993                          "$ref": "#/definitions/model.TableOperation"
  1994                      }
  1995                  }
  1996              }
  1997          },
  1998          "model.ChangefeedCommonInfo": {
  1999              "type": "object",
  2000              "properties": {
  2001                  "checkpoint_time": {
  2002                      "type": "string"
  2003                  },
  2004                  "checkpoint_tso": {
  2005                      "type": "integer"
  2006                  },
  2007                  "error": {
  2008                      "$ref": "#/definitions/model.RunningError"
  2009                  },
  2010                  "id": {
  2011                      "type": "string"
  2012                  },
  2013                  "namespace": {
  2014                      "type": "string"
  2015                  },
  2016                  "state": {
  2017                      "type": "string"
  2018                  },
  2019                  "upstream_id": {
  2020                      "type": "integer"
  2021                  }
  2022              }
  2023          },
  2024          "model.ChangefeedConfig": {
  2025              "type": "object",
  2026              "properties": {
  2027                  "changefeed_id": {
  2028                      "type": "string"
  2029                  },
  2030                  "filter_rules": {
  2031                      "type": "array",
  2032                      "items": {
  2033                          "type": "string"
  2034                      }
  2035                  },
  2036                  "force_replicate": {
  2037                      "description": "if true, force to replicate some ineligible tables",
  2038                      "type": "boolean",
  2039                      "default": false
  2040                  },
  2041                  "ignore_ineligible_table": {
  2042                      "type": "boolean",
  2043                      "default": false
  2044                  },
  2045                  "ignore_txn_start_ts": {
  2046                      "type": "array",
  2047                      "items": {
  2048                          "type": "integer"
  2049                      }
  2050                  },
  2051                  "mounter_worker_num": {
  2052                      "type": "integer",
  2053                      "default": 16
  2054                  },
  2055                  "namespace": {
  2056                      "type": "string"
  2057                  },
  2058                  "sink_config": {
  2059                      "$ref": "#/definitions/config.SinkConfig"
  2060                  },
  2061                  "sink_uri": {
  2062                      "type": "string"
  2063                  },
  2064                  "start_ts": {
  2065                      "type": "integer"
  2066                  },
  2067                  "target_ts": {
  2068                      "type": "integer"
  2069                  },
  2070                  "timezone": {
  2071                      "description": "timezone used when checking sink uri",
  2072                      "type": "string",
  2073                      "default": "system"
  2074                  }
  2075              }
  2076          },
  2077          "model.ChangefeedDetail": {
  2078              "type": "object",
  2079              "properties": {
  2080                  "checkpoint_time": {
  2081                      "type": "string"
  2082                  },
  2083                  "checkpoint_tso": {
  2084                      "type": "integer"
  2085                  },
  2086                  "create_time": {
  2087                      "type": "string"
  2088                  },
  2089                  "creator_version": {
  2090                      "type": "string"
  2091                  },
  2092                  "error": {
  2093                      "$ref": "#/definitions/model.RunningError"
  2094                  },
  2095                  "error_history": {
  2096                      "type": "array",
  2097                      "items": {
  2098                          "type": "integer"
  2099                      }
  2100                  },
  2101                  "id": {
  2102                      "type": "string"
  2103                  },
  2104                  "namespace": {
  2105                      "type": "string"
  2106                  },
  2107                  "resolved_ts": {
  2108                      "type": "integer"
  2109                  },
  2110                  "sink_uri": {
  2111                      "type": "string"
  2112                  },
  2113                  "sort_engine": {
  2114                      "type": "string"
  2115                  },
  2116                  "start_ts": {
  2117                      "type": "integer"
  2118                  },
  2119                  "state": {
  2120                      "type": "string"
  2121                  },
  2122                  "target_ts": {
  2123                      "type": "integer"
  2124                  },
  2125                  "task_status": {
  2126                      "type": "array",
  2127                      "items": {
  2128                          "$ref": "#/definitions/model.CaptureTaskStatus"
  2129                      }
  2130                  },
  2131                  "upstream_id": {
  2132                      "type": "integer"
  2133                  }
  2134              }
  2135          },
  2136          "model.HTTPError": {
  2137              "type": "object",
  2138              "properties": {
  2139                  "error_code": {
  2140                      "type": "string"
  2141                  },
  2142                  "error_msg": {
  2143                      "type": "string"
  2144                  }
  2145              }
  2146          },
  2147          "model.MoveTableReq": {
  2148              "type": "object",
  2149              "properties": {
  2150                  "capture_id": {
  2151                      "type": "string"
  2152                  },
  2153                  "table_id": {
  2154                      "type": "integer"
  2155                  }
  2156              }
  2157          },
  2158          "model.ProcessorCommonInfo": {
  2159              "type": "object",
  2160              "properties": {
  2161                  "capture_id": {
  2162                      "type": "string"
  2163                  },
  2164                  "changefeed_id": {
  2165                      "type": "string"
  2166                  },
  2167                  "namespace": {
  2168                      "type": "string"
  2169                  }
  2170              }
  2171          },
  2172          "model.ProcessorDetail": {
  2173              "type": "object",
  2174              "properties": {
  2175                  "table_ids": {
  2176                      "description": "All table ids that this processor are replicating.",
  2177                      "type": "array",
  2178                      "items": {
  2179                          "type": "integer"
  2180                      }
  2181                  }
  2182              }
  2183          },
  2184          "model.RunningError": {
  2185              "type": "object",
  2186              "properties": {
  2187                  "addr": {
  2188                      "type": "string"
  2189                  },
  2190                  "code": {
  2191                      "type": "string"
  2192                  },
  2193                  "message": {
  2194                      "type": "string"
  2195                  },
  2196                  "time": {
  2197                      "type": "string"
  2198                  }
  2199              }
  2200          },
  2201          "model.ServerStatus": {
  2202              "type": "object",
  2203              "properties": {
  2204                  "cluster_id": {
  2205                      "type": "string"
  2206                  },
  2207                  "git_hash": {
  2208                      "type": "string"
  2209                  },
  2210                  "id": {
  2211                      "type": "string"
  2212                  },
  2213                  "is_owner": {
  2214                      "type": "boolean"
  2215                  },
  2216                  "liveness": {
  2217                      "type": "integer"
  2218                  },
  2219                  "pid": {
  2220                      "type": "integer"
  2221                  },
  2222                  "version": {
  2223                      "type": "string"
  2224                  }
  2225              }
  2226          },
  2227          "model.TableOperation": {
  2228              "type": "object",
  2229              "properties": {
  2230                  "boundary_ts": {
  2231                      "description": "if the operation is a delete operation, BoundaryTs is checkpoint ts\nif the operation is an add operation, BoundaryTs is start ts",
  2232                      "type": "integer"
  2233                  },
  2234                  "delete": {
  2235                      "type": "boolean"
  2236                  },
  2237                  "flag": {
  2238                      "type": "integer"
  2239                  },
  2240                  "status": {
  2241                      "type": "integer"
  2242                  }
  2243              }
  2244          },
  2245          "v2.CSVConfig": {
  2246              "type": "object",
  2247              "properties": {
  2248                  "binary_encoding_method": {
  2249                      "type": "string"
  2250                  },
  2251                  "delimiter": {
  2252                      "type": "string"
  2253                  },
  2254                  "include_commit_ts": {
  2255                      "type": "boolean"
  2256                  },
  2257                  "null": {
  2258                      "type": "string"
  2259                  },
  2260                  "output_handle_key": {
  2261                      "type": "boolean"
  2262                  },
  2263                  "output_old_value": {
  2264                      "type": "boolean"
  2265                  },
  2266                  "quote": {
  2267                      "type": "string"
  2268                  }
  2269              }
  2270          },
  2271          "v2.Capture": {
  2272              "type": "object",
  2273              "properties": {
  2274                  "address": {
  2275                      "type": "string"
  2276                  },
  2277                  "cluster_id": {
  2278                      "type": "string"
  2279                  },
  2280                  "id": {
  2281                      "type": "string"
  2282                  },
  2283                  "is_owner": {
  2284                      "type": "boolean"
  2285                  }
  2286              }
  2287          },
  2288          "v2.ChangeFeedInfo": {
  2289              "type": "object",
  2290              "properties": {
  2291                  "admin_job_type": {
  2292                      "description": "used for admin job notification, trigger watch event in capture",
  2293                      "type": "integer"
  2294                  },
  2295                  "checkpoint_time": {
  2296                      "type": "string"
  2297                  },
  2298                  "checkpoint_ts": {
  2299                      "type": "integer"
  2300                  },
  2301                  "config": {
  2302                      "$ref": "#/definitions/v2.ReplicaConfig"
  2303                  },
  2304                  "create_time": {
  2305                      "type": "string"
  2306                  },
  2307                  "creator_version": {
  2308                      "type": "string"
  2309                  },
  2310                  "error": {
  2311                      "$ref": "#/definitions/v2.RunningError"
  2312                  },
  2313                  "id": {
  2314                      "type": "string"
  2315                  },
  2316                  "namespace": {
  2317                      "type": "string"
  2318                  },
  2319                  "resolved_ts": {
  2320                      "type": "integer"
  2321                  },
  2322                  "sink_uri": {
  2323                      "type": "string"
  2324                  },
  2325                  "start_ts": {
  2326                      "description": "Start sync at this commit ts if ` + "`" + `StartTs` + "`" + ` is specify or using the CreateTime of changefeed.",
  2327                      "type": "integer"
  2328                  },
  2329                  "state": {
  2330                      "type": "string"
  2331                  },
  2332                  "target_ts": {
  2333                      "description": "The ChangeFeed will exits until sync to timestamp TargetTs",
  2334                      "type": "integer"
  2335                  },
  2336                  "task_status": {
  2337                      "type": "array",
  2338                      "items": {
  2339                          "$ref": "#/definitions/model.CaptureTaskStatus"
  2340                      }
  2341                  },
  2342                  "upstream_id": {
  2343                      "type": "integer"
  2344                  }
  2345              }
  2346          },
  2347          "v2.ChangefeedCommonInfo": {
  2348              "type": "object",
  2349              "properties": {
  2350                  "checkpoint_time": {
  2351                      "type": "string"
  2352                  },
  2353                  "checkpoint_tso": {
  2354                      "type": "integer"
  2355                  },
  2356                  "error": {
  2357                      "$ref": "#/definitions/model.RunningError"
  2358                  },
  2359                  "id": {
  2360                      "type": "string"
  2361                  },
  2362                  "namespace": {
  2363                      "type": "string"
  2364                  },
  2365                  "state": {
  2366                      "type": "string"
  2367                  },
  2368                  "upstream_id": {
  2369                      "type": "integer"
  2370                  }
  2371              }
  2372          },
  2373          "v2.ChangefeedConfig": {
  2374              "type": "object",
  2375              "properties": {
  2376                  "ca_path": {
  2377                      "type": "string"
  2378                  },
  2379                  "cert_allowed_cn": {
  2380                      "type": "array",
  2381                      "items": {
  2382                          "type": "string"
  2383                      }
  2384                  },
  2385                  "cert_path": {
  2386                      "type": "string"
  2387                  },
  2388                  "changefeed_id": {
  2389                      "type": "string"
  2390                  },
  2391                  "key_path": {
  2392                      "type": "string"
  2393                  },
  2394                  "namespace": {
  2395                      "type": "string"
  2396                  },
  2397                  "pd_addrs": {
  2398                      "type": "array",
  2399                      "items": {
  2400                          "type": "string"
  2401                      }
  2402                  },
  2403                  "replica_config": {
  2404                      "$ref": "#/definitions/v2.ReplicaConfig"
  2405                  },
  2406                  "sink_uri": {
  2407                      "type": "string"
  2408                  },
  2409                  "start_ts": {
  2410                      "type": "integer"
  2411                  },
  2412                  "target_ts": {
  2413                      "type": "integer"
  2414                  }
  2415              }
  2416          },
  2417          "v2.ChangefeedSchedulerConfig": {
  2418              "type": "object",
  2419              "properties": {
  2420                  "enable_table_across_nodes": {
  2421                      "description": "EnableTableAcrossNodes set true to split one table to multiple spans and\ndistribute to multiple TiCDC nodes.",
  2422                      "type": "boolean"
  2423                  },
  2424                  "region_threshold": {
  2425                      "description": "RegionThreshold is the region count threshold of splitting a table.",
  2426                      "type": "integer"
  2427                  },
  2428                  "write_key_threshold": {
  2429                      "description": "WriteKeyThreshold is the written keys threshold of splitting a table.",
  2430                      "type": "integer"
  2431                  }
  2432              }
  2433          },
  2434          "v2.CloudStorageConfig": {
  2435              "type": "object",
  2436              "properties": {
  2437                  "file_cleanup_cron_spec": {
  2438                      "type": "string"
  2439                  },
  2440                  "file_expiration_days": {
  2441                      "type": "integer"
  2442                  },
  2443                  "file_size": {
  2444                      "type": "integer"
  2445                  },
  2446                  "flush_concurrency": {
  2447                      "type": "integer"
  2448                  },
  2449                  "flush_interval": {
  2450                      "type": "string"
  2451                  },
  2452                  "output_column_id": {
  2453                      "type": "boolean"
  2454                  },
  2455                  "worker_count": {
  2456                      "type": "integer"
  2457                  }
  2458              }
  2459          },
  2460          "v2.CodecConfig": {
  2461              "type": "object",
  2462              "properties": {
  2463                  "avro_bigint_unsigned_handling_mode": {
  2464                      "type": "string"
  2465                  },
  2466                  "avro_decimal_handling_mode": {
  2467                      "type": "string"
  2468                  },
  2469                  "avro_enable_watermark": {
  2470                      "type": "boolean"
  2471                  },
  2472                  "enable_tidb_extension": {
  2473                      "type": "boolean"
  2474                  },
  2475                  "encoding_format": {
  2476                      "type": "string"
  2477                  },
  2478                  "max_batch_size": {
  2479                      "type": "integer"
  2480                  }
  2481              }
  2482          },
  2483          "v2.ColumnSelector": {
  2484              "type": "object",
  2485              "properties": {
  2486                  "columns": {
  2487                      "type": "array",
  2488                      "items": {
  2489                          "type": "string"
  2490                      }
  2491                  },
  2492                  "matcher": {
  2493                      "type": "array",
  2494                      "items": {
  2495                          "type": "string"
  2496                      }
  2497                  }
  2498              }
  2499          },
  2500          "v2.ConsistentConfig": {
  2501              "type": "object",
  2502              "properties": {
  2503                  "compression": {
  2504                      "type": "string"
  2505                  },
  2506                  "encoding_worker_num": {
  2507                      "type": "integer"
  2508                  },
  2509                  "flush_concurrency": {
  2510                      "type": "integer"
  2511                  },
  2512                  "flush_interval": {
  2513                      "type": "integer"
  2514                  },
  2515                  "flush_worker_num": {
  2516                      "type": "integer"
  2517                  },
  2518                  "level": {
  2519                      "type": "string"
  2520                  },
  2521                  "max_log_size": {
  2522                      "type": "integer"
  2523                  },
  2524                  "memory_usage": {
  2525                      "$ref": "#/definitions/v2.ConsistentMemoryUsage"
  2526                  },
  2527                  "meta_flush_interval": {
  2528                      "type": "integer"
  2529                  },
  2530                  "storage": {
  2531                      "type": "string"
  2532                  },
  2533                  "use_file_backend": {
  2534                      "type": "boolean"
  2535                  }
  2536              }
  2537          },
  2538          "v2.ConsistentMemoryUsage": {
  2539              "type": "object",
  2540              "properties": {
  2541                  "memory_quota_percentage": {
  2542                      "type": "integer"
  2543                  }
  2544              }
  2545          },
  2546          "v2.DebeziumConfig": {
  2547              "type": "object",
  2548              "properties": {
  2549                  "output_old_value": {
  2550                      "type": "boolean"
  2551                  }
  2552              }
  2553          },
  2554          "v2.DispatchRule": {
  2555              "type": "object",
  2556              "properties": {
  2557                  "columns": {
  2558                      "type": "array",
  2559                      "items": {
  2560                          "type": "string"
  2561                      }
  2562                  },
  2563                  "index": {
  2564                      "type": "string"
  2565                  },
  2566                  "matcher": {
  2567                      "type": "array",
  2568                      "items": {
  2569                          "type": "string"
  2570                      }
  2571                  },
  2572                  "partition": {
  2573                      "type": "string"
  2574                  },
  2575                  "topic": {
  2576                      "type": "string"
  2577                  }
  2578              }
  2579          },
  2580          "v2.EmptyResponse": {
  2581              "type": "object"
  2582          },
  2583          "v2.EventFilterRule": {
  2584              "type": "object",
  2585              "properties": {
  2586                  "ignore_delete_value_expr": {
  2587                      "type": "string"
  2588                  },
  2589                  "ignore_event": {
  2590                      "type": "array",
  2591                      "items": {
  2592                          "type": "string"
  2593                      }
  2594                  },
  2595                  "ignore_insert_value_expr": {
  2596                      "description": "sql expression",
  2597                      "type": "string"
  2598                  },
  2599                  "ignore_sql": {
  2600                      "description": "regular expression",
  2601                      "type": "array",
  2602                      "items": {
  2603                          "type": "string"
  2604                      }
  2605                  },
  2606                  "ignore_update_new_value_expr": {
  2607                      "type": "string"
  2608                  },
  2609                  "ignore_update_old_value_expr": {
  2610                      "type": "string"
  2611                  },
  2612                  "matcher": {
  2613                      "type": "array",
  2614                      "items": {
  2615                          "type": "string"
  2616                      }
  2617                  }
  2618              }
  2619          },
  2620          "v2.FilterConfig": {
  2621              "type": "object",
  2622              "properties": {
  2623                  "event_filters": {
  2624                      "type": "array",
  2625                      "items": {
  2626                          "$ref": "#/definitions/v2.EventFilterRule"
  2627                      }
  2628                  },
  2629                  "ignore_txn_start_ts": {
  2630                      "type": "array",
  2631                      "items": {
  2632                          "type": "integer"
  2633                      }
  2634                  },
  2635                  "rules": {
  2636                      "type": "array",
  2637                      "items": {
  2638                          "type": "string"
  2639                      }
  2640                  }
  2641              }
  2642          },
  2643          "v2.GlueSchemaRegistryConfig": {
  2644              "type": "object",
  2645              "properties": {
  2646                  "access_key": {
  2647                      "description": "AccessKey of the schema registry",
  2648                      "type": "string"
  2649                  },
  2650                  "region": {
  2651                      "description": "Region of the schema registry",
  2652                      "type": "string"
  2653                  },
  2654                  "registry_name": {
  2655                      "description": "Name of the schema registry",
  2656                      "type": "string"
  2657                  },
  2658                  "secret_access_key": {
  2659                      "description": "SecretAccessKey of the schema registry",
  2660                      "type": "string"
  2661                  },
  2662                  "token": {
  2663                      "type": "string"
  2664                  }
  2665              }
  2666          },
  2667          "v2.IntegrityConfig": {
  2668              "type": "object",
  2669              "properties": {
  2670                  "corruption_handle_level": {
  2671                      "type": "string"
  2672                  },
  2673                  "integrity_check_level": {
  2674                      "type": "string"
  2675                  }
  2676              }
  2677          },
  2678          "v2.JSONDuration": {
  2679              "type": "object"
  2680          },
  2681          "v2.KafkaConfig": {
  2682              "type": "object",
  2683              "properties": {
  2684                  "auto_create_topic": {
  2685                      "type": "boolean"
  2686                  },
  2687                  "ca": {
  2688                      "type": "string"
  2689                  },
  2690                  "cert": {
  2691                      "type": "string"
  2692                  },
  2693                  "codec_config": {
  2694                      "$ref": "#/definitions/v2.CodecConfig"
  2695                  },
  2696                  "compression": {
  2697                      "type": "string"
  2698                  },
  2699                  "dial_timeout": {
  2700                      "type": "string"
  2701                  },
  2702                  "enable_tls": {
  2703                      "type": "boolean"
  2704                  },
  2705                  "glue_schema_registry_config": {
  2706                      "$ref": "#/definitions/v2.GlueSchemaRegistryConfig"
  2707                  },
  2708                  "insecure_skip_verify": {
  2709                      "type": "boolean"
  2710                  },
  2711                  "kafka_client_id": {
  2712                      "type": "string"
  2713                  },
  2714                  "kafka_version": {
  2715                      "type": "string"
  2716                  },
  2717                  "key": {
  2718                      "type": "string"
  2719                  },
  2720                  "large_message_handle": {
  2721                      "$ref": "#/definitions/v2.LargeMessageHandleConfig"
  2722                  },
  2723                  "max_message_bytes": {
  2724                      "type": "integer"
  2725                  },
  2726                  "partition_num": {
  2727                      "type": "integer"
  2728                  },
  2729                  "read_timeout": {
  2730                      "type": "string"
  2731                  },
  2732                  "replication_factor": {
  2733                      "type": "integer"
  2734                  },
  2735                  "required_acks": {
  2736                      "type": "integer"
  2737                  },
  2738                  "sasl_gssapi_auth_type": {
  2739                      "type": "string"
  2740                  },
  2741                  "sasl_gssapi_disable_pafxfast": {
  2742                      "type": "boolean"
  2743                  },
  2744                  "sasl_gssapi_kerberos_config_path": {
  2745                      "type": "string"
  2746                  },
  2747                  "sasl_gssapi_keytab_path": {
  2748                      "type": "string"
  2749                  },
  2750                  "sasl_gssapi_password": {
  2751                      "type": "string"
  2752                  },
  2753                  "sasl_gssapi_realm": {
  2754                      "type": "string"
  2755                  },
  2756                  "sasl_gssapi_service_name": {
  2757                      "type": "string"
  2758                  },
  2759                  "sasl_gssapi_user": {
  2760                      "type": "string"
  2761                  },
  2762                  "sasl_mechanism": {
  2763                      "type": "string"
  2764                  },
  2765                  "sasl_oauth_audience": {
  2766                      "type": "string"
  2767                  },
  2768                  "sasl_oauth_client_id": {
  2769                      "type": "string"
  2770                  },
  2771                  "sasl_oauth_client_secret": {
  2772                      "type": "string"
  2773                  },
  2774                  "sasl_oauth_grant_type": {
  2775                      "type": "string"
  2776                  },
  2777                  "sasl_oauth_scopes": {
  2778                      "type": "array",
  2779                      "items": {
  2780                          "type": "string"
  2781                      }
  2782                  },
  2783                  "sasl_oauth_token_url": {
  2784                      "type": "string"
  2785                  },
  2786                  "sasl_password": {
  2787                      "type": "string"
  2788                  },
  2789                  "sasl_user": {
  2790                      "type": "string"
  2791                  },
  2792                  "write_timeout": {
  2793                      "type": "string"
  2794                  }
  2795              }
  2796          },
  2797          "v2.LargeMessageHandleConfig": {
  2798              "type": "object",
  2799              "properties": {
  2800                  "claim_check_storage_uri": {
  2801                      "type": "string"
  2802                  },
  2803                  "large_message_handle_compression": {
  2804                      "type": "string"
  2805                  },
  2806                  "large_message_handle_option": {
  2807                      "type": "string"
  2808                  }
  2809              }
  2810          },
  2811          "v2.LogLevelReq": {
  2812              "type": "object",
  2813              "properties": {
  2814                  "log_level": {
  2815                      "type": "string"
  2816                  }
  2817              }
  2818          },
  2819          "v2.MounterConfig": {
  2820              "type": "object",
  2821              "properties": {
  2822                  "worker_num": {
  2823                      "type": "integer"
  2824                  }
  2825              }
  2826          },
  2827          "v2.MySQLConfig": {
  2828              "type": "object",
  2829              "properties": {
  2830                  "enable_batch_dml": {
  2831                      "type": "boolean"
  2832                  },
  2833                  "enable_cache_prepared_statement": {
  2834                      "type": "boolean"
  2835                  },
  2836                  "enable_multi_statement": {
  2837                      "type": "boolean"
  2838                  },
  2839                  "max_multi_update_row_count": {
  2840                      "type": "integer"
  2841                  },
  2842                  "max_multi_update_row_size": {
  2843                      "type": "integer"
  2844                  },
  2845                  "max_txn_row": {
  2846                      "type": "integer"
  2847                  },
  2848                  "read_timeout": {
  2849                      "type": "string"
  2850                  },
  2851                  "ssl_ca": {
  2852                      "type": "string"
  2853                  },
  2854                  "ssl_cert": {
  2855                      "type": "string"
  2856                  },
  2857                  "ssl_key": {
  2858                      "type": "string"
  2859                  },
  2860                  "tidb_txn_mode": {
  2861                      "type": "string"
  2862                  },
  2863                  "time_zone": {
  2864                      "type": "string"
  2865                  },
  2866                  "timeout": {
  2867                      "type": "string"
  2868                  },
  2869                  "worker_count": {
  2870                      "type": "integer"
  2871                  },
  2872                  "write_timeout": {
  2873                      "type": "string"
  2874                  }
  2875              }
  2876          },
  2877          "v2.OpenProtocolConfig": {
  2878              "type": "object",
  2879              "properties": {
  2880                  "output_old_value": {
  2881                      "type": "boolean"
  2882                  }
  2883              }
  2884          },
  2885          "v2.ProcessorCommonInfo": {
  2886              "type": "object",
  2887              "properties": {
  2888                  "capture_id": {
  2889                      "type": "string"
  2890                  },
  2891                  "changefeed_id": {
  2892                      "type": "string"
  2893                  },
  2894                  "namespace": {
  2895                      "type": "string"
  2896                  }
  2897              }
  2898          },
  2899          "v2.ProcessorDetail": {
  2900              "type": "object",
  2901              "properties": {
  2902                  "table_ids": {
  2903                      "description": "All table ids that this processor are replicating.",
  2904                      "type": "array",
  2905                      "items": {
  2906                          "type": "integer"
  2907                      }
  2908                  }
  2909              }
  2910          },
  2911          "v2.PulsarConfig": {
  2912              "type": "object",
  2913              "properties": {
  2914                  "auth-tls-certificate-path": {
  2915                      "type": "string"
  2916                  },
  2917                  "auth-tls-private-key-path": {
  2918                      "type": "string"
  2919                  },
  2920                  "authentication-token": {
  2921                      "type": "string"
  2922                  },
  2923                  "basic-password": {
  2924                      "type": "string"
  2925                  },
  2926                  "basic-user-name": {
  2927                      "type": "string"
  2928                  },
  2929                  "batching-max-messages": {
  2930                      "type": "integer"
  2931                  },
  2932                  "batching-max-publish-delay": {
  2933                      "type": "integer"
  2934                  },
  2935                  "compression-type": {
  2936                      "type": "string"
  2937                  },
  2938                  "connection-timeout": {
  2939                      "type": "integer"
  2940                  },
  2941                  "oauth2": {
  2942                      "$ref": "#/definitions/v2.PulsarOAuth2"
  2943                  },
  2944                  "operation-timeout": {
  2945                      "type": "integer"
  2946                  },
  2947                  "pulsar-producer-cache-size": {
  2948                      "type": "integer"
  2949                  },
  2950                  "pulsar-version": {
  2951                      "type": "string"
  2952                  },
  2953                  "send-timeout": {
  2954                      "type": "integer"
  2955                  },
  2956                  "tls-certificate-path": {
  2957                      "type": "string"
  2958                  },
  2959                  "tls-private-key-path": {
  2960                      "type": "string"
  2961                  },
  2962                  "tls-trust-certs-file-path": {
  2963                      "type": "string"
  2964                  },
  2965                  "token-from-file": {
  2966                      "type": "string"
  2967                  }
  2968              }
  2969          },
  2970          "v2.PulsarOAuth2": {
  2971              "type": "object",
  2972              "properties": {
  2973                  "oauth2-audience": {
  2974                      "type": "string"
  2975                  },
  2976                  "oauth2-client-id": {
  2977                      "type": "string"
  2978                  },
  2979                  "oauth2-issuer-url": {
  2980                      "type": "string"
  2981                  },
  2982                  "oauth2-private-key": {
  2983                      "type": "string"
  2984                  },
  2985                  "oauth2-scope": {
  2986                      "type": "string"
  2987                  }
  2988              }
  2989          },
  2990          "v2.ReplicaConfig": {
  2991              "type": "object",
  2992              "properties": {
  2993                  "bdr_mode": {
  2994                      "type": "boolean"
  2995                  },
  2996                  "case_sensitive": {
  2997                      "type": "boolean"
  2998                  },
  2999                  "changefeed_error_stuck_duration": {
  3000                      "$ref": "#/definitions/v2.JSONDuration"
  3001                  },
  3002                  "check_gc_safe_point": {
  3003                      "type": "boolean"
  3004                  },
  3005                  "consistent": {
  3006                      "$ref": "#/definitions/v2.ConsistentConfig"
  3007                  },
  3008                  "enable_sync_point": {
  3009                      "type": "boolean"
  3010                  },
  3011                  "enable_table_monitor": {
  3012                      "type": "boolean"
  3013                  },
  3014                  "filter": {
  3015                      "$ref": "#/definitions/v2.FilterConfig"
  3016                  },
  3017                  "force_replicate": {
  3018                      "type": "boolean"
  3019                  },
  3020                  "ignore_ineligible_table": {
  3021                      "type": "boolean"
  3022                  },
  3023                  "integrity": {
  3024                      "$ref": "#/definitions/v2.IntegrityConfig"
  3025                  },
  3026                  "memory_quota": {
  3027                      "type": "integer"
  3028                  },
  3029                  "mounter": {
  3030                      "$ref": "#/definitions/v2.MounterConfig"
  3031                  },
  3032                  "scheduler": {
  3033                      "$ref": "#/definitions/v2.ChangefeedSchedulerConfig"
  3034                  },
  3035                  "sink": {
  3036                      "$ref": "#/definitions/v2.SinkConfig"
  3037                  },
  3038                  "sql_mode": {
  3039                      "description": "Deprecated: we don't use this field since v8.0.0.",
  3040                      "type": "string"
  3041                  },
  3042                  "sync_point_interval": {
  3043                      "type": "string"
  3044                  },
  3045                  "sync_point_retention": {
  3046                      "type": "string"
  3047                  },
  3048                  "synced_status": {
  3049                      "$ref": "#/definitions/v2.SyncedStatusConfig"
  3050                  }
  3051              }
  3052          },
  3053          "v2.ResumeChangefeedConfig": {
  3054              "type": "object",
  3055              "properties": {
  3056                  "ca_path": {
  3057                      "type": "string"
  3058                  },
  3059                  "cert_allowed_cn": {
  3060                      "type": "array",
  3061                      "items": {
  3062                          "type": "string"
  3063                      }
  3064                  },
  3065                  "cert_path": {
  3066                      "type": "string"
  3067                  },
  3068                  "key_path": {
  3069                      "type": "string"
  3070                  },
  3071                  "overwrite_checkpoint_ts": {
  3072                      "type": "integer"
  3073                  },
  3074                  "pd_addrs": {
  3075                      "type": "array",
  3076                      "items": {
  3077                          "type": "string"
  3078                      }
  3079                  }
  3080              }
  3081          },
  3082          "v2.RunningError": {
  3083              "type": "object",
  3084              "properties": {
  3085                  "addr": {
  3086                      "type": "string"
  3087                  },
  3088                  "code": {
  3089                      "type": "string"
  3090                  },
  3091                  "message": {
  3092                      "type": "string"
  3093                  },
  3094                  "time": {
  3095                      "type": "string"
  3096                  }
  3097              }
  3098          },
  3099          "v2.ServerStatus": {
  3100              "type": "object",
  3101              "properties": {
  3102                  "cluster_id": {
  3103                      "type": "string"
  3104                  },
  3105                  "git_hash": {
  3106                      "type": "string"
  3107                  },
  3108                  "id": {
  3109                      "type": "string"
  3110                  },
  3111                  "is_owner": {
  3112                      "type": "boolean"
  3113                  },
  3114                  "liveness": {
  3115                      "type": "integer"
  3116                  },
  3117                  "pid": {
  3118                      "type": "integer"
  3119                  },
  3120                  "version": {
  3121                      "type": "string"
  3122                  }
  3123              }
  3124          },
  3125          "v2.SinkConfig": {
  3126              "type": "object",
  3127              "properties": {
  3128                  "advance_timeout": {
  3129                      "type": "integer"
  3130                  },
  3131                  "cloud_storage_config": {
  3132                      "$ref": "#/definitions/v2.CloudStorageConfig"
  3133                  },
  3134                  "column_selectors": {
  3135                      "type": "array",
  3136                      "items": {
  3137                          "$ref": "#/definitions/v2.ColumnSelector"
  3138                      }
  3139                  },
  3140                  "content_compatible": {
  3141                      "type": "boolean"
  3142                  },
  3143                  "csv": {
  3144                      "$ref": "#/definitions/v2.CSVConfig"
  3145                  },
  3146                  "date_separator": {
  3147                      "type": "string"
  3148                  },
  3149                  "debezium": {
  3150                      "$ref": "#/definitions/v2.DebeziumConfig"
  3151                  },
  3152                  "debezium_disable_schema": {
  3153                      "type": "boolean"
  3154                  },
  3155                  "delete_only_output_handle_key_columns": {
  3156                      "type": "boolean"
  3157                  },
  3158                  "dispatchers": {
  3159                      "type": "array",
  3160                      "items": {
  3161                          "$ref": "#/definitions/v2.DispatchRule"
  3162                      }
  3163                  },
  3164                  "enable_kafka_sink_v2": {
  3165                      "type": "boolean"
  3166                  },
  3167                  "enable_partition_separator": {
  3168                      "type": "boolean"
  3169                  },
  3170                  "encoder_concurrency": {
  3171                      "type": "integer"
  3172                  },
  3173                  "file_index_width": {
  3174                      "type": "integer"
  3175                  },
  3176                  "kafka_config": {
  3177                      "$ref": "#/definitions/v2.KafkaConfig"
  3178                  },
  3179                  "mysql_config": {
  3180                      "$ref": "#/definitions/v2.MySQLConfig"
  3181                  },
  3182                  "only_output_updated_columns": {
  3183                      "type": "boolean"
  3184                  },
  3185                  "open": {
  3186                      "$ref": "#/definitions/v2.OpenProtocolConfig"
  3187                  },
  3188                  "protocol": {
  3189                      "type": "string"
  3190                  },
  3191                  "pulsar_config": {
  3192                      "$ref": "#/definitions/v2.PulsarConfig"
  3193                  },
  3194                  "safe_mode": {
  3195                      "type": "boolean"
  3196                  },
  3197                  "schema_registry": {
  3198                      "type": "string"
  3199                  },
  3200                  "send_bootstrap_in_msg_count": {
  3201                      "type": "integer"
  3202                  },
  3203                  "send_bootstrap_interval_in_sec": {
  3204                      "type": "integer"
  3205                  },
  3206                  "send_bootstrap_to_all_partition": {
  3207                      "type": "boolean"
  3208                  },
  3209                  "terminator": {
  3210                      "type": "string"
  3211                  },
  3212                  "transaction_atomicity": {
  3213                      "type": "string"
  3214                  }
  3215              }
  3216          },
  3217          "v2.SyncedStatus": {
  3218              "type": "object",
  3219              "properties": {
  3220                  "info": {
  3221                      "type": "string"
  3222                  },
  3223                  "last_synced_ts": {
  3224                      "type": "string"
  3225                  },
  3226                  "now_ts": {
  3227                      "type": "string"
  3228                  },
  3229                  "puller_resolved_ts": {
  3230                      "type": "string"
  3231                  },
  3232                  "sink_checkpoint_ts": {
  3233                      "type": "string"
  3234                  },
  3235                  "synced": {
  3236                      "type": "boolean"
  3237                  }
  3238              }
  3239          },
  3240          "v2.SyncedStatusConfig": {
  3241              "type": "object",
  3242              "properties": {
  3243                  "checkpoint_interval": {
  3244                      "description": "The maximum interval between latest checkpoint ts and now or\nbetween latest sink's checkpoint ts and puller's checkpoint ts required to reach synced state",
  3245                      "type": "integer"
  3246                  },
  3247                  "synced_check_interval": {
  3248                      "description": "The minimum interval between the latest synced ts and now required to reach synced state",
  3249                      "type": "integer"
  3250                  }
  3251              }
  3252          }
  3253      }
  3254  }`
  3255  
  3256  type swaggerInfo struct {
  3257  	Version     string
  3258  	Host        string
  3259  	BasePath    string
  3260  	Schemes     []string
  3261  	Title       string
  3262  	Description string
  3263  }
  3264  
  3265  // SwaggerInfo holds exported Swagger Info so clients can modify it
  3266  var SwaggerInfo = swaggerInfo{
  3267  	Version:     "",
  3268  	Host:        "",
  3269  	BasePath:    "",
  3270  	Schemes:     []string{},
  3271  	Title:       "",
  3272  	Description: "",
  3273  }
  3274  
  3275  type s struct{}
  3276  
  3277  func (s *s) ReadDoc() string {
  3278  	sInfo := SwaggerInfo
  3279  	sInfo.Description = strings.Replace(sInfo.Description, "\n", "\\n", -1)
  3280  
  3281  	t, err := template.New("swagger_info").Funcs(template.FuncMap{
  3282  		"marshal": func(v interface{}) string {
  3283  			a, _ := json.Marshal(v)
  3284  			return string(a)
  3285  		},
  3286  		"escape": func(v interface{}) string {
  3287  			// escape tabs
  3288  			str := strings.Replace(v.(string), "\t", "\\t", -1)
  3289  			// replace " with \", and if that results in \\", replace that with \\\"
  3290  			str = strings.Replace(str, "\"", "\\\"", -1)
  3291  			return strings.Replace(str, "\\\\\"", "\\\\\\\"", -1)
  3292  		},
  3293  	}).Parse(doc)
  3294  	if err != nil {
  3295  		return doc
  3296  	}
  3297  
  3298  	var tpl bytes.Buffer
  3299  	if err := t.Execute(&tpl, sInfo); err != nil {
  3300  		return doc
  3301  	}
  3302  
  3303  	return tpl.String()
  3304  }
  3305  
  3306  func init() {
  3307  	swag.Register("swagger", &s{})
  3308  }